数模2 Lingo解决线性规划问题

本文详细介绍了如何使用Lingo进行线性规划问题的解决,包括模型的建立、集合与数据的定义、数学及逻辑函数的使用,并通过装配线平衡模型的案例进行实战演示。
摘要由CSDN通过智能技术生成

一、快速上手

  • LP模型在Lingo中的一个典型输入方式: 

1.以“MODEL:”开。 
2.集合定义部分从(“SETS:”到”ENDSETS”)定义集合及其属性。 
3.给出优化目标约束。 
4.数据定义部分从(“DATA:”到”ENDDATA”)。 
5.以”END”结束。

  • 要求:
  1. 每条语句后必须使用分号“;”结束。
  2. 用MODEL命令来作为输入问题模型的开始,格式为Model:statement (语句)end
  3. 目标函数必须由“min =”或“max =”开头。
  • 简单例子: 
# 线性规划
min=2*x1+3*x2;
x1+x2>=350;
x1>=100;
2*x1+x2<=600;
#非线性规划
Model:    //正规形式 Model.... end
max=98*x1+277*x2-x1*x1-0.3*x1*x2-2*x2*x2;
x1+x2<100;
x1<=2*x2;
@gin(x1); //变量是整数
@gin(x2);
end
#0 1规划
Min=8*x11+13*x12+18*x13+23*x14+10*x21+14*x22+16*x23+27*x24+2*x31+10*x32+21*x33+26*x34+14*x41+22*x42+26*x43+28*x44;

x11+x12+x13+x14=1;
x21+x22+x23+x24=1;
x31+x32+x33+x34=1;
x41+x42+x43+x44=1;

x11+x21+x31+x41=1;
x12+x22+x32+x42=1;
x13+x23+x33+x43=1;
x14+x24+x34+x44=1;
end
int16

二、概念介绍

model:
!集合
sets:
  warehouses/wh1..wh6/: capacity;
  vendors/v1..v8/: demand;
  links(warehouses,vendors): cost, volume;
endsets

!目标函数;
  min=@sum(links: cost*volume);
!需求约束;
  @for(vendor
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值