某車間要參加單位舉辦的技術操作比賽,比賽設有5個單項和乙個全能專案(同時參加5個單項),14人參加。隊員1
2345
6789
1011
1213
14單項 1101
41055
4624
86109
單項 295
6447
4786
7814
單項 375
5677
88710
2645
單項 435
9586
91066
5424
單項 5310
8287
7586
9837
問題1:如果比賽規定:
(1)每個車間可派14人參加比賽,每人至少參賽一項;
(2)參加比賽的隊員中必須有3人參加全能比賽,其餘隊員參加單項比賽,且參加每個單項比賽的隊員數不得超過6人(不包括全能隊員);
(3)參加全能的隊員不能參加單項;
(4)參加單項比賽的隊員至多可以參加3個單項;
(5)參加單項比賽的隊員得分是其參加專案得分之和,參加全能比賽的隊員得分是其參加專案得分和的4/5,車間的得分是車間所有參賽隊員得分之和。
問 如何安排參加比賽最好?
問題求解:
難點在於如何區分參加單項和全能比賽的隊員。
建立決策變數:令yj=1表示第j個人參加全能比賽,yj=0表示第j個人不參加全能比賽。
令xij=1表示第j個人參加第i項單項比賽;xij=0表示第j個人不參加第i項單項比賽。
每個能參加全能比賽的不參加單項比賽,則有:xij<1-yj
j=1,2,…,14;i=1,…,5
參加單項比賽的人至少參加1項,我們要求yj=0時,有∑xij>=1-yj j=1,…,14
lingo**:
sets:
tm/1..14/:y,s;
p/1..5/:;
u(p,tm):a,x;
endsets
data:
a=10,1,4,10,5,5,4,6,2,4,8,6,10,9,
9,5,6,4,4,7,4,7,8,6,7,8,1,4,
7,5,5,6,7,7,8,8,7,10,2,6,4,5,
3,5,9,5,8,6,9,10,6,6,5,4,2,4,
3,10,8,2,8,7,7,5,8,6,9,8,3,7;
enddata
max = 0.8*@sum(tm(j):s(j)*y(j))+@sum(u(i,j):a(i,j)*x(i,j));
@sum(tm(j):y(j))=3;
@for(p(i):@for(tm(j):x(i,j)<=1-y(j)));
@for(tm(j):@sum(p(i):x(i,j))>=1-y(j));
@for(tm(j):@sum(p(i):x(i,j))<=3);
@for(p(i):@sum(tm(j):x(i,j))<=6);
@for(tm(j):s(j)=@sum(p(i):a(i,j)));
@for(u(i,j):@bin(x(i,j)));
@for(tm(j):@bin(y(j)));
Lingo解決最優化問題
目錄 三 待更新 前面,我們已經對lingo有了一定的了解,但是要想真正的熟悉lingo在解決優化問題中的強大之處,還需要不斷加強相關訓練,本文主要是使用lingo來解決優化問題,該文的主要目的有以下三點 若您對lingo的安裝及基本操作不是很了解,可暫且移步 lingo安裝 lingo基本操作 優...
最優化方法學習筆記 最優化問題數學模型
1.最優化問題的數學模型 f x 是目標函式,圖中最優化問題就是求解f x 的極小值 此處的min的意義不是最小值 s.t.是 subject to subject有受限制的的意思,加上乙個to就是 受限制於。的意思。也就是函式f x 的定義域受限制於以下函式。ci x 是約束函式。rn表示乙個n維...
分支限界法實現最優裝載c 最優化模型入門
1.引例 其中2.迭代下降演算法 迭代下降準則 框架演算法 1 給出目標函式的初始迭代點 2 按一定規則產生 處的乙個 下降方向 3 再沿方向 搜尋得到 下乙個迭代點,使得 4 若滿足停機條件,則終止迭代並輸出 否則轉步驟2 注意 a.在適當的假設下一般可以說明演算法能在有限步之內找到最優解或得到乙...