├── README.md ├── assets └── img │ ├── matconst.png │ ├── matobj.png │ ├── matprob.png │ ├── matres.png │ ├── population.gif │ ├── prob8.png │ ├── problem8.gif │ ├── pythonres.png │ ├── step1.png │ ├── step2.png │ ├── step3.png │ └── surface.png ├── benchmark ├── __init__.py ├── numba_fortran │ ├── abc.f90 │ ├── abc.py │ └── abc_py.pyx ├── numbaf.py └── prob5.py ├── demo.py ├── main.py ├── param.py ├── requirements.txt ├── test ├── __init__.py ├── operator_test.py └── simd.py ├── tst.py ├── usecase ├── __init__.py ├── dvrp │ ├── README.md │ ├── __init__.py │ ├── data │ │ └── __init__.py │ ├── main.py │ ├── test.py │ └── utils │ │ ├── __init__.py │ │ ├── core.py │ │ ├── heuristics │ │ ├── __init__.py │ │ ├── local_search │ │ │ ├── __init__.py │ │ │ ├── asm_inter_swap.py │ │ │ ├── cross_swap.py │ │ │ ├── double_inter_swap.py │ │ │ ├── double_intra_swap.py │ │ │ ├── double_relocate.py │ │ │ ├── double_reverse_relocate.py │ │ │ ├── first_descend.py │ │ │ ├── reverse_cross_swap.py │ │ │ ├── route_update.py │ │ │ ├── single_inter_swap.py │ │ │ └── single_relocate.py │ │ └── route_construction │ │ │ ├── __init__.py │ │ │ └── sweep.py │ │ ├── io │ │ ├── __init__.py │ │ ├── manipulate.py │ │ └── read.py │ │ ├── route │ │ ├── __init__.py │ │ ├── angle.py │ │ └── repr.py │ │ ├── split.py │ │ ├── test.py │ │ └── visualize │ │ ├── __init__.py │ │ └── route.py ├── tsp │ └── __init__.py └── utils │ ├── __init__.py │ └── tsp.py └── utils ├── __init__.py ├── ampl ├── __init__.py └── model.py ├── model ├── __init__.py ├── constraint_handle.py ├── core.py ├── operator.py └── optimize.py ├── numba ├── __init__.py ├── bisect.py └── random.py └── visualize ├── __init__.py ├── core.py ├── dynamic.py └── static.py /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/README.md -------------------------------------------------------------------------------- /assets/img/matconst.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/assets/img/matconst.png -------------------------------------------------------------------------------- /assets/img/matobj.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/assets/img/matobj.png -------------------------------------------------------------------------------- /assets/img/matprob.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/assets/img/matprob.png -------------------------------------------------------------------------------- /assets/img/matres.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/assets/img/matres.png -------------------------------------------------------------------------------- /assets/img/population.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/assets/img/population.gif -------------------------------------------------------------------------------- /assets/img/prob8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/assets/img/prob8.png -------------------------------------------------------------------------------- /assets/img/problem8.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/assets/img/problem8.gif -------------------------------------------------------------------------------- /assets/img/pythonres.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/assets/img/pythonres.png -------------------------------------------------------------------------------- /assets/img/step1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/assets/img/step1.png -------------------------------------------------------------------------------- /assets/img/step2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/assets/img/step2.png -------------------------------------------------------------------------------- /assets/img/step3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/assets/img/step3.png -------------------------------------------------------------------------------- /assets/img/surface.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/assets/img/surface.png -------------------------------------------------------------------------------- /benchmark/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /benchmark/numba_fortran/abc.f90: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/benchmark/numba_fortran/abc.f90 -------------------------------------------------------------------------------- /benchmark/numba_fortran/abc.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/benchmark/numba_fortran/abc.py -------------------------------------------------------------------------------- /benchmark/numba_fortran/abc_py.pyx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/benchmark/numba_fortran/abc_py.pyx -------------------------------------------------------------------------------- /benchmark/numbaf.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /benchmark/prob5.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/benchmark/prob5.py -------------------------------------------------------------------------------- /demo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/demo.py -------------------------------------------------------------------------------- /main.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/main.py -------------------------------------------------------------------------------- /param.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/param.py -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | numpy==1.25.2 2 | numba 3 | matplotlib 4 | pyconcorde -------------------------------------------------------------------------------- /test/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /test/operator_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/test/operator_test.py -------------------------------------------------------------------------------- /test/simd.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/test/simd.py -------------------------------------------------------------------------------- /tst.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/tst.py -------------------------------------------------------------------------------- /usecase/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /usecase/dvrp/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/usecase/dvrp/README.md -------------------------------------------------------------------------------- /usecase/dvrp/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /usecase/dvrp/data/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /usecase/dvrp/main.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/usecase/dvrp/main.py -------------------------------------------------------------------------------- /usecase/dvrp/test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/usecase/dvrp/test.py -------------------------------------------------------------------------------- /usecase/dvrp/utils/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /usecase/dvrp/utils/core.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/usecase/dvrp/utils/core.py -------------------------------------------------------------------------------- /usecase/dvrp/utils/heuristics/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /usecase/dvrp/utils/heuristics/local_search/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/usecase/dvrp/utils/heuristics/local_search/__init__.py -------------------------------------------------------------------------------- /usecase/dvrp/utils/heuristics/local_search/asm_inter_swap.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/usecase/dvrp/utils/heuristics/local_search/asm_inter_swap.py -------------------------------------------------------------------------------- /usecase/dvrp/utils/heuristics/local_search/cross_swap.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /usecase/dvrp/utils/heuristics/local_search/double_inter_swap.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /usecase/dvrp/utils/heuristics/local_search/double_intra_swap.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /usecase/dvrp/utils/heuristics/local_search/double_relocate.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/usecase/dvrp/utils/heuristics/local_search/double_relocate.py -------------------------------------------------------------------------------- /usecase/dvrp/utils/heuristics/local_search/double_reverse_relocate.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/usecase/dvrp/utils/heuristics/local_search/double_reverse_relocate.py -------------------------------------------------------------------------------- /usecase/dvrp/utils/heuristics/local_search/first_descend.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/usecase/dvrp/utils/heuristics/local_search/first_descend.py -------------------------------------------------------------------------------- /usecase/dvrp/utils/heuristics/local_search/reverse_cross_swap.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /usecase/dvrp/utils/heuristics/local_search/route_update.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/usecase/dvrp/utils/heuristics/local_search/route_update.py -------------------------------------------------------------------------------- /usecase/dvrp/utils/heuristics/local_search/single_inter_swap.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/usecase/dvrp/utils/heuristics/local_search/single_inter_swap.py -------------------------------------------------------------------------------- /usecase/dvrp/utils/heuristics/local_search/single_relocate.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/usecase/dvrp/utils/heuristics/local_search/single_relocate.py -------------------------------------------------------------------------------- /usecase/dvrp/utils/heuristics/route_construction/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /usecase/dvrp/utils/heuristics/route_construction/sweep.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/usecase/dvrp/utils/heuristics/route_construction/sweep.py -------------------------------------------------------------------------------- /usecase/dvrp/utils/io/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /usecase/dvrp/utils/io/manipulate.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/usecase/dvrp/utils/io/manipulate.py -------------------------------------------------------------------------------- /usecase/dvrp/utils/io/read.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/usecase/dvrp/utils/io/read.py -------------------------------------------------------------------------------- /usecase/dvrp/utils/route/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /usecase/dvrp/utils/route/angle.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/usecase/dvrp/utils/route/angle.py -------------------------------------------------------------------------------- /usecase/dvrp/utils/route/repr.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/usecase/dvrp/utils/route/repr.py -------------------------------------------------------------------------------- /usecase/dvrp/utils/split.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/usecase/dvrp/utils/split.py -------------------------------------------------------------------------------- /usecase/dvrp/utils/test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/usecase/dvrp/utils/test.py -------------------------------------------------------------------------------- /usecase/dvrp/utils/visualize/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /usecase/dvrp/utils/visualize/route.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/usecase/dvrp/utils/visualize/route.py -------------------------------------------------------------------------------- /usecase/tsp/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /usecase/utils/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /usecase/utils/tsp.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/usecase/utils/tsp.py -------------------------------------------------------------------------------- /utils/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /utils/ampl/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /utils/ampl/model.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/utils/ampl/model.py -------------------------------------------------------------------------------- /utils/model/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /utils/model/constraint_handle.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/utils/model/constraint_handle.py -------------------------------------------------------------------------------- /utils/model/core.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/utils/model/core.py -------------------------------------------------------------------------------- /utils/model/operator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/utils/model/operator.py -------------------------------------------------------------------------------- /utils/model/optimize.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/utils/model/optimize.py -------------------------------------------------------------------------------- /utils/numba/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /utils/numba/bisect.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/utils/numba/bisect.py -------------------------------------------------------------------------------- /utils/numba/random.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/utils/numba/random.py -------------------------------------------------------------------------------- /utils/visualize/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /utils/visualize/core.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/utils/visualize/core.py -------------------------------------------------------------------------------- /utils/visualize/dynamic.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/utils/visualize/dynamic.py -------------------------------------------------------------------------------- /utils/visualize/static.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SummersJoy/rcgapy/HEAD/utils/visualize/static.py --------------------------------------------------------------------------------