Skip to content

Bunch generation context model ​


1. Overview ​

The bunch-generation context builds feasible flight-task columns per aircraft, including an initial pool and reduced-cost pricing. It returns domain objects to the selection algorithm; it does not register master variables.

1. Dependent Contexts ​

Task, rule, crew, cargo, aircraft, and the compilation shadow-price contract.


2. Concepts / Entities ​

1. Route graph ​

Ga=(Va,Ea) is the aircraft-specific task transition graph;

feasiblea(e) is its rule/time/aircraft feasibility predicate.

2. Flight-task bunch ​

Bb is an ordered task sequence for aircraft a; costb is its total cost; cover(t,b) indicates task coverage.

3. Shadow-price map ​

πt and μa are master dual values used to calculate reduced cost.


3. Variables ​

No solver decision variables are owned by this context. A generated bunch is an output object, not a binary variable until compilation inserts it.


4. Predicates ​

initial(b): bunch belongs to the seed pool. feasible(b): all task/rule, aircraft, time, lock, and cost checks pass. improving(b): reduced cost is below the configured tolerance.


5. Sets ​

A: aircraft; T: tasks; Ga: graph for aircraft a; B0: initial bunches; Btprice: pricing output at iteration t; Π: shadow-price maps.


6. Intermediate Values ​

For bunch b of aircraft a, the pricing reduced cost is:

rc(b)=costb−∑t∈Bbπt−μa

The exact cost and dual normalization are supplied by the configured cost calculator and compilation policy.


7. Assertions ​

Every generated bunch has a known aircraft, a nonempty ordered task sequence, and passes the configured feasibility judger:

∀b∈Btprice:feasible(b)=true

8. Constraints ​

This context does not register solver rows. Generation enforces graph edges, locks, connection times, rule restrictions, and aircraft usability before a column is returned.


9. Objective Function (if applicable) ​

Pricing searches for rc(b)<0; this is a subproblem criterion, not an independent global objective registered by the context.


10. Algorithm References ​

AlgorithmSource rolePurpose
InitialFlightTaskBunchGeneratorinitial poolseed compilation
FlightTaskBunchGeneratorpricingenumerate improving feasible bunches

11. Ubiquitous Language ​

TermSymbolDefinition
route graphG_aaircraft-specific feasible transition graph
bunch/columnbordered task sequence returned to compilation
pricingrc(b)search for an improving column
shadow priceπ, μdual values from the master

12. Design Decisions ​

DecisionAlternativeRationale
keep generated columns outside the solver until insertionpreallocate all possible bunchessupports incremental column generation

13. Change Log ​

VersionChangeReason
1.0Documented initial/pricing output boundaryDistinguish pricing results from master variables