旅客上下文模型
1. 概述
管理航班恢复调度系统中旅客的取消、舱位变更、航班变更和数量跟踪,将旅客相关约束和目标注册到列生成模型中。
1. 依赖上下文
- 任务(task)
- bunch_compilation(航班串编译)
2. 概念 / 实体
1. 旅客(Passenger)
具有数量和多航段航班列表的旅客,每个航段分配一个舱位。
2. 航班旅客(FlightPassenger)
将旅客链接到特定航班的关联实体,具有可选前一航段。
3. 旅客取消(PassengerCancel)
跟踪列生成公式中的旅客取消决策变量。
4. 旅客变更(PassengerChange)
跟踪列生成公式中的旅客舱位变更和航班变更决策变量。
5. 旅客数量(PassengerAmount)
计算每航班每舱位的旅客数量表达式,考虑取消和变更。
3. 变量
1. 决策变量
2. 辅助变量
无额外辅助变量。
4. 谓词
1. 旅客状态
isCancelled :航班旅客
isClassChanged :航班旅客
isFlightChanged :航班旅客
isTransfer :旅客
5. 集合
1. 航班旅客
2. 航班
3. 舱位
6. 中间值
1. 旅客数量表达式
描述:航班
7. 断言
1. 旅客路线连续性
描述:旅客的航段列表中,连续航段的到达机场必须与下一航段的出发机场一致。
2. 航班类型一致性
描述:旅客的所有航段必须是航班类型。
8. 约束
1. 旅客取消最小化
[EN]:Passenger Cancel Minimization
描述:最小化被取消的旅客总数(目标函数项)。
2. 旅客舱位变更最小化
[EN]:Passenger Class Change Minimization
描述:最小化舱位变更的旅客总数(目标函数项)。
3. 旅客航班变更最小化
[EN]:Passenger Flight Change Minimization
描述:最小化航班变更的旅客总数(目标函数项)。
4. 航班容量约束
[EN]:Passenger Flight Capacity Constraint
描述:每航班每舱位的旅客数量不得超过可用容量。
5. 路线取消约束
[EN]:Passenger Route Cancel Constraint
描述:如果旅客的任一航段被取消,则整个路线的所有航段均被取消。
9. 目标函数(如适用)
描述:最小化旅客取消、舱位变更和航班变更的加权总和。
10. 算法引用
当前上下文无独立算法引用。
11. 通用语言
| 术语 | 符号 | 英文 | 定义 |
|---|---|---|---|
| 旅客 | Passenger | 具有数量和多航段航班列表的旅客 | |
| 航班旅客 | Flight Passenger | 旅客与特定航班的关联 | |
| 取消 | Cancel | 旅客被取消的数量 | |
| 舱位变更 | Class Change | 旅客舱位的变更数量 | |
| 航班变更 | Flight Change | 旅客航班的变更数量 | |
| 路线 | route | Route | 旅客访问的机场序列 |
12. 设计决策
| 决策 | 备选方案 | 选择原因 | 日期 |
|---|---|---|---|
| 取消/变更分离建模 | 统一为恢复变量 | 不同业务语义和惩罚权重 | - |
| 路线取消联动 | 独立取消每航段 | 旅客体验:部分取消无意义 | - |
13. 变更记录
| 版本 | 变更 | 原因 |
|---|---|---|
| v1 | 初始实现 | 基础旅客域建模 |