def main(): logger.info('Starting...') file_path = DATASETS_PATH / 'cordeau-laporte' / 'a2-16.txt' solver = jit.Solver( loader_kwargs={ 'file_path': file_path, }, algorithm=jit.GraspAlgorithm, algorithm_kwargs={ 'first_solution_kwargs': { 'episodes': 1, 'strategy_cls': jit.IntensiveInsertionStrategy, }, 'local_search_kwargs': { 'strategy_cls': jit.TwoOPTLocalSearchStrategy, } }, storer=jit.StorerSet, storer_kwargs={ 'storer_cls_set': { jit.PromptStorer, jit.GraphPlotStorer, }, } ) result = solver.solve() # noqa logger.info('Finished...')
def main(): logger.info("Starting...") file_path = Path(sys.argv[1]) solver = jit.Solver( loader_kwargs={"file_path": file_path}, algorithm=jit.GraspAlgorithm, algorithm_kwargs={ "first_solution_kwargs": { "episodes": 1, "randomized_size": 2, }, "episodes": 5, }, storer=jit.StorerSet, storer_kwargs={ "storer_cls_set": { jit.PromptStorer, partial(jit.GraphPlotStorer, file_path=file_path.parent / f"{file_path.name}.png"), partial(jit.FileStorer, file_path=file_path.parent / f"{file_path.name}.output"), } }, ) result = solver.solve() # noqa logger.info("Finished...")
def main(): logger.info('Starting...') file_path = DATASETS_PATH / 'cordeau-laporte' / 'a2-16.txt' solver = jit.Solver( loader_kwargs={ 'file_path': file_path, }, algorithm=jit.MilpAlgorithm, algorithm_kwargs={ # 'solver': lp.XPRESS(msg=1, path=str(BASE_PATH / 'tmp' / 'xpressmp' / 'bin' / 'optimizer')), # 'solver': lp.GUROBI_CMD(msg=1), # 'solver': lp.CPLEX_CMD(msg=1, path=str(BASE_PATH / 'tmp' / 'cplex' / 'bin' / 'x86-64_osx' / 'cplex')), 'solver': lp.SCIP(msg=1), # 'solver' :lp.PULP_CBC_CMD(msg=1, threads=4), }, storer=jit.StorerSet, storer_kwargs={ 'storer_cls_set': { jit.PromptStorer, jit.GraphPlotStorer, }, }) result = solver.solve() # noqa logger.info('Finished...')
def main(): logger.info('Starting...') FILES = { 'a': 'a_example.in', 'b': 'b_should_be_easy.in', 'c': 'c_no_hurry.in', 'd': 'd_metropolis.in', 'e': 'e_high_bonus.in', } file_path = DATASETS_PATH / 'hashcode' / FILES['b'] solver = jit.Solver( loader_kwargs={ 'file_path': file_path, 'formatter_cls': jit.HashCodeLoaderFormatter, }, algorithm=jit.InsertionAlgorithm, algorithm_kwargs={ 'criterion': jit.HashCodeRouteCriterion, 'neighborhood_max_size': None, }, ) result = solver.solve() # noqa logger.info('Finished...')
def main(): logger.info("Starting...") FILES = { "a": "a_example.in", "b": "b_should_be_easy.in", "c": "c_no_hurry.in", "d": "d_metropolis.in", "e": "e_high_bonus.in", } file_path = DATASETS_PATH / "hashcode" / FILES["b"] solver = jit.Solver( loader_kwargs={ "file_path": file_path, "formatter_cls": jit.HashCodeLoaderFormatter }, algorithm=jit.InsertionAlgorithm, algorithm_kwargs={ "criterion": jit.HashCodeRouteCriterion, "neighborhood_max_size": None }, ) result = solver.solve() # noqa logger.info("Finished...")
def test_loader(self): solver = jit.Solver(loader=jit.FileLoader, loader_kwargs={ 'file_path': self.file_path, }) loader_cls = solver._loader_cls self.assertTrue(issubclass(loader_cls, jit.FileLoader))
def main(): logger.info("Starting...") file_path = DATASETS_PATH / "cordeau-laporte" / "a2-16.txt" solver = jit.Solver( loader_kwargs={"file_path": file_path}, algorithm=jit.GraspAlgorithm, algorithm_kwargs={ "first_solution_kwargs": { "episodes": 1, "strategy_cls": jit.IntensiveInsertionStrategy }, "local_search_kwargs": { "strategy_cls": jit.TwoOPTLocalSearchStrategy }, }, storer=jit.StorerSet, storer_kwargs={ "storer_cls_set": {jit.PromptStorer, jit.GraphPlotStorer} }, ) result = solver.solve() # noqa logger.info("Finished...")
def test_storer(self): solver = jit.Solver( loader_kwargs={ 'file_path': self.file_path, }, storer=jit.PromptStorer, ) self.assertTrue(issubclass(solver._storer_cls, jit.PromptStorer))
def test_algorithm(self): solver = jit.Solver( loader_kwargs={ 'file_path': self.file_path, }, algorithm=jit.InsertionAlgorithm, ) self.assertTrue( issubclass(solver._algorithm_cls, jit.InsertionAlgorithm))
def test_dispatcher(self): solver = jit.Solver( loader_kwargs={ 'file_path': self.file_path, }, dispatcher=jit.StaticDispatcher, ) self.assertTrue( issubclass(solver._dispatcher_cls, jit.StaticDispatcher)) self.assertIsInstance(solver._dispatcher, jit.StaticDispatcher)
def main(): logger.info("Starting...") file_path = DATASETS_PATH / "cordeau-laporte" / "a2-16.txt" solver = jit.Solver( loader_kwargs={"file_path": file_path}, algorithm=jit.GraspAlgorithm, algorithm_kwargs={ "first_solution_kwargs": { "episodes": 1, "randomized_size": 2 }, "episodes": 5 }, storer=jit.StorerSet, storer_kwargs={ "storer_cls_set": {jit.PromptStorer, jit.GraphPlotStorer} }, ) result = solver.solve() # noqa logger.info("Finished...")
import jinete as jit solver = jit.Solver( loader_kwargs={"file_path": file_path}, algorithm=jit.GraspAlgorithm, algorithm_kwargs={ "first_solution_kwargs": { "episodes": 1, "randomized_size": 2, }, "episodes": 5, }, storer=jit.StorerSet, storer_kwargs={ "storer_cls_set": { jit.PromptStorer, partialjit.GraphPlotStorer, file_path=file_path.parent / f"{file_path.name}.png"), partial(jit.FileStorer, file_path=file_path.parent / f"{file_path.name}.output"), } }, ) result = solver.solve()
def test_solve(self): solver = jit.Solver(loader_kwargs={"file_path": self.file_path,},) self.assertIsInstance(solver.solve(), jit.Result)