优化建模与LINGO-2016
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
优化建模
优化模型的简单分类和求解难度
优化
连续优化
整数规划
线性规划
二次规划
非线性规划
问题求解的难度增加
优化建模
2. 优化模型实例
例2.1 线性规划模型(LP) 目标函数 Max z 72x1 64x2 约束条件
x1 x2 50
12x1 8x2 480
3x1 100 x1 , x2 0
优化建模
0-1规划模型
•目标函数
•约束条件
min Z cij xij
j 1 i 1
4
5
x
j 1
5 i 1
4
ij
1, i 1,,5
1, j 1,,4
x
ij
xij=1 或 xij=0
优化建模
•模型求解 •输入LINGO求解
Model: MIN=66.8*x11+75.6*x12+87*x13+58.6*x14 +… … +67.4*x51+71 * x52+83.8*x53+62.4*x54; x11+x12+x13+x14 <=1; …… x41+x42+x43+x44 <=1; x11+x21+x31+x41+x51 =1; …… x14+x24+x34+x44+x54 =1; @BIN(x11);@BIN(x12);… @BIN(x54); END
约束优化
线性规划 linprog 二次规划 quadprog
非线性 非线性 方程 ( 组 ) 最小二乘 fzero fsolve lsqnonlin lsqcurvefit
暂缺
非线性规划 fmincon fminimax fgoalattain fseminf
约束线性 最小二乘 lsqnonneg lsqlin
• (4)可以给语句加上标号,例如 [OBJ]MAX=200*X1+300*X2;
优化建模
LINGO的语法规定:
• (5)以惊叹号“!”开头,以分号“;”结束的语
句是注释语句; • (6)如果对变量的取值范围没有作特殊说明,则默 认所有决策变量都非负; • (7)LINGO模型以语句“MODEL:”开头,以 “END”结束,对于比较简单的模型,这两个语句可 以省略。
优化建模
优化建模与计算
优化建模
参考书 《优化建模与LINDO/LINGO软件》
谢金星, 薛毅编著, 清华大学出版社, 2005年7月第1版.
http://faculty.math.tsinghua.edu.cn/~jxie/lindo
优化建模
内容提要
1. 优化模型的基本概念 2. 优化问题的建模实例 3. LINDO/LINGO 软件简介
优化建模
LINGO的语法规定:
• (1)求目标函数的最大值或最小值分别用 MAX=…或MIN=…来表示;
• (2)每个语句必须以分号“;”结束,每行 可以有许多语句,语句可以跨行; • (3)变量名称必须以字母(A~Z)开头,由字母 、数字(0~9)和下划线所组成,长度不超过32 个字符,不区分大小写;
如:尽量少使用绝对值、符号函数、多个变量求 最大/最小值、四舍五入、取整函数等 3、尽量使用线性模型,减少非线性约束和非线性变 量的个数 (如x/y <5 改为x<5y)
4、合理设定变量上下界,尽可能给出变量初始值
5、模型中使用的参数数量级要适当 (如小于103)
优化建模
需要掌握的几个重要方面
1、LINDO(不必再学)
优化建模
1. 优化模型的基本概念
优化建模
优化模型和算法的重要意义
最优化: 在一定条件下,寻求使目标最大(小)的决策 最优化是工程技术、经济管理、科学研究、社 会生活中经常遇到的问题, 如: 结构设计 资源分配 生产计划 运输方案
解决优化问题的手段
• 经验积累,主观判断
• 作试验,比优劣 • 建立数学模型,求解最优策略
优化建模
局部最优解与整体最优解
f( x)
* x 1
o x2
x
• 局部最优解 (Local Optimal Solution, 如 x1 ) • 整体最优解 (Global Optimal Solution, 如 x2 )
优化建模
优化模型的 min f ( x) 简单分类 s.t. hi ( x) 0, i 1,...,m
2、LINGO:
掌握集合(SETS)的应用; 正确阅读求解报告;(尤其要掌握敏感性分析) 正确理解求解状态窗口; 掌握与外部文件的基本接口方法 学会设置基本的求解选项(OPTIONS) ;
优化建模
2. 优化模型实例
例2.1 线性规划模型(LP) •LINGO
目标函数 Max z 72x1 64x2 model: max = 72*x1+64*x2; x1 x2 50 约束条件 [milk] x1 + x2<50; 12x1 8x2 480 [time] 12*x1+8*x2<480; 3x1 100 [cpct] 3*x1<100; x1 , x2 0 end
连续优化
离散优化
从其他角度分类
• 应用广泛:生产和运作管理、经济与金融、图论和网 络优化、目标规划问题、对策论、排队论、存储论, 以及更加综合、更加复杂的决策问题等 • 实际问题规模往往较大,用软件求解比较方便
优化建模
3. LINDO/LINGO软件简介
优化建模
常用优化软件
1. LINDO/LINGO软件 2. MATLAB优化工具箱 / Mathematic的优化功能
优化建模
线性规划模型的解的几种情况
线性规划问题
有可行解(Feasible)
无
可 行 解 (Infeasible)
有 最 优 解 ( Optimal )
无
最 优 (Unbounded)
解
优化建模
二次规划模型(QP)-例1.2
目标
max z ( x1 , x2 ) 98 x1 + 277 x2 - x12 - 0.3 x1 x2 - 2x22
3. SAS(统计分析)软件的优化功能
4. EXCEL软件的优化功能 5. 其他(如CPLEX等)
优化建模
MATLAB优化工具箱能求解的优化模型
优化工具箱3.0 (MATLAB 7.0 R14) 连续优化 无约束优化 非线性 极小 fminunc 非光滑(不可 微)优化 fminsearch 全局 优化 离散优化 纯0-1规划 bintprog 一般IP(暂缺)
优化建模
优化问题的一般形式
优化问题三要素:决策变量;目标函数;约束条件 目标函数 约 束 条 件
min s.t.
决策变量
f ( x) hi ( x) 0, i 1,...,m g j ( x ) 0, j 1,...,l xD
n
• 无约束优化(没有约束)与约束优化(有约束) • 可行解(只满足约束)与最优解(取到最优值)
优化建模
•模型求解 •应用LINGO集合编程求解
MODEL: sets: person/1..5/; position/1..4/; link(person,position): c, x; endsets data: c= 66.8, 75.6, 87, 58.6, 57.2, 66, 66.4, 53, 78, 67.8, 84.6, 59.4, 70, 74.2, 69.6, 57.2, 67.4, 71, 83.8, 62.4; enddata
LINDO: Linear INteractive and Discrete Optimizer (V6.1)
LINDO API: LINDO Application Programming Interface (V4.1)
LINGO: Linear INteractive General Optimizer What’s Best!: (SpreadSheet e.g. EXCEL) (V10.0) (V8.0)
演示(试用)版、高级版、超级版、工业版、扩展版… (求解问题规模和选件不同)
优化建模
LINDO/LINGO软件能求解的模型
优化
连续优化
整数规划
线性规划
二次规划
LINDO
非线性规划
LINGO
优化建模
建模时需要注意的几个基本问题
1、尽量使用实数优化,减少整数约束和整数变量
2、尽量使用光滑优化,减少非光滑约束的个数
x1 , x2
约束
x1 + x2 ≤100 x1 ≤ 2 x2 x1 , x2 ≥ 0
二次规划模型(QP)
Hale Waihona Puke Baidu
若还要求产量为整数,则是整数二次规划模型(IQP)
优化建模
非线性规划模型(NLP)-例1.3:
min
j 1 i 1 2
2
6
cij [( x j ai ) 2 ( y j bi ) 2 ]1 / 2
上下界约束 fminbnd fmincon lsqnonlin lsqcurvefit
优化建模
LINDO 公司软件产品简要介绍
美国芝加哥(Chicago)大学的Linus Schrage教授于1980 年前后开发, 后来成立 LINDO系统公司(LINDO Systems Inc.), 网址:http://www.lindo.com
g j ( x ) 0, j 1,...,l
数学规划 连 续 优 化 离 散 优 化
xD
n
• 线性规划(LP) 目标和约束均为线性函数 • 非线性规划(NLP) 目标或约束中存在非线性函数 二次规划(QP) 目标为二次函数、约束为线性 • 整数规划(IP) 决策变量(全部或部分)为整数 整数线性规划(ILP),整数非线性规划(INLP) 纯整数规划(PIP), 混合整数规划(MIP) 一般整数规划,0-1(整数)规划
s.t.
c
j 1 6 i 1
决策变量: ci j,(xj,yj)~16维
ij d i ,
i 1,...,6
c
ij e j ,
j 1,2
非线性规划模型
(NLP)
优化建模
更多的优化问题
无 约 束 优 化 线 性 规 划 非 线 性 规 划 整 数 规 划 组 合 优 化 不 确 定 规 划 多 目 标 规 划 目 标 规 划 网 络 优 化 动 态 规 划
min=@sum(link: c*x); @for(person(i): @sum(position(j):x(i,j))<=1;); @for(position(i): @sum(person(j):x(j,i))=1;); @for(link: @bin(x)); END