Select Git revision
block_example.html.erb
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
cli.py 1.48 KiB
from argparse import ArgumentParser
from k_hop_dominating_set_gurobi import __version__
from k_hop_dominating_set_gurobi import k_hop_dom_set
from k_hop_dominating_set_gurobi import lp_to_nx_graph
def cli(args=None):
p = ArgumentParser(
description="A set of python scripts to solve k hop dominating set variants using ILP and gurobi as MIP solver ",
conflict_handler='resolve'
)
p.add_argument(
'-V', '--version',
action='version',
help='Show the conda-prefix-replacement version number and exit.',
version="k_hop_dominating_set_gurobi %s" % __version__,
)
p.add_argument(
'-k', '--k',
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")
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)
# ds.solve_and_draw(iterations = args.iterations)
ds.solve_and_draw()
# No return value means no error.
# Return a value of 1 or higher to signify an error.
# See https://docs.python.org/3/library/sys.html#sys.exit
if __name__ == '__main__':
import sys
cli(sys.argv[1:])