LINGO程式 最優組隊模型(優化問題)

2021-10-03 20:54:06 字數 1641 閱讀 7407

某車間要參加單位舉辦的技術操作比賽,比賽設有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.在適當的假設下一般可以說明演算法能在有限步之內找到最優解或得到乙...