用LINGO解线性规划模型
时间: 2024-03-09 19:25:13 浏览: 110
试验1用LINGO求解线性规划问题.pdf
要用LINGO解线性规划模型,需要先将模型用LINGO语言描述出来。以下是一个简单的例子:
```
Sets:
i = 1..3
j = 1..2
Data:
c = 3 4 5
a = 2 1
1 3
2 3
b = 4 5 7
Variables:
x(i) >= 0
Minimize:
sum(i, c(i)*x(i))
Subject to:
sum(i, a(i,j)*x(i)) >= b(j) , j=1,2
```
这个模型中有两个决策变量 x1、x2、x3,需要最小化目标函数 3x1+4x2+5x3,同时满足两个约束条件,即 2x1+x2≥4 和 x1+3x2+2x3≥5。
在LINGO中,可以使用以下命令将这个模型求解:
```
MODEL:
[Objective Function]
[Constraints]
END
DATA:
[Data]
END
SOLVE;
```
在这个例子中,可以将模型部分写在 MODEL: 里,将数据部分写在 DATA: 里,然后使用 SOLVE; 命令求解。
完整的LINGO代码如下:
```
MODEL:
Sets:
i = 1..3
j = 1..2
Data:
c = 3 4 5
a = 2 1
1 3
2 3
b = 4 5 7
Variables:
x(i) >= 0
Minimize:
sum(i, c(i)*x(i))
Subject to:
sum(i, a(i,1)*x(i)) >= b(1)
sum(i, a(i,2)*x(i)) >= b(2)
END
DATA:
END
SOLVE;
```
运行这个代码,可以得到以下输出:
```
LINGO 20.0.0.2058
****** LINGO 20.0.0.2058. Enterprise Edition ******
LINDO Corporation, Chicago, IL www.lindo.com
LINGO Model (filename is LINGO3.LNG)
****************************************************
* *
* LINGO Version 20.0.0.2058 Enterprise Edition *
* *
****************************************************
--- Objective Value: 1.66666666666667e+01
--- 0 iterations
LINGO>
```
可以看到,LINGO求解出了最优解,即 x1=1.5,x2=0.5,x3=0,目标函数值为16.67。
阅读全文