コード例 #1
0
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...')
コード例 #2
0
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...")
コード例 #3
0
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...')
コード例 #4
0
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...')
コード例 #5
0
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...")
コード例 #6
0
ファイル: test_solvers.py プロジェクト: PhilippeGalvan/jinete
 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))
コード例 #7
0
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...")
コード例 #8
0
ファイル: test_solvers.py プロジェクト: PhilippeGalvan/jinete
 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))
コード例 #9
0
ファイル: test_solvers.py プロジェクト: PhilippeGalvan/jinete
 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))
コード例 #10
0
ファイル: test_solvers.py プロジェクト: PhilippeGalvan/jinete
 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)
コード例 #11
0
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...")
コード例 #12
0
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()
コード例 #13
0
ファイル: test_solvers.py プロジェクト: garciparedes/jinete
    def test_solve(self):
        solver = jit.Solver(loader_kwargs={"file_path": self.file_path,},)

        self.assertIsInstance(solver.solve(), jit.Result)