利用LINGO软件优化数学模型

合集下载

2.Lingo优化软件的使用方法

2.Lingo优化软件的使用方法

然后再在求解的基础上,在菜单上选择lingo/range(ctr+R), 计算机会自动对每个变量和资源用有量进行范围分析:保 持最优基不变的情况下,变量或约束行的右端允许增加和 减少的量。注意:对整数规划和0-1规划灵敏度分析意义不 大。
Ranges in which the basis is unchanged:
数学模型如下:
max z [ t (i) r (i)]x (i) s(i) y(i)
i 1 i 1
3
3
s.t.
3 c ijx i b( j) j 1,2,3 i 1 x (i) My(i) i 1,2,3 ___ x (i) 0, x Z y(i) 0,1 i 1,2,3
产品1
资源A 资源B 资源C 2 2 1
产品2 产品3
4 3 2 8 4 3
资源量
500 300
单件可变费 固定费用 单件售价
4 100 8
5 150 10
6 200 12
分析问题和设置变量 x(i)表示第i种产品的产量;i=1,2,3 c(i,j)表示第i种产品对第j种资源的消耗量;i=1,23,j=1,23 b(j)表示第j种资源的拥有量; r(i)表示第i种产品的单件可变费用; s(i)表示第i种产品的固定费用; t(i)表示第i种产品的单位售价。 总收益=销售收入-固定费用-可变费用,由于不知道第i种产品 生产与否,所以,必须给定第i种产品的选择变量 y(i)表示第I种产品的生产选择,y(i)=0,表示不生产第i种产品, y(i)=1表示生产第i种产品。
#LT#(小于) #LE#(小于等于) 逻辑运算的结果只有“真”(TRUE)和“假”(FALES), Llingo用1表示True,其它的都是False。

Lingo软件与数学建模

Lingo软件与数学建模
我们给于以下解释:
变量数目:变量总数 (Total)、非线型变量 数(Nonlinear)、整数 变量数(Integer)
约束变量:约束总数 ( Total )、非线性约束 个数(Nonlinear)
非线性系数数量:总数 ( Total )、非线性项的 系数个数(Nonlinear)
内存使用量:单位为千字节
数据多,咋办?
value=1,1.2,0.9,1.1;
enddata
max=@sum(goods:weight*value);
@for(goods:@bin(x));
end
游泳
四名同学的混合泳接 力赛的四种成绩如左 表所示,确定如何分 配使成绩最佳。
蛙蝶自仰 泳泳由泳

甲 99 60 59 73
线性规划
二次规划
非线性规划
LINGO软件的基本操作
双击快捷方式 即可计入程序编辑界面
Lingo软件介绍
➢解决一个简单的线性规划(LP)问题
max z 2x 3y 4x 3y 10
s.t. 3x 5y 12 x, y 0
LINGO软件介绍
点击图标
运行,屏幕上显示运行状态窗口如下: 对于LINGO运行状态窗口,
基 @EXP(X):指数函数(以自然对数e为底),返回eX的值
本 数 学
@ LOG(X):自然对数函数,返回X的自然对数值; @POW(X,Y):指数函数,返回XY的值;
函 @SQR(X):平方函数,返回X2的值;
数 @SQRT( X ):平方根函数,返回X的平方根;
@FLOOR(X):取整函数,返回X的整数部分(向靠近0 的方向取);
@GIN(X):限制X为整数.
0-1规划(线性规划)

lingo案例

lingo案例

LINGO是一种用于线性规划、整数规划、非线性规划、混合整数规划等数学建模和优化问题的软件工具。

它可以用于解决各种实际问题,包括生产计划、物流、资源分配、网络设计等。

以下是一个简单的LINGO案例,以帮助您了解如何使用LINGO进行优化建模和求解问题:**问题描述:**假设有一家制造公司,他们生产两种产品:A和B。

公司有两个工厂,每个工厂都有不同的生产能力和成本。

公司希望确定每个工厂应该生产多少产品A和B,以最大化利润,同时满足生产能力和市场需求的限制。

**问题数据:**- 工厂1的生产能力:最多生产500个A和300个B- 工厂2的生产能力:最多生产400个A和600个B- 产品A的利润:每个A产品的利润为30美元- 产品B的利润:每个B产品的利润为40美元- 生产一个A产品的成本:工厂1为10美元,工厂2为15美元- 生产一个B产品的成本:工厂1为12美元,工厂2为10美元- 市场需求:产品A的市场需求为600个,产品B的市场需求为800个**LINGO建模和求解:**在LINGO中,可以使用数学表达式来建立优化模型。

以下是一个LINGO模型的示例:```SETS:FACTORIES = 1..2;ENDSETSDATA:CAPACITY(FACTORIES) = 500 300400 600;PROFIT = 30 40;COST(FACTORIES) = 10 1512 10;DEMAND = 600 800;ENDDATAVARIABLES:X(FACTORIES) = 0;ENDVARIABLESMAX = @SUM(FACTORIES, PROFIT(FACTORIES) * X(FACTORIES))SUBJECT TOCAPACITY_CONSTRAINT(F)$(FACTORIES): @SUM(FACTORIES, COST(F, FACTORIES) * X(FACTORIES)) <= CAPACITY(F);DEMAND_CONSTRAINT(I)$(FACTORIES): @SUM(FACTORIES,X(FACTORIES)) >= DEMAND(I);POSITIVE_X(F)$(FACTORIES): X(F) >= 0;ENDSUBMODEL:MAX;SOLVE;```上述LINGO模型首先定义了SETS、DATA、VARIABLES和MAX,然后使用SUBJECT TO部分定义了约束条件,最后使用MODEL和SOLVE命令求解优化问题。

用Lingo求解最优化问题

用Lingo求解最优化问题

温州大学城市学院
基本作业题Leabharlann ( 2)min z = 13 x1 + 9 x2 + 10 x3 + 11x4 + 12 x5 + 81x6 ,
x1 + x4 = 400, x2 + x5 = 600, x3 + x6 = 500, 0.4 x1 + 1.1 x2 + x3 ≤ 800, 0.5 x + 1.2 x + 1.3 x ≤ 900, 4 5 6 xi ≥ 0, i = 1, 2, 3, 4, 5, 6.
当 x=0 时, 目标函数最小值为 6.
温州大学城市学院 点击 LINGO-Options 选择 Global Solver (全局求解器 全局求解器) 全局求解器 在Use Global Solver 前面打√ 点击“ 再求解. 点击“OK”, 再求解
温州大学城市学院 例2 用Lingo 求函数
f ( x ) = 8 x + 0.01x − x + 0.01x + 6cos x
4 7 5
的最小值点和最小值. 的最小值点和最小值
当 x=14480.28 时, 目标函数最小值为 -0.1334869E+30.
(即-0.1334869×1030) 即 ×
求解器状态窗口 (LINGO Solver Status)
Model: 当前模型的类型 如: LP, NLP) 当前模型的类型(如 State: 当前解的状态 如: Global Optimum(全局最优 当前解的状态(如 全局最优); 全局最优 Local Optimum(局部最优 等) 局部最优)等 局部最优

lingo软件 优化问题

lingo软件  优化问题

2.2 LP模型在LINGO中的一个典型输入方式

集合定义部分从 (“SETS:”到 “ENDSETS” ): 定义集合及其属性
MIN
I 1,2,3,4

{400 RP ( I ) 450OP( I ) 20 INV ( I )}
RP( I ) 40, I 1, 2, 3, 4 INV ( I ) INV ( I 1) RP ( I ) OP ( I ) DEM ( I ), I 1, 2, 3, 4 INV (0) 10 INV ( I ) 0 OP ( I ) 0 RP ( I ) 0 I 1 4
Step5 回答问题







Global optimal solution found. Objective value: 78450.00 Total solver iterations: 2 Variable Value Reduced Cost RP1 40.00000 0.000000 RP2 40.00000 0.000000 RP3 40.00000 0.000000 RP4 25.00000 0.000000 OP1 0.000000 20.00000 OP2 10.00000 0.000000 OP3 35.00000 0.000000 OP4 0.000000 50.00000 INV1 10.00000 0.000000 INV2 0.000000 20.00000 INV3 0.000000 70.00000 INV4 0.000000 420.0000 Row Slack or Surplus Dual Price 1 78450.00 -1.000000 2 0.000000 30.00000 3 0.000000 50.00000 4 0.000000 50.00000 5 15.00000 0.000000 6 0.000000 430.0000 7 0.000000 450.0000 8 0.000000 450.0000 9 0.000000 400.0000

lingo讲座.ppt

lingo讲座.ppt
值法进行计算 2.@pcx(n,x) 自由度为n的χ2分布的累积分布函数。 3.@peb(a,x) 当到达负荷为a,服务系统有x个服务器且允许无穷排队时的
Erlang繁忙概率。 4.@pel(a,x) 当到达负荷为a,服务系统有x个服务器且不允许排队时的Erlang
繁忙概率。 5.@pfd(n,d,x) 自由度为n和d的F分布的累积分布函数。
如果x<0返回-1;否则,返回1
@floor(x)
返回x的整数部分。
@smax(x1,x2,…,xn) 返回x1,x2,…,xn中的最大值
@smin(x1,x2,…,xn) 返回x1,x2,…,xn中的最小值
概率函数 1.@pbn(p,n,x) 二项分布的累积分布函数。当n和(或)x不是整数时,用线性插
复杂变量:集合
Lingo中没有数组,代之以集合及其属性
集是一群相联系的对象,这些对象也称为集的成员。 一个集可能是一系列产品、卡车或雇员。每个集成员 可能有一个或多个与之有关联的特征,我们把这些特征 称为属性。属性值可以预先给定,也可以是未知的, 有待于LINGO求解。例如,产品集中的每个产品可以有 一个价格属性;卡车集中的每辆卡车可以有一个牵引力 属性;雇员集中的每位雇员可以有一个薪水属性,也可 以有一个生日属性等等。
何时会提升速度?
与数据段不同的是:模型中的变量在这里赋值之后,在模型中 几乎一定会被改变!
(2)Lingo中的运算符与内部函数
三类运算符:算术运算符, 逻辑运算符, 关系运算符
优先级 最高
最低
运算符 #NOT# -(负号) ^ */ + -(减法) #EQ# #NE# #GT# #GE# #LT# #LE# #AND# #OR# <(=) = >(=)

lingo软件的使用具体例子

lingo软件的使用具体例子

1
4
0
0
3
2
3
1
0
1
3
2
0
1
3
4
1
2
0
3
5
1
1
1
1
6
0
3
0
1
7
0
0
2
3
需求
50
20
15
约束 满足需求
4 x13 x22 x3x4x550 整数约束:
x22x4x53x620
x3x52x715
xi 为整数
钢管下料问题1
当余料没有用处时,通常以总根数最少为目标
目标2(总根数) M Z 2 i x 1 n x 2 x 3 x 4 x 5 x 6 x 7
客户需求
原料钢管:每根19米
4米50根
6米20根
8米15根
问题1. 如何下料最节省 ? 节省的标准是什么?
问题2. 客户增加需求:
5米10根
由于采用不同切割模式太多,会增加生产和管理成本, 规定切割模式不能超过3种。如何下料最节省?
钢管下料
切割模式
按照客户需要在一根原料钢管上安排切割的一种组合。
4米1根 6米1根
切割多少根原料钢管,最为节省?
两种 标准
1. 原料钢管剩余总余量最小 2. 所用原料钢管总根数最少
决策变量 xi ~按第i 种模式切割的原料钢管根数(i=1,2,…7)
目标1(总余量) M Z 1 3 i x 1 n x 2 3 x 3 3 x 4 x 5 x 6 3 x 7
模式 4米根数 6米根数 8米根数 余料
vk(xk,uk)gk(uk)
资源分配问题

数学建模优化模型与Lingo Lindo软件

数学建模优化模型与Lingo Lindo软件


表二 :5名队员4中泳姿百米平均成绩
队员





蝶泳 66.8 57.2
78
70
67.4
仰泳 75.6
66
67.8
74.2
71
蛙泳
87
66.4 84.6
69.6
83.8
自由泳 58.6
53
59.4
57.2
62.4
线 性 规
·划
模 型
决策变量:引入0-1变量xij 若选择队员 i 参加泳姿 j
例-1 某服务部门一周中每天需要不同数目的
雇员:周一到周四每天至少需要50人,周五
需要80人,周六和周日需要90人。现规定应
聘者需连续工作5天,试确定聘用方案,即周
线
一到周日每天聘用多少人,是5在满足需要的 前况下聘用总人数最少?

优化模型

决策变量:记周一到周日每天聘用的人数分别为X1,

X2,X3,X4,X5,X6 ,X7,这就是问题的决策变量。
的比赛,记 xij=1,否则记 xij=0.这就是问题的决策变量, 共20个。
目标函数:当队员队员 i 入选泳姿 j 的比赛时,
cij xij表示他的成绩,否则cij xij=0。于是接力队的成绩
可以表示为:
45
f
cij xij
j1 i1
约束条件:根据组成接力队的要求, xij 应该满足下面
方案。显然这不是解决问题的最好方法,随着问题
线
规模的变大,穷举法的计算量是无法接受的。

可以用0-1变量表示一个队员是否入选接力队, 从而建立这个问题的0-1规划模型.
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
7+ 3 27 − 5 3 x= ≈ 4.37, y = ≈ 3.06 2 6
由此得N(4.37,3.06), 由此得N(4.37,3.06), M(4.36, 0), 这时的水管 总长度为8.83. 总长度为8.83.
13
5. 利用Lingo求解 利用Lingo求解
利用Lingo建模求解, 利用Lingo建模求解, 设N(x,y),M(m,0), 则只需求x,y,m使NA+NB+NM最小, AB的 则只需求x,y,m使NA+NB+NM最小, 将AB的 坐标代入, 得如下程序. 坐标代入, 得如下程序. MODEL: MIN=@SQRT((x-1)^2+(y-5)^2)+@SQRT((xMIN=@SQRT((x-1)^2+(y-5)^2)+@SQRT((x6)^2+(y-4)^2)+@SQRT((x-m)^2+(y6)^2+(y-4)^2)+@SQRT((x-m)^2+(y-0)^2); END 运行得出的结果与4一致, 表明4 运行得出的结果与4一致, 表明4中的结 果已经是优化到最佳状态了. 果已经是优化到最佳状态了.
18
6
iБайду номын сангаас=1
i
c(i,j)为决策变量, 可编制如下程序: 为决策变量, MODEL: SETS: demand/1..6/:a,b,d; supply/1..2/:x,y,e; link(demand,supply):c; ENDSETS DATA: a=1.25,8.75,0.5,5.75,3,7.25; !需求点的位置; !需求点的位置; b=1.25,0.75,4.75,5,6.5,7.75; d=3,5,4,7,6,11; e=20,20; !供需量及日储量; !供需量及日储量; x,y=5,1,2,7; ENDDATA
1 A B D 1.25 1.25 3 2 8.75 0.75 5 3 0.50 4.75 4 4 5.75 5.00 7 5 3.00 6.50 6 6 7.25 7.75 11
16
1. 料场位置确定时的最少运量
设第i个工地的坐标为( i,b 设第i个工地的坐标为(ai,bi), 水泥用量 为di, 第j个两个临时料场的坐标为(xj,yj), 个两个临时料场的坐标为( j,y 水泥日储量为ej, 从第j个料场运到第i 水泥日储量为ej, 从第j个料场运到第i个工 地的水泥为c 地的水泥为c(i,j), 则有如下数学模型
14
6. 优化效果比较
设计方 案编号 水管总 长度 每次优 化比例 与最长 水管比 1 11.4 2 11.07 3 10.4 5 10.3 4 9.1 6 8.85 7 8.83 0.23%
2.89% 6.05% 0.96% 11.65% 2.75%
2.89% 8.77% 9.65% 20.18% 22.37% 22.54%
5
2. 对称点连线法建模
如果水管 必须分别从 水厂铺设, 水厂铺设, 则 1中的(3)、(4) 中的(3)、 不合要求, 不合要求, 但 (1)、(2)中的 (1)、(2)中的 铺设方法也 不是最佳的. 不是最佳的.
y
A(1,5) B(6,4)
O
W A1 M B1
x
B'(6,4)
图2 对称点法
6
利用光行最速原理求解:如图2 利用光行最速原理求解:如图2, 先作点B关于X轴的对称点B'(6,先作点B关于X轴的对称点B'(6,-4), 再作 线段AB'交 轴于点W, 以点W 线段AB'交X轴于点W, 以点W为自来水 厂的位置, 水管按折线AWB铺设成V 厂的位置, 水管按折线AWB铺设成V型, 所用水管总长为10.30, 该结果优于(1)、 所用水管总长为10.30, 该结果优于(1)、 (2)、(3)方法.但还不如(4)中方法好. (2)、(3)方法.但还不如(4)中方法好. 应该说,许多中学数学教师认为, 2中的模型已经是最优了,未参加过数 学建模培训的大学生基本上都是给出这 个答案. 个答案.
12
由费尔马点性质可知, ANM=∠ 由费尔马点性质可知, ANM=∠BNM= 120度, 120度 从而∠ANP=∠BNQ=30度 从而∠ANP=∠BNQ=30度, 由
PN NQ = cot 30°, = cot 30° AP BQ
列出方程组得 x −1 6− x = 3, = 3, 5− y 4− y 求解得
19
[OBJ] MIN=@SUM(link(i,j): c(i,j)* @SQRT ((x(j)-a(i))^2+(y(j)((x(j)-a(i))^2+(y(j)-b(i))^2)); @FOR(demand(i):[DEMAND_CON] @SUM(supply(j):c(i,j)) =d(i);); !需求约束; !需求约束; @FOR(supply(j):[SUPPLY_CON] @SUM(demand(i):c(i,j)) <=e(j); ); !供应约束; !供应约束; @FOR(supply: @BND(0.5,X,8.75); @BND(0.75,Y,7.75); ); END 运行结果, 最小运量为136.2275. 运行结果, 最小运量为136.2275.
7
3. 利用费尔马点建模
在2中W点建立水厂, 改进水管铺设方 点建立水厂, 法.
8
y A(1,5) B(6,4) N
O
A1
W
图3 费尔马点法
B1
x
9
如图3,取△ABW的费尔马点N, 如图3,取△ABW的费尔马点N, 在 W处建厂, 先铺设总水管至N再分别铺设 处建厂, 先铺设总水管至N 到A、B, 这时的水管总长度为8.85, 比前 这时的水管总长度为8.85, 几种方案都更优. 几种方案都更优. 当然, 也可在W点取水, 而在N 当然, 也可在W点取水, 而在N点建 立水厂进行净化处理后再分别输送到A 立水厂进行净化处理后再分别输送到A、 B, 水管总长度不变. 水管总长度不变.
10
4. 改进费尔马点建模
即便是参加过数学建模培训的大学生, 即便是参加过数学建模培训的大学生,通 常也会认为3中的解就是最优解了. 常也会认为3中的解就是最优解了. 但只要注意 到NW并不与x轴垂直就会想到还可通过改变水 NW并不与x 厂位置进一步优化. 移动W 点使NW 与 轴垂直, 厂位置进一步优化 . 移动 W 点使 NW与 x 轴垂直 , 则水管总长还会变小, 但随着W点的移动, 则水管总长还会变小, 但随着W点的移动,相应 地N又不是新位置的△ABW的费尔马点了, 进一 又不是新位置的△ABW的费尔马点了, 步改变N点的位置, 又改变W点的位置, 步改变N点的位置, 又改变W点的位置, …, 如此 下去, 何时才是最优解呢? 下去, 何时才是最优解呢?
11
y A(1,5) B(6,4) P N Q
x O A1 W M B1
图4 改进费尔马点法
如图4, 设水厂的位置建在点M 如图4, 设水厂的位置建在点M处, 显然M应在 显然M A1与B1之间, 设N(x,y)为△ABM的费尔马点, 则只 A1与B1之间, N(x,y)为△ABM的费尔马点, 有当MN⊥ 轴时, 才可能使AN+BN+MN达到最短, 有当MN⊥X轴时, 才可能使AN+BN+MN达到最短, 于是设点M的坐标为M(x,0).过点N作直线PQ∥ 于是设点M的坐标为M(x,0).过点N作直线PQ∥X轴 交AA1于P、交BB1于Q. AA1于 、交BB1于
20
2. 自动选择新料场的最少运量 自动选择新料场的最少运量
在1中,设工地及水泥用量不变, 料场选在 中,设工地及水泥用量不变, 何处可使总运量最少?能节约多少吨公里数? 模型同1, 但从已知数据中去掉xi及yi而把 模型同1, 但从已知数据中去掉xi及yi而把 c(i,j)及xj,yj均当成决策变量. c(i,j)及xj,yj均当成决策变量. 其程序只需从第一 个程序中去掉x,y=5,1,2,7;并添加@for(supply: 个程序中去掉x,y=5,1,2,7;并添加@for(supply: @free(x);@free(Y);即可. 运行结果, @free(x);@free(Y);即可. 运行结果, 新料场坐标 为(3.25,7.25), (5.65,7.75), 最小运量为85.26604, 最小运量为85.26604, 节约的吨公里数为50.9615. 节约的吨公里数为50.9615.
15
问题2 问题2 选址问题的优化
某公司有6 某公司有6个建筑工地要开工,每个工地的位 置(用平面坐标表示, 距离单位:km)及水泥日用量 用平面坐标表示, 距离单位:km)及水泥日用量 (单位:t)如下表,而在P(5,1)及Q(2,7)处有两个临 单位:t)如下表,而在P(5,1)及Q(2,7)处有两个临 时料场, 日储量各有20t, 如何安排运输, 时料场, 日储量各有20t, 如何安排运输, 可使总的吨 公里数最小? 公里数最小?
利用LINGO软件优化数学模型 软件优化数学模型 利用
邓 磊 西南大学 数学与统计学院 2011年 2011年4月15日 15日
1
提 纲
问题1 问题1 合建水厂问题的优化 问题2 问题2 选址问题的优化
2
问题1 问题1 合建水厂问题的优化
在河边(X轴)有两座城市A 在河边(X轴)有两座城市A、B, 其坐 标分别是A(1,5), 标分别是A(1,5), B(6,4), 现要合建一个自来 水厂, 向它们供水. 水厂, 向它们供水.试设计自来水厂的位置以 及铺设水管的方法, 及铺设水管的方法, 使所铺设的水管总长度 为最短. 为最短. 这个问题实际上也是一个选址问题, 这个问题实际上也是一个选址问题, 通 过对几种选址方案的比较而得出最佳方案. 过对几种选址方案的比较而得出最佳方案.
相关文档
最新文档