airline scheduling and pricing using a genetic algorithm

Post on 30-Nov-2014

235 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Some of my earlier research work on "clean sheet" scheduling for airlines. AIrline timetables are generally created by hand, and then mathematical models are used to optimize and tweak them. This was the first published work in the industry for diong the whole process in one system. Combines a number of different airline operations research models into a single framework. When the AA / Sabre Research Group was created, one of the goals was a clean-sheet scheduling system. Bob Crandall told my boss that there no way it could be done for even three aircraft - so this is what I built.

TRANSCRIPT

1

Macro-level Scheduling

and Pricing Using a

Genetic Algorithm

Alan Walker

Sabre - September 2001

2

Overview

• Introduction

• Model Formulation

• Results

• Conclusion

3

Introduction

• Suppose you start from nothing

– Clean sheet of paper

– Information on your competitors

– Do everything - Fleet, timetable, FAM, YM & pricing

– Can you even handle 3 aircraft?

• This is a big, ugly search space

– Non-linear

– Stochastic

– Discontinuous

4

Introduction

• History of the problem

– We didn’t have an optimization model to do this

– Built a simple GA-based approach in late 1996

– Code fragments, ideas and discussions were a catalyst for integrated planning models using more traditional optimization techniques

• Why revisit it now?

– Computing resources are much greater

– Could be useful to others

– Interesting results

5

Pax Preference

Demand Model

Yield Mgmt.

Optimization

Profitability

GA

- reproduction

- mutation

Population

of Marketing

Plans (Price

and Schedule)

Plan

New Individuals

Fittest

Individuals

(higher profit)

Spill

Model

Inputs

Outputs

Model Structure

6

Model - Inputs

• Passenger preferences

– Market segment

– Base demand

– Base price

– Elasticity

– Time of day preference

– Service preference

• Schedule parameters

– Fleet type and number

– Aircraft capacity and

operating costs

– Block times / model

– Minimum turn times

• OA schedule and price

7

Model - Genetic Algorithm

• General

– Each potential solution is represented as a bit-string

– The bit-string contains all information associated with scheduling and pricing decisions

– Simulates evolution with survival-of-the-fittest

• Has been applied to diverse range of difficult combinatorial problems in other industries

– Parametric design of aircraft and aircraft engines

– Job-shop scheduling

– Strategy discovery for multi-player games

8

Model - Genetic Algorithm

• Initial population

– A set of potential solutions is generated randomly

• Reproduction

– Parents chosen randomly, weighted by profit

– New solutions are generated by combining elements from 2 parents, using random crossover operations

– Mutation occurs randomly to bits within the offspring

– New individuals replace less profitable solutions

• Stopping criteria

– Based on a specified number of generations

9

Crossover

Point

Population

(about 100)

Select profitable plans

as parents

New

Individuals Each bit string in the population

can be decoded as a complete

marketing plan (schedule and price)

Replace less

profitable plans

Mutation

Model - Genetic Algorithm

10

Model - GA Encoding DECL;&C;CITY;NOM;DFW;ABQ;MCO;MSY;SAT;TUL

DECL;&W;WAIT;ORD;0;5;10;15;20;25;30;45;60;75;90;120;150;180;210

# Skeleton schedule to be substituted

BTRT;AA;F10;&C;&W;&C;&W;&C;&W;&C;&W;&C;&W;&C;&W

BTRT;AA;S80;&C;&W;&C;&W;&C;&W;&C;&W;&C;&W;&C;&W

# OA Flt Leg;Carrier;Orig;Dest;DepTime;ArrTime

FLEG;DL;ABQ;DFW;1030;1206;100;25

FLEG;DL;ABQ;DFW;1630;1805;100;25

# Market definitions

MSEG;ABQ;DFW;Y;105.184;102.163;0;LOGIT

MSEG;ABQ;DFW;M;105.184;81.73;0;LOGIT

MSEG;ABQ;DFW;Q;105.184;61.2975;0;LOGIT

11

Model - GA Encoding

• What do planes do?

– Fly, wait, fly, wait, fly, wait, etc…

– Wait time is minimum ground time + additional

– Network is a collection of aircraft cycles

• GA replaces the parameter of the route string with a value from the named define set – DECL;&C;CITY;NOM;DFW;ABQ;MCO;MSY;SAT;TUL

DECL;&W;WAIT;ORD;0;5;10;15;20;25;…

BTRT;AA;F10;&C;&W;&C;&W;&C;&W;&C;&W;&C;&W;&C;&W

• One sample substitution – BTRT;AA;F10;DFW;5;ABQ;15;MCO;30…

12

Model - GA Encoding

• Heuristic to ensure that only feasible cycles are

created and used in the schedule

• Can create restricted subsets, i.e. don’t send

narrow body aircraft to Europe – DECL;&C_S80;CITY;NOM;DFW;SAT;MIA;MCO...

DECL;&C_767;CITY;NOM;DFW;ORY;LHR;FRA...

BTRT;AA;767;&C_767;&W;&C_767;&W;&C_767;&W...

• Encode price changes

13

Model - Passenger Preference

• Both logit & QSI models are supported

– Selectable at the market-segment level

• Models take into account

– Time Of Day (TOD) utility, based on a passenger’s

preferred departure / arrival times and the difference

between these times and the actual schedule

– Price utility, taking into account a passenger’s

preference for a given fare amount and restrictions

– Service utility for aircraft type and direct vs. connecting

service

14

ElasticityE

priceBaseP

priceAdjustedP

demandmarketBaseD

demandmarketAdjustedD

P

PPEDD

adj

adj

adj

adj

0

0

0

0

0 1

Passenger Preference (cont.)

15

Model - Yield Management

• Uses an O&D YM optimizer

– Don’t need a GA for this

Ssa

jCAPats

dyyfadyyfyRR

s

j

Ss

s

a

a

ssssss

Svcs

sTotal

j

s

s

YM

ˆ..

)(ˆ)(max

ˆ

0 ˆ

16

Model - Spill

• Traffic is found by spilling demand based on

allocations, using standard spill model:

– Trafficj = P(Dj<Xj)E(Dj|Dj<Xj) + P(Dj>Xj)Xj

– Where:

– Dj = demand for market/class j

– Xj = yield management allocation for market/class j,

based on the sum of bid prices for itinerary j

17

Model - Outputs

• Marketing Plan

– Prices

– Timetable

– Capacity allocation

– Bid prices

• Statistics

– Profit

– Revenue

– Operating costs

– Spill

– Demand (OD and flight)

18

ABQ MCO

MSY

TUL

SAT

DFW

Results - Sample Problem

• Six cities

• One hub

• 3 aircraft

• 30 O&Ds

• One competitor

19

SAT

MCO

TUL

SAT

MSY

ABQ

DFW

TUL

MSY

SAT

MCO

Results - Sample Output

• Price variations

– + $20 on DFW-MCO

– + $10 on DFW-MSY

– Assumes competitors match

changes

• Statistics

– Profit is $47,327

– Without varying the price,

the model only makes

$44,302 (but with a

different schedule)

ABQ

SAT

20

Algorithm Progress Over Time

0

5000

10000

15000

20000

25000

30000

35000

40000

45000

50000

1

12

23

34

45

56

67

78

89

10

0

Generation

Pro

fit

Max

Avg

Results - Solution Quality

• Less profitable plans are

progressively eliminated

from the population.

Hence, the average profit

approaches the maximum

• Approximately 100

generations are required to

reach a plateau

21

Results - Solution Quality

• Running the model several times generates different plans having little variance in profitability

– Run 1: $47,985

– Run 2: $48,995

– Run 3: $47,837

– Run 4: $48,291

– Run 5: $48,290

• The ability to vary price affects the schedule that is generated

22

Frequency

Profitability

Global Optimal

Confidence

interval

Model

results

Results - Solution Quality

• Statistical model to determine solution quality.

– Can’t find globally optimal solution

– Confidence interval to estimate where the global optimum is likely to be. Ref: Smith & Sucur, 1996

– We’re 95% confident we’re within 3% of optimal

23

Results - Sensitivity Analysis

• Vary each of the input parameters

• Percent change in output for a 1% change in input

• Can be used to determine

– What happens to a schedule’s structure as the inputs are

varied

– The change in outputs, particularly profit, as a function

of inputs

24

Results - Sensitivity Analysis

ProfitProfit

MarginLoad

Factor Yield

per

pass.

Yield

per

ASM

Yield

per

RPM

CV100

Demand

Demand Elasticity

Fleet Size

Operational Cost

-1

-0.5

0

0.5

1

1.5

2

25

Results - Sensitivity Analysis

Non-

stop

freq.

Conn.

freq. as

a % of

Non-

stop

traff.

Connect

traff.Non-

stop

traff. as

CV100

Demand

Demand Elasticity

Fleet Size

Operational Cost

-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

1.2

26

cv=0.4 lf=76% profit=$25034

cv=0.1 lf=93% profit=$48303

ABQ

ABQ

ABQ

SAT

MCO

SAT

MCO

MCO

MSY

TUL

MSY

0830

1500

MCO

SAT

ABQ

TUL

ABQ

SAT

SAT

TUL

MCO

SAT

SAT

ABQ

ABQ

DFW DFW

SAT TUL

Results - Schedule Structure • Varying the demand CV has a visible effect on schedule structure and

profitability. Specifically, at a higher CV, the schedule generation has

more emphasis on connections, fewer flights and is less profitable

27

Results - Scalability

• 98% of CPU used in the objective function

• 12 aircraft, with prices, took about 2 days

– Sun Super SPARC based system

– Some code not optimized (i.e. connection generator)

• What could we do today?

– CPU is 10x faster

– Can easily parallelize on MPP or networked machines

– Should be able to handle 50-100 aircraft

28

Conclusion - IPM Family Tree

IPM

FLITEWISE

Price Balance

Statistic

Simultaneous

YM & Pricing

O&D FAM

While IPM never

made production,

fragments of code

and ideas generated

an explosion of

follow-on models

Frequency

Model

29

Conclusion

• GA may not be practical for a large airline

– Runtime

– Some constraints not considered

• Potentially useful for

– High-level analysis

– Long-term planning

– New hub or alliance planning

– Research

• Catalyst for integrated planning

30

References

• Goldberg, D.E. [1989]. Genetic Algorithms in Search, Optimization,

and Machine Learning. Addison-Wesley.

• Smith, B.C., Sucur, M. [1996], Analysis of Solution Quality in

Schedule Planning, AGIFORS Symposium Atlanta GA

• Jacobs T.L., Ratliff R.M. & Smith B.C., [2000] Soaring with

Synchronized Systems, ORMS Today

top related