diff --git a/python/conda package/k_hop_dominating_set_gurobi/k_hop_dominating_set_gurobi/cli.py b/python/conda package/k_hop_dominating_set_gurobi/k_hop_dominating_set_gurobi/cli.py index cf7f62f0177d338cbc8604e86bcfa726fadc041a..c18d842562d3bd2d38fdd042989838b1b7d12526 100644 --- a/python/conda package/k_hop_dominating_set_gurobi/k_hop_dominating_set_gurobi/cli.py +++ b/python/conda package/k_hop_dominating_set_gurobi/k_hop_dominating_set_gurobi/cli.py @@ -19,24 +19,22 @@ def cli(args=None): help='parameter k of the k hop dominating set', type=int ) -# p.add_argument( -# '-i', '--iterations', -# help='maximum number of iterations', -# const = float("inf"), -# type = float -# ) p.add_argument( '-g', '--graph', help="input graph as .lp file") + p.add_argument( + '-mtz', + action='store_true', + help='use Miller-Tucker-Zemlin constraints to ensure connectivity (default is a lazy approach using vertex separators)') args = p.parse_args(args) - # do something with the args - # print("CLI template - fix me up!") G = lp_to_nx_graph.read(args.graph) - ds = k_hop_dom_set.RootedConnectecKHopDominatingSet(G, args.k) + if args.mtz: + ds = k_hop_dom_set.RootedConnectecKHopDominatingSet(G, args.k, constraints = k_hop_dom_set.ConnectivityConstraint.MILLER_TUCKER_ZEMLIN) + else: + ds = k_hop_dom_set.RootedConnectecKHopDominatingSet(G, args.k) - # ds.solve_and_draw(iterations = args.iterations) ds.solve_and_draw() # No return value means no error.