Skip to content

旅客上下文模型 ​

1. 概述 ​

管理航班恢复调度系统中旅客的取消、舱位变更、航班变更和数量跟踪,将旅客相关约束和目标注册到列生成模型中。

1. 依赖上下文 ​

  1. 任务(task)
  2. bunch_compilation(航班串编译)

2. 概念 / 实体 ​

1. 旅客(Passenger) ​

具有数量和多航段航班列表的旅客,每个航段分配一个舱位。

idp :旅客 p 的唯一标识。

amountp :旅客 p 的数量(团体旅客可大于 1)。

flightsp :旅客 p 的航段列表,每项为(航班任务,舱位)对。

routep :旅客 p 的机场路线。

2. 航班旅客(FlightPassenger) ​

将旅客链接到特定航班的关联实体,具有可选前一航段。

flightfp :关联的航班任务。

passengerfp :关联的旅客。

prevfp :前一航段的航班旅客关联(可选)。

clsfp :旅客在该航班上的舱位。

amountfp :旅客数量。

3. 旅客取消(PassengerCancel) ​

跟踪列生成公式中的旅客取消决策变量。

passengerCancelfp :航班旅客 fp 的取消变量。

4. 旅客变更(PassengerChange) ​

跟踪列生成公式中的旅客舱位变更和航班变更决策变量。

passengerClassChangefp,cls :航班旅客 fp 变更为舱位 cls 的变量。

passengerFlightChangefp,f′,cls :航班旅客 fp 变更为航班 f′ 和舱位 cls 的变量。

5. 旅客数量(PassengerAmount) ​

计算每航班每舱位的旅客数量表达式,考虑取消和变更。

passengerAmountf,cls :航班 f 在舱位 cls 上的旅客数量表达式。


3. 变量 ​

1. 决策变量 ​

cfp :航班旅客 fp 的取消数量,无量纲量,取值范围为 [0,amountfp] ,整数,表示被取消的旅客数量,∀fp∈FP 。

sfp,cls :航班旅客 fp 变更为舱位 cls 的数量,无量纲量,取值范围为 [0,amountfp] ,整数,∀fp∈FP,∀cls∈CLS∖{fp.cls} 。

rfp,f′,cls :航班旅客 fp 变更为航班 f′ 和舱位 cls 的数量,无量纲量,取值范围为 [0,amountfp] ,整数,∀fp∈FP,∀f′∈toFlightsfp.flight,∀cls∈CLS 。

2. 辅助变量 ​

无额外辅助变量。


4. 谓词 ​

1. 旅客状态 ​

isCancelled :航班旅客 fp 被取消(cfp>0)。

isClassChanged :航班旅客 fp 发生舱位变更。

isFlightChanged :航班旅客 fp 发生航班变更。

isTransfer :旅客 p 是中转旅客(路线包含 2 个以上机场)。


5. 集合 ​

1. 航班旅客 ​

FP :所有航班旅客关联全集。

FPf :航班 f 上的航班旅客子集,∀f∈F 。

FPp :旅客 p 的航班旅客子集,∀p∈P 。

2. 航班 ​

F :所有航班任务全集。

Ffp :航班旅客 fp 的替代航班子集(相同出发和到达机场)。

3. 舱位 ​

CLS :所有舱位全集(PassengerClass 枚举)。


6. 中间值 ​

1. 旅客数量表达式 ​

描述:航班 f 在舱位 cls 上的净旅客数量,考虑取消、舱位变更和航班变更。

passengerAmountf,cls=∑fp∈FPf(1[fp.cls=cls]⋅amountfp−cfp−1[fp.cls=cls]⋅∑cls′∈CLSsfp,cls′−1[fp.cls=cls]⋅∑f′,cls′rfp,f′,cls′+∑cls′sfp,cls+∑fp′∈FP:f∈Ffp′rfp′,f,cls)

7. 断言 ​

1. 旅客路线连续性 ​

描述:旅客的航段列表中,连续航段的到达机场必须与下一航段的出发机场一致。

∀p∈P,∀k∈[1,|flightsp|)(flightsp[k−1].arr=flightsp[k].dep)

2. 航班类型一致性 ​

描述:旅客的所有航段必须是航班类型。

∀p∈P,∀(f,cls)∈flightsp(f.isFlight)

8. 约束 ​

1. 旅客取消最小化 ​

[EN]:Passenger Cancel Minimization

描述:最小化被取消的旅客总数(目标函数项)。

min∑fp∈FPwfp⋅cfp

2. 旅客舱位变更最小化 ​

[EN]:Passenger Class Change Minimization

描述:最小化舱位变更的旅客总数(目标函数项)。

min∑fp∈FP∑cls∈CLS∖{fp.cls}wfp⋅sfp,cls

3. 旅客航班变更最小化 ​

[EN]:Passenger Flight Change Minimization

描述:最小化航班变更的旅客总数(目标函数项)。

min∑fp∈FP∑f′∈Ffp∑cls∈CLSwfp⋅rfp,f′,cls

4. 航班容量约束 ​

[EN]:Passenger Flight Capacity Constraint

描述:每航班每舱位的旅客数量不得超过可用容量。

s.t.passengerAmountf,cls≤capacityf,cls,∀f∈F,∀cls∈CLS

5. 路线取消约束 ​

[EN]:Passenger Route Cancel Constraint

描述:如果旅客的任一航段被取消,则整个路线的所有航段均被取消。

s.t.cfp=cfp′,∀p∈P,∀fp,fp′∈FPp

9. 目标函数(如适用) ​

描述:最小化旅客取消、舱位变更和航班变更的加权总和。

min∑fp∈FP(wfpcancel⋅cfp+∑clswfpclass⋅sfp,cls+∑f′,clswfpflight⋅rfp,f′,cls)

10. 算法引用 ​

当前上下文无独立算法引用。


11. 通用语言 ​

术语符号英文定义
旅客PPassenger具有数量和多航段航班列表的旅客
航班旅客FPFlight Passenger旅客与特定航班的关联
取消cCancel旅客被取消的数量
舱位变更sClass Change旅客舱位的变更数量
航班变更rFlight Change旅客航班的变更数量
路线routeRoute旅客访问的机场序列

12. 设计决策 ​

决策备选方案选择原因日期
取消/变更分离建模统一为恢复变量不同业务语义和惩罚权重-
路线取消联动独立取消每航段旅客体验:部分取消无意义-

13. 变更记录 ​

版本变更原因
v1初始实现基础旅客域建模