Skip to content

Route generation context model ​

1. Overview ​

Route generation searches elementary routes satisfying resource and branch rules, then returns improving columns to route compilation. Pricing is an elementary shortest-path problem with resource constraints (ESPPRC).

1. Dependent Contexts ​

The VRP context supplies customers, vehicle types, resources, and calculation policies. Compilation supplies the phase and customer/fleet duals. The application supplies branch rules.

2. Concepts / Entities ​

1. Labels ​

A label records the current node, visited customers, accumulated load, service time, and pricing cost. It is search state, not a solver variable.

2. Routes and Prices ​

cr: Actual cost of route r.

πi: Dual price of customer i's coverage equality.

μv: Dual price of the fleet upper-bound row for type v. The equations use the signed dual of the minimization master row, not its absolute value.

εrc: Nonnegative tolerance used to identify negative reduced costs.

3. Variables ​

1. Decision Variables ​

This context does not duplicate master route usage xr. Pricing returns a candidate route r.

2. Auxiliary Variables ​

Label state (n,S,L,t,γ) records the current node, visited customers, load, service-start time, and accumulated pricing cost. These are algorithm states, not auxiliary master variables.

4. Predicates ​

extendable(ℓ,j): Label ℓ can extend to node j.

compatible(r,b): Route r satisfies required and forbidden decisions at branch node b.

improving(r): Reduced cost is below −εrc.

complete: Pricing has searched sufficiently to certify that no improving route remains. Merely reaching a returned-column limit does not establish this.

5. Sets ​

C: Customers; V: vehicle types; N: customer and depot nodes.

Av: Feasible arcs for type v; Lv: its search labels.

Rbv: All routes of type v satisfying resource and branch-node b rules, distinct from the finite pool already inserted into the master.

Rb−: Negative-reduced-cost routes found by pricing.

6. Intermediate Values ​

1. Resource Recurrence ​

For an extension from label ℓ=(i,S,L,t,γ) to unvisited customer j, demand, service duration, and travel time are qj,si,τijv:

L′=L+qj,t′=max{ej,t+si+τijv},S′=S∪{j}.

t′ is service-start time, not arrival before waiting.

2. Reduced Cost ​

The route's phase-dependent objective coefficient is:

crphase={0,phase I,cr,phase II.

A route of vehicle type v must include both customer and fleet dual contributions:

c¯r=crphase−∑i∈Crπi−μv,r∈Rbv.

Costs and duals must use the same numerical normalization. Branch decisions restrict the search through route compatibility.

7. Assertions ​

A successful extension must preserve elementarity and resource feasibility:

extendable(ℓ,j)⇒j∉S ∧ (i,j)∈Av ∧ L′≤Qv ∧ t′≤lj.

This implication states what a permitted extension must satisfy. It does not require every label to extend to every customer.

8. Constraints ​

1. Route Feasibility [路线可行性] ​

Description: Pricing searches depot-to-depot routes without repeated customers, subject to capacity, time windows, and branch rules.

r∈Rbv⇒elementary(r)∧Lr≤Qv∧timeFeasible(r)∧compatible(r,b).

These are label-extension, filtering, and completed-route validation conditions, not a second family of arc variables and master rows.

2. Improving Column Filter [改进列筛选] ​

Rb−={r found by pricing:c¯r<−εrc}.

9. Objective Function (if applicable) ​

Description: Search permitted vehicle types for a route with minimum phase-dependent reduced cost.

minv∈V, r∈Rbvc¯r.

Only complete pricing that finds no negative-reduced-cost route supports a column-generation convergence claim. Early return due to time, column, or search limits does not establish that optimality conclusion.

10. Algorithm References ​

AlgorithmReferenced InDescription
Initial route generationMaster initializationSupplies seed routes; artificial coverage initializes feasibility
ESPPRC label extension and dominanceSections 6–8Maintains resources, visited sets, and reduced costs; prunes dominated states
Branch-compatibility filteringSections 4, 8Applies required/forbidden decisions to the graph and candidates
Pricing completion reportingSection 9Distinguishes complete search from a limit-triggered return

Kotlin route-generation source; Kotlin/Rust example entry points.

11. Ubiquitous Language ​

TermSymbolDefinition
LabelℓSearch state for a partial route
Visited setSCustomers already served by a label
Reduced costc¯rPhase coefficient minus corresponding row-dual contributions
Fleet dualμvDual value of the vehicle-type availability row
Pricing completecompleteSearch status allowing a reliable improving-column conclusion

12. Design Decisions ​

DecisionAlternativeRationale
ESPPRC label searchEnumerate all routesSearches incrementally under resources and elementarity
Include customer and fleet dualsSubtract customer duals onlyMatches all base restricted-master rows
Explicit completion statusTreat every return as completed searchAvoids reporting truncated search as convergence

13. Change Log ​

VersionChangeReason
1.1Aligned bilingual resource recurrences, phase prices, and pricing boundariesRestored fleet duals and separated algorithm state from model variables