vrph-master

所属分类:数值算法/人工智能
开发工具:Visual C++
文件大小:180KB
下载次数:63
上传日期:2014-07-10 16:13:31
上 传 者peterpc0701
说明:  解决车辆路径问题,提供了很多有用的算法实现,比如3-opt,2-opt和or-opt等算法,以静态库的形式提供给别人调用。
(Solving vehicle routing problem, provide a lot of useful algorithms, such as 3-opt ,2-opt and or-opt algorithm, in the form of a static library available to others call.)

文件列表:
AUTHORS (32, 2013-03-16)
Doxyfile (10440, 2013-03-16)
INSTALL (1334, 2013-03-16)
LICENSE (11979, 2013-03-16)
MSVC_2008 (0, 2013-03-16)
MSVC_2008\VRPH (0, 2013-03-16)
MSVC_2008\VRPH\VRPH.sln (3343, 2013-03-16)
MSVC_2008\VRPH\VRPH.vcproj (5661, 2013-03-16)
MSVC_2008\vrp_ej (0, 2013-03-16)
MSVC_2008\vrp_ej\vrp_ej.vcproj (4264, 2013-03-16)
MSVC_2008\vrp_init (0, 2013-03-16)
MSVC_2008\vrp_init\vrp_init.vcproj (4273, 2013-03-16)
MSVC_2008\vrp_plot (0, 2013-03-16)
MSVC_2008\vrp_plot\vrp_plot.vcproj (4639, 2013-03-16)
MSVC_2008\vrp_rtr (0, 2013-03-16)
MSVC_2008\vrp_rtr\vrp_rtr.vcproj (4268, 2013-03-16)
MSVC_2008\vrp_sa (0, 2013-03-16)
MSVC_2008\vrp_sa\vrp_sa.vcproj (4266, 2013-03-16)
inc (0, 2013-03-16)
inc\ClarkeWright.h (1183, 2013-03-16)
inc\Concatenate.h (860, 2013-03-16)
inc\CrossExchange.h (1007, 2013-03-16)
inc\Flip.h (835, 2013-03-16)
inc\MoveString.h (883, 2013-03-16)
inc\OnePointMove.h (979, 2013-03-16)
inc\OrOpt.h (1005, 2013-03-16)
inc\Osman.h (631, 2013-03-16)
inc\Postsert.h (848, 2013-03-16)
inc\Presert.h (847, 2013-03-16)
inc\RNG.h (810, 2013-03-16)
inc\Swap.h (835, 2013-03-16)
inc\SwapEnds.h (849, 2013-03-16)
inc\Sweep.h (991, 2013-03-16)
inc\ThreeOpt.h (955, 2013-03-16)
inc\ThreePointMove.h (1011, 2013-03-16)
inc\TwoOpt.h (1002, 2013-03-16)
... ...

VRPH is a library of heuristics for quickly generating solutions to Vehicle Routing Problems. VRPH was developed by Chris Groer as part of his dissertation at the University of Maryland, College Park. This code is provided in hopes that it will be useful to others researching computational methods for the VRP. To compile VRPH, read the INSTALL file. There are no external dependencies and it should be straightforward to build the code. Building the code produces at least 4 binaries, all located in the VRPH-1.0/bin directory: 1) vrp_rtr - implementation of a metaheuristic for quickly generating good solutions to the VRP 2) vrp_sa - implementation of a simulated annealing algorithm for the VRP. In general, solutions are not as good as those produced by vrp_rtr. 3) vrp_ej - implementation of a neighborhood ejection- injection algorithm for the VRP. This can produce solutions that are better than vrp_rtr and can be used to further refine these solutions 4) vrp_init - implementation of two classical heuristics for generating initial feasible solutions There are several additional binaries that require you to link with external software: 1) vrp_sp - implementation of a set partitioning-based algorithm for the VRP. Many feasible routes are generated using the metaheuristic in vrp_rtr. These are added as columns/variables to the set partitioning problem. This requires you to link with COIN-OSI and GLPK. It should not be hard to use a different MIP solver as there is very little solver-specific code 2) vrp_plotter - a utility to write graphical illustrations of solutions to a .ps file. This requires one to link to the open source PLPlot library. The VRPH-1.0/doc directory is a placeholder for Doxygen-generated documentation. See the INSTALL file for details on creating this documentation via the makefile. Right now, the code is able to generate solutions to classical capacitated VRPs. Adding support for time windows, multiple depots, etc. should not be too difficult and the code was designed to make it somewhat easy to add new constraints. The various subdirectories contain README's that describe the data sets, etc. See the LICENSE file in this directory for details on the licensing of this code. The run_all_tests.sh script runs the vrp_rtr binary on all of the data files. The compare_apps.sh script allow one to compare the performance of the different applications by running them with a fixed set of parameters on different sets of benchmark problems. If you find the code useful, I'd like to know, so send me an email. If you encounter bugs or problems, I'd like to know that too. Chris Groer cgroer@gmail.com

近期下载者

相关文件


收藏者