chap4-数学规划模型-接力队的选拔与选课策略

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2 x5 x1 x2 0 x6 x7 0
模型求解 解不唯一 !!! 最优解: x1 = x2 = x3 = x6 = x7 = x9 =1, 其他为0;6门课程,总学分21.
x8 x5 0
2x9 x1 x2 0
讨论:选修课程最少,学分尽量多,应学习哪些课程? 目标 函数

最优解: x1 = x2 = x3 = x4 = x5 = x6 = x7 = x9 =1, 其他为0; 8门课,总学分28.

讨论与思考
min Y 1Z 2W
W 5x1 4 x2 4 x3 3x4 4 x5 3x6 2 x7 2 x8 3x9
min Z xi
i 1
9
最少2门数学课, 约束条件1 3门运筹学课, 2门计算机课.
x1 x2 x3 x4 x5 2
x3 x5 x6 x8 x9 3
x4 x6 x7 x9 2
0-1规划模型
课号 来自百度文库名 微积分 线性代数 最优化方法 数据结构 应用统计 计算机模拟 计算机编程 预测理论 数学实验 先修课要求
MODEL: sets: person/1..5/; position/1..4/; link(person,position): c, x; endsets data: c= 66.8, 75.6, 87, 58.6, 57.2, 66, 66.4, 53, 78, 67.8, 84.6, 59.4, 70, 74.2, 69.6, 57.2, 67.4, 71, 83.8, 62.4; enddata
例1 混合泳接力队的选拔
问题
蝶泳 仰泳 蛙泳 自由泳
5名候选人的百米成绩
甲 1 068 1 156 乙 572 1 06 丙 1 18 1 078 丁 1 10 1 142 戊 1 074 1 11 1 238
1 27 586
仰泳 蛙泳 自由泳
1 27 586
1 064 5 3
1 246 594
1 096 572
1 024
甲~ 自由泳、乙~ 蝶泳、丙~ 仰泳、丁~ 蛙泳.
讨论
原分配方案:
总成绩: 4132
甲~ 自由泳、乙~ 蝶泳、丙~ 仰泳、丁~ 蛙泳.
丁蛙泳c43 = 69.6s75.2 s,戊自由泳c54= 62.4s 57.5 s, 方案是否调整?
模型建立
课号 1 2 3 4 5 6 7 8 9 课名 微积分 线性代数 最优化方法 数据结构 应用统计 计算机模拟 计算机编程 预测理论 数学实验
0-1规划模型
所属类别 数学 数学 数学;运筹学 数学;计算机 数学;运筹学 计算机;运筹学 计算机 运筹学 运筹学;计算机
决策变量 xi=1 ~选修课号i 的 课程(xi=0 ~不选) 目标函数 选修课程总数最少
多目标规划 归一化处理方法
Min Y 1 Z 2W
通常在将两个目标加权时, 应该将两个目标的系数归 一化处理,以使两个目标 的量纲一致。
对于线性情况,将Z变为
1 9 Z xi 9 i 1
1
将W变为 W
然后再对Z与W作加权和,
ci
i 1
9
c x
i 1
9
i i
Min Y 1Z 2W
• 同学丁:对学分数和课程数加权形成一个目标,如三七开.
min Y 1Z 2W 0.7Z 0.3W
课号 1 2 3 4 5 6 7 8 9 课名 微积分 线性代数 最优化方法 数据结构 应用统计 计算机模拟 计算机编程 预测理论 数学实验 学分 5 4 4 3 4 3 2 2 3
1 064 5 3
1 246 594
1 096 572
1 024
如何选拔队员组成4100m混合泳接力队? 讨论:丁的蛙泳成绩退步到 1 152 ;戊的自由泳成 绩进步到 575 , 组成接力队的方案是否应该调整? 问题 分析
穷举法:组成接力队的方案共有5!=120种. 建立0-1规划模型:0-1表示一个队员是否入选
Z xi
i 1
9
1 2 1, 0 1 , 2 1
极端情况: 1=0,2=1; 1=1,2=0
1 2 / 3
1 3 / 4
Y ci xi , ci 0
i 1
9
min Y xi 1
最优解与1=0,2=1的结果相同——学分最多. 最优解与1=1,2=0的结果相同——课程最少.
模型求解
最优解:x14 = x21 = x32 = x43 = 1, 其他变量为0; 成绩为253.2(s)= 4132
蝶泳 甲 1 068 1 156 乙 572 1 06 丙 1 18 1 078 丁 1 10 1 142 戊 1 074 1 11 1 238
约束条件2
先修课程要求 x3=1必有x1 = x2 =1
1 2 3
4 5 6 7 8 9
微积分;线性代数 计算机编程 微积分;线性代数 计算机编程 应用统计 微积分;线性代数
x3 x1 , x3 x2
2x3 x1 x2 0
x4 x7 x4 x7 0
s.t.
x
j 1 5
4
ij
1, i 1, , 5 1, j 1, , 4
x
i 1
ij
xij {0, 1}
min=@sum(link: c*x); @for(person(i): @sum(position(j):x(i,j))<=1;); @for(position(j): @sum(person(i):x(i,j))=1;); @for(link: @bin(x)); END
i 队员,j 泳姿
X( 1, 3) X( 2, 3) X( 3, 3) X( 4, 3) X( 5, 3) X( 1, 4) X( 2, 4) X( 3, 4) X( 4, 4) X( 5, 4) 0.000000 0.000000 0.000000 1.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000
第四章
数学规划模型
4.1 奶制品的生产与销售 4.2 接力队选拔和选课策略
4.3 钢管和易拉罐下料
4.2
接力队选拔和选课策略
分派问题
• 若干项任务分给一些候选人来完成,每人的专长不同, 完成每项任务取得的效益或需要的资源不同,如何分派 任务使获得的总效益最大,或付出的总资源最少? • 若干种策略供选择,不同的策略得到的收益或付出 的成本不同,各个策略之间有相互制约关系,如何在 满足一定条件下作出抉择,使得收益最大或成本最小?
s.t.
x
j 1 5
4
ij
1, i 1, , 5 1, j 1, , 4
x
i 1
ij
xij {0, 1}
输出结果
X( 1, 1) X( 2, 1) X( 3, 1) X( 4, 1) X( 5, 1) X( 1, 2) X( 2, 2) X( 3, 2) X( 4, 2) X( 5, 2) 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000
学分
5 4 4 3 4 3 2 2 3
所属类别
数学 数学 数学;运筹学 数学;计算机 数学;运筹学 计算机;运筹学 计算机 运筹学 运筹学;计算机
先修课要求
微积分;线性代数 计算机编程 微积分;线性代数 计算机编程
应用统计 微积分;线性代数
问题
要求至少选两门数学课、三门运筹学课和两门计算机课 为了选修课程门数最少,应学习哪些课程 ? 选修课程最少,且学分尽量多,应学习哪些课程 ?
目 标
最优解如上,6门 课程,总学分21 . 最优解显然是选修 所有9门课程 .
• 同学乙:以学分最多 为目标,不管课程多少.
多目标规划
V - min {Z , W }
增加约束
• 同学丙:在课程最少的
前提下以学分最多为目标.
课号 课名 微积分 线性代数 最优化方法 数据结构 应用统计 计算机模拟 计算机编程 预测理论 数学实验 学分 5 4 4 3 4 3 2 2 3
表:四名队员的百米成绩 成绩 甲 自由泳/s 蛙泳/s 56 74 蝶泳/s 61 仰泳/s 63

丙 丁
63
57 55
69
77 76
65
63 62
71
67 62
例2 选课策略
课号
1 2 3 4 5 6 7 8 9
课名
微积分 线性代数 最优化方法 数据结构 应用统计 计算机模拟 计算机编程 预测理论 数学实验
x
i 1
9
i
6

以学分最多min{-W}为目标求解.
1 2 3
4 5 6 7 8 9
最优解: x1 = x2 = x3 = x5 = x7 = x9 =1, 其他为0;总 学分由21增至22.
注意:最优解不唯一!
可将x9 =1 改为x6 =1
多目标规划
V - min {Z , W }
课程最少
9
学分最多
min Z xi
i 1
max W 5x1 4 x2 4 x3 3x4 4 x5 3x6 2 x7 2 x8 3x9
向量最小化
两目标(多目标)规划: V - min {Z , W }
偏好程度
• 同学甲:以课程最少 单 一 为目标,不管学分多少.
模型建立
cij j=1 j=2 j=3 j=4
i: 队员,j :泳姿 i=1 66.8 75.6 87 58.6 i=2 57.2 66 66.4 53
4
i=3 78 67.8 84.6 59.4
5
i=4 70 74.2 69.6 57.2
i=5 67.4 71 83.8 62.4
若选择队员i参加泳姿j 的比赛,记 xij=1, 否则记 xij=0
0-1规划模型
min Z cij xij
j 1 i 1 4 5
模型求解2-LINGO
MIN 66.8x11+75.6x12+87x13+58.6x14 +… … +67.4x51+71 x52+83.8x53+62.4x54 SUBJECT TO x11+x12+x13+x14 <=1 …… x41+x42+x43+x44 <=1 x11+x21+x31+x41+x51 =1 …… x14+x24+x34+x44+x54 =1 END INT 20
目标 函数
约束 条件
min Z cij xij
j 1 i 1
每人最多入选泳姿之一
每种泳姿有且只有1人
x
j 1
4
ij
1, i 1,,5
x
i 1
5
ij
1, j 1,,4
0-1规划模型
min Z cij xij
j 1 i 1 4 5
模型求解1-LINGO
混合泳接力队的选拔 - 评注
指派(Assignment)问题:有若干项任务, 每项任务必 有且只能有一人承担,每人只能承担一项,不同人员 承担不同任务的效益(或成本)不同,怎样分派各项任 务使总效益最大(或总成本最小)? • 人员数量与任务数量相等 • 人员数量大于任务数量(本例) • 人员数量小于任务数量 ?
min Z cij xij
j 1 i 1 4 5
敏感性分析?
IP一般没有与LP相类似的理论,LINGO输出的 敏感性分析结果通常是没有意义的. c43, c54 的新数据重新输入模型,用LINGO求解
最优解:x21 = x32 = x43 = x51 = 1, 成绩为 4177
新方案:乙~ 蝶泳、丙~ 仰泳、丁~ 蛙泳、戊~ 自由泳
建立0-1规划模型是常用方法
问题(2013年试题):某游泳队拟选甲、乙、丙、丁四名 游泳队员组成一个4×100m混合泳接力队,参加今年的锦 标赛。他们的100m自由泳、蛙泳、蝶泳、仰泳的成绩如 下表所示。问甲、乙、丙、丁四名队员各自游什么姿势, 才最有可能取得最好成绩。请建立数学模型,并写出用 LINGO软件的求解程序.
相关文档
最新文档