|
VRPH
1.0
|
#include <TwoOpt.h>
Public Member Functions | |
| bool | search (class VRP *V, int i, int criteria) |
| bool | route_search (class VRP *V, int r1, int r2, int criteria) |
Private Member Functions | |
| bool | evaluate (class VRP *V, int a, int b, int c, int d, int criteria, VRPMove *M) |
| bool | move (class VRP *V, VRPMove *M) |
| bool TwoOpt::evaluate | ( | class VRP * | V, |
| int | a, | ||
| int | b, | ||
| int | c, | ||
| int | d, | ||
| int | criteria, | ||
| VRPMove * | M | ||
| ) | [private] |
Considers the Two-Opt move involving the edges a-b and c-d and the provided rules. If the move meets the rules, then the relevant changes to the solution are stored in the VRPMove M and the function returns true. Returns false otherwise.
Definition at line 580 of file TwoOpt.cpp.
| bool TwoOpt::move | ( | class VRP * | V, |
| VRPMove * | M | ||
| ) | [private] |
Makes the actual solution modification implied by the Two-Opt move involving edges a-b and c-d. Handles both intraroute and interroute moves
Definition at line 890 of file TwoOpt.cpp.
| bool TwoOpt::route_search | ( | class VRP * | V, |
| int | r1, | ||
| int | r2, | ||
| int | criteria | ||
| ) |
Searches for all two opt moves involving an edge from r1 and an edge from r2.
Definition at line 478 of file TwoOpt.cpp.
| bool TwoOpt::search | ( | class VRP * | V, |
| int | i, | ||
| int | criteria | ||
| ) |
Attempts to find the best Two-Opt move involving node b using the specified rules. If acceptable move is found, the move is made and all relevant solution modifications are made.
Definition at line 16 of file TwoOpt.cpp.
1.7.6.1