У меня есть программа, которая генерирует графики с использованием различных многоуровневых моделей. Каждая многоуровневая модель состоит из генерации начального графа меньшего размера (скажем, 50 узлов), который можно создать из нескольких моделей (например, для каждого возможного ребра, включите его с вероятностью p).
После генерации начального графа граф расширяется до более крупного (скажем, 1000 узлов) с использованием одной из других моделей.
На каждом из двух этапов каждая модель требует различного количества параметров.
Я бы хотел, чтобы program_options анализировали различные возможные параметры в соответствии с названиями моделей.
Например, скажем, у меня есть две модели начальных графиков: SA, которая имеет 1 параметр, и SB, которая имеет два. Также для части расширения у меня есть две модели: A и B, опять же с 1 и 2 параметрами, соответственно. Я хотел бы иметь возможность сделать что-то вроде:
./graph_generator --seed=SA 0.1 --expansion=A 0.2
./graph_generator --seed=SB 0.1 3 --expansion=A 0.2
./graph_generator --seed=SA 0.1 --expansion=B 10 20
./graph_generator --seed=SB 0.1 3 --expansion=B 10 20
и правильно проанализировать параметры. Это вообще возможно?