lingo-多目标规划模型
Lingo解目标规划
B
0.3 0.3 3.2
棉花库存量
300 180
甲绵(kg) 乙绵(kg)
利润(元/km)
若利润指标为1755元,A种棉花要生产650km,问 A,B两种棉纱各应该生产多少?
目标规划模型:
设分别生产A、B两种棉纱x1, x 2km,则: min z p d p2 d
1 1 2
0.5 x1 0.3x 2 300 0.1x1 0.3x 2 180 2.5 x1 3.2 x 2 d1 d1 1755 x1 d 2 d 2 650 x1, x 2, d i 0
整数线性规划的几种类型
纯整数线性规划 混合整数线性规划
0-1型整数线性规划
例:
max z 20x1 10x 2 5 x1 4 x 2 24 2 x1 5 x 2 13 s.t. x1, x 2 0 x1, x 2取整数
不考虑整数约束时求解
Lingo代码:
min=d21; 0.5*x1+0.3*x2<=300; 0.1*x1+0.3*x2<=180; 2.5*x1+3.2*x2+d11-d12=1755; x1+d21-d22=650; d11=0;
例4:已知有三个产地给四个销地供应某种产品,产销 地之间的供需量和单 7 13
Lingo代码
sets: cd/1..3/:a; xd/1..4/:b; links(cd,xd):c,x; px/1..13/:d1,d2; endsets data: a=300 200 400; b=200 100 450 250; c=5 2 6 7 3546 4 5 2 3; enddata min=d2(13); @for(cd(i):@sum(xd(j):x(i,j))=a(i)); @for(xd(j):@sum(cd(i):x(i,j))<=b(j)); x(1,4)+x(2,4)+x(3,4)+d1(4)-d2(4)=250; x(3,1)+d1(5)-d2(5)=100; @for(xd(j):@sum(cd(i):x(i,j))+d1(j+5)-d2(j+5)=b(j)*0.8); @sum(links(i,j):c(i,j)*x(i,j))+d1(10)-d2(10)=2950*1.1; x(2,4)+d1(11)-d2(11)=0; (x(1,1)+x(2,1)+x(3,1))-(200/450)*(x(1,3)+x(2,3)+x(3,3))+d1(12)-d2(12)=0; @sum(links(i,j):c(i,j)*x(i,j))+d1(13)-d2(13)=2950; y=@sum(links(i,j):c(i,j)*x(i,j)); d1(4)=0; d1(5)=0; d1(6)+d1(7)+d1(8)+d1(9)=0; d2(10)=115; d2(11)=0; d1(12)+d2(12)=30; d1(1)+d1(2)+d1(3)+d2(1)+d2(2)+d2(3)=0;
lingo实现 建立选课策略多目标模型
数学模型实验—实验报告9一、实验项目:选课策略模型建立和求解二、实验目的和要求a.根据题目要求建立优化模型b.通过Lingo软件求解模型三、实验内容1.根据教材4.4节内容建立选课策略多目标模型。
目标一:课程数最少;目标二:学分最多,1)课程数最少前提下,学分最多模型.即在选修6门课的条件下使得总学分尽可能的多,这样应在原规划问题中增加约束条件x1+x2+x3+x4+x5+x6+x7+x8+x9=6;2)引入权重将两目标转化为单目标模型一般的,将权重记为λ1,λ2,且令λ1+ λ2=1, 0≤λ1,λ2≤1,则0—1规划模型的新目标为 min Y= λ1Z-λ2W2. 编写lingo程序求解:1)以课程数最少为单目标的优化模型(注意xi为0-1变量)min x1+x2+x3+x4+x5+x6+x7+x8+x9x1+x2+x3+x4+x5>=2;x3+x5+x6+x8+x9>=3;x4+x6+x7+x9>=2;2*x3-x1-x2<=0;x4-x7<=0;2*x5-x1-x2<=0;x6-x7<=0;x8-x5<=0;2*x9-x1-x2<=0;@BIN(X1);@BIN(X2);@BIN(X3);@BIN(X4);@BIN(X5);@BIN(X6);@BIN(X7);@BIN(X8);@BIN(X9);运行结果如下:Global optimal solution found.Objective value: 6.000000Objective bound: 6.000000Infeasibilities: 0.000000Extended solver steps: 0Total solver iterations: 0Variable Value Reduced CostX1 1.000000 1.000000X2 1.000000 1.000000X3 1.000000 1.000000X4 0.000000 1.000000X5 0.000000 1.000000X6 1.000000 1.000000X7 1.000000 1.000000X8 0.000000 1.000000X9 1.000000 1.000000Row Slack or Surplus Dual Price1 6.000000 -1.0000002 1.000000 0.0000003 0.000000 0.0000004 1.000000 0.0000005 0.000000 0.0000006 1.000000 0.0000007 2.000000 0.0000008 0.000000 0.0000009 0.000000 0.00000010 0.000000 0.0000002)求解以上方法建立的多目标模型,并调整权重值,观察模型结果的变化。
LINGO在多目标规划及最大最小化模型中的应用
LINGO 在多目标规划和最大最小化模型中的应用在许多实际问题中,决策者所期望的目标往往不止一个,如电力网络管理部门在制定发电计划时即希望安全系数要大,也希望发电成本要小,这一类问题称为多目标最优化问题或多目标规划问题。
一、多目标规划的常用解法多目标规划的解法通常是根据问题的实际背景和特征,设法将多目标规划转化为单目标规划,从而获得满意解,常用的解法有:1.主要目标法确定一个主要目标,把次要目标作为约束条件并设定适当的界限值。
2.线性加权求和法对每个目标按其重要程度赋适当权重0≥i ω,且1=∑i i ω,然后把)(x f i ii ∑ω作为新的目标函数(其中p i x f i ,,2,1),( =是原来的p 个目标)。
3.指数加权乘积法设p i x f i ,,2,1),( =是原来的p 个目标,令∏==p i a i ix f Z 1)]([其中i a 为指数权重,把Z 作为新的目标函数。
4.理想点法先分别求出p 个单目标规划的最优解*i f ,令∑-=2*))(()(i i f x f x h然后把它作为新的目标函数。
5.分层序列法将所有p 个目标按其重要程度排序,先求出第一个最重要的目标的最优解,然后在保证前一个目标最优解的前提条件下依次求下一个目标的最优解,一直求到最后一个目标为止。
这些方法各有其优点和适用的场合,但并非总是有效,有些方法存在一些不足之处。
例如,线性加权求和法确定权重系数时有一定主观性,权重系数取值不同,结果也就不一样。
线性加权求和法、指数加权乘积法和理想点法通常只能用于两个目标的单位(量纲)相同的情况,如果两个目标是不同的物理量,它们的量纲不相同,数量级相差很大,则将它们相加或比较是不合适的。
二、最大最小化模型在一些实际问题中,决策者所期望的目标是使若干目标函数中最大的一个达到最小(或多个目标函数中最小的一个达到最大)。
例如,城市规划中需确定急救中心的位置,希望该中心到服务区域内所有居民点的距离中的最大值达到最小,称为最大最小化模型,这种确定目标函数的准则称为最大最小化原则,在控制论,逼近论和决策论中也有使用。
lingo求解多目标规划__例题
实验二:目标规划一、实验目的目标规划是由线性规划发展演变而来的,线性规划考虑的是只有一个目标函数的问题,而实际问题中往往需要考虑多个目标函数,这些目标不仅有主次关系,而且有的还相互矛盾。
这些问题用线性规划求解就比较困难,因而提出了目标规划。
熟悉目标规划模型的建立,求解过程及结果分析。
二、目标规划的一般模型设)...2,1(n j x j =是目标规划的决策变量,共有m 个约束是国刚性约束,可能是等式约束,也可能是不等式约束。
设有l 个柔性目标约束,其目标规划约束的偏差是),...,2,1(,l i d d i i =-+。
设有q 个优先级别,分别为q p p p ,...,21。
在同一个优先级k p 中,有不同的权重,分别记为),...,2,1(,l j w w kj kj =-+。
因此目标规划模型的一般数学表达式为:min ∑∑=++--=+=l j j kj j kj q k k d w d w p z 11);(s.t. ,,...2,1,),(1m i b x an j i j ij =≥=≤∑= .,...2,1,0,,,...,2,1,,,...2,1,1l i d d n x o x l i g d d x c i i j i nj i i j ij =≥=≥==-++-=+-∑ 三、实验设备及分组实验在计算机中心机房进行,使用微型电子计算机,每人一机(一组)。
四、实验容及步骤1、打开LINGO ,并利用系统菜单和向导在E 盘创建一个项目。
目录和项目名推荐使用学生自己的学号。
2、以此题为例,建立数学模型,并用说明语句进行说明,增强程序的可读性。
例2.1:某工厂生产Ⅰ、Ⅱ两种产品,需要用到A ,B ,C 三种设备,已知有关数据见下表。
企业的经营目标不仅仅是利润,还需要考虑多个方面:(1) 力求使利润不低于1500元;(2) 考虑到市场需求,Ⅰ、Ⅱ两种产品的产量比应尽量保持1:2;(3) 设备A 为贵重设备,严格禁止超时使用;(4) 设备C 可以适当加班,但要控制;设备B 即要求充分利用,又尽可能不加班。
lingo实现 建立选课策略多目标模型
数学模型实验—实验报告9一、实验项目:选课策略模型建立和求解二、实验目的和要求a.根据题目要求建立优化模型b.通过Lingo软件求解模型三、实验内容1.根据教材4.4节内容建立选课策略多目标模型。
目标一:课程数最少;目标二:学分最多,1)课程数最少前提下,学分最多模型.即在选修6门课的条件下使得总学分尽可能的多,这样应在原规划问题中增加约束条件x1+x2+x3+x4+x5+x6+x7+x8+x9=6;2)引入权重将两目标转化为单目标模型一般的,将权重记为λ1,λ2,且令λ1+ λ2=1, 0≤λ1,λ2≤1,则0—1规划模型的新目标为 min Y= λ1Z-λ2W2. 编写lingo程序求解:1)以课程数最少为单目标的优化模型(注意xi为0-1变量)min x1+x2+x3+x4+x5+x6+x7+x8+x9x1+x2+x3+x4+x5>=2;x3+x5+x6+x8+x9>=3;x4+x6+x7+x9>=2;2*x3-x1-x2<=0;x4-x7<=0;2*x5-x1-x2<=0;x6-x7<=0;x8-x5<=0;2*x9-x1-x2<=0;@BIN(X1);@BIN(X2);@BIN(X3);@BIN(X4);@BIN(X5);@BIN(X6);@BIN(X7);@BIN(X8);@BIN(X9);运行结果如下:Global optimal solution found.Objective value: 6.000000Objective bound: 6.000000Infeasibilities: 0.000000Extended solver steps: 0Total solver iterations: 0Variable Value Reduced CostX1 1.000000 1.000000X2 1.000000 1.000000X3 1.000000 1.000000X4 0.000000 1.000000X5 0.000000 1.000000X6 1.000000 1.000000X7 1.000000 1.000000X8 0.000000 1.000000X9 1.000000 1.000000Row Slack or Surplus Dual Price1 6.000000 -1.0000002 1.000000 0.0000003 0.000000 0.0000004 1.000000 0.0000005 0.000000 0.0000006 1.000000 0.0000007 2.000000 0.0000008 0.000000 0.0000009 0.000000 0.00000010 0.000000 0.0000002)求解以上方法建立的多目标模型,并调整权重值,观察模型结果的变化。
lingo求解多目标规划--例题
实验二:目标规划一、实验目得目标规划就是由线性规划发展演变而来得,线性规划考虑得就是只有一个目标函数得问题,而实际问题中往往需要考虑多个目标函数,这些目标不仅有主次关系,而且有得还相互矛盾。
这些问题用线性规划求解就比较困难,因而提出了目标规划。
熟悉目标规划模型得建立,求解过程及结果分析。
二、目标规划得一般模型设)...2,1(n j x j =就是目标规划得决策变量,共有m 个约束就是国内刚性约束,可能就是等式约束,也可能就是不等式约束。
设有l 个柔性目标约束,其目标规划约束得偏差就是),...,2,1(,l i d d i i =-+。
设有q 个优先级别,分别为q p p p ,...,21。
在同一个优先级k p 中,有不同得权重,分别记为),...,2,1(,l j w w kj kj =-+。
因此目标规划模型得一般数学表达式为: min ∑∑=++--=+=l j j kj j kj q k kd w d w p z 11);(s 、t 、,,...2,1,),(1m i b x a n j i j ij =≥=≤∑= .,...2,1,0,,,...,2,1,,,...2,1,1l i d d n x o x l i g d d x ci i j i n j i i j ij =≥=≥==-++-=+-∑ 三、实验设备及分组实验在计算机中心机房进行,使用微型电子计算机,每人一机(一组)。
四、实验内容及步骤1、打开LINGO ,并利用系统菜单与向导在E 盘创建一个项目。
目录与项目名推荐使用学生自己得学号。
2、以此题为例,建立数学模型,并用说明语句进行说明,增强程序得可读性。
例2、1:某工厂生产Ⅰ、Ⅱ两种产品,需要用到A ,B ,C 三种设备,已知有关数据见下表。
企业得经营目标不仅仅就是利润,还需要考虑多个方面:(1) 力求使利润不低于1500元;(2) 考虑到市场需求,Ⅰ、Ⅱ两种产品得产量比应尽量保持1:2;(3) 设备A 为贵重设备,严格禁止超时使用;(4) 设备C 可以适当加班,但要控制;设备B 即要求充分利用,又尽可能不加班。
数学建模必备LINGO在多目标规划和最大最小化模型中的应用
数学建模必备LINGO 在多目标规划和最大最小化模型中的应用一、多目标规划的常用解法多目标规划的解法通常是根据问题的实际背景和特征,设法将多目标规划转化为单目标规划,从而获得满意解,常用的解法有:1.主要目标法确定一个主要目标,把次要目标作为约束条件并设定适当的界限值。
2.线性加权求和法对每个目标按其重要程度赋适当权重0≥i ω,且1=∑ii ω,然后把)(x f i ii ∑ω作为新的目标函数(其中p i x f i ,,2,1),( =是原来的p 个目标)。
3.指数加权乘积法设p i x f i ,,2,1),( =是原来的p 个目标,令∏==pi a i ix f Z 1)]([其中i a 为指数权重,把Z 作为新的目标函数。
4.理想点法先分别求出p 个单目标规划的最优解*i f ,令∑-=2*))(()(iifx f x h然后把它作为新的目标函数。
5.分层序列法将所有p 个目标按其重要程度排序,先求出第一个最重要的目标的最优解,然后在保证前一个目标最优解的前提条件下依次求下一个目标的最优解,一直求到最后一个目标为止。
这些方法各有其优点和适用的场合,但并非总是有效,有些方法存在一些不足之处。
例如,线性加权求和法确定权重系数时有一定主观性,权重系数取值不同,结果也就不一样。
线性加权求和法、指数加权乘积法和理想点法通常只能用于两个目标的单位(量纲)相同的情况,如果两个目标是不同的物理量,它们的量纲不相同,数量级相差很大,则将它们相加或比较是不合适的。
二、最大最小化模型在一些实际问题中,决策者所期望的目标是使若干目标函数中最大的一个达到最小(或多个目标函数中最小的一个达到最大)。
例如,城市规划中需确定急救中心的位置,希望该中心到服务区域内所有居民点的距离中的最大值达到最小,称为最大最小化模型,这种确定目标函数的准则称为最大最小化原则,在控制论,逼近论和决策论中也有使用。
最大最小化模型的目标函数可写成)}(,),(),(max{min 21X f X f X f p X或)}(,),(),(min{max 21X f X f X f p X式中T n x x x X ),,,(21 是决策变量。
基于LINGO的多目标规划模型求解
基于LINGO的多目标规划模型求解唐家德(楚雄师范学院数学与统计学院,云南楚雄 675000)摘要建立实际问题的多目标规划数学模型并求解是运筹学中常遇到的问题,应用最优化软件LINGO可以快捷准确地求出该类问题的解,本文以实例的方式介绍了多目标规划数学模型的建立、LINGO求解程序的编写,为实际工作者解决这类优化问题提供了一种便捷的途径。
关键词多目标规划;LINGO;偏差变量;优先级.中图分类号 O221.6文献标识码A0引言多目标规划是运筹学的一个重要内容,它研究在一定约束条件下多个目标函数的极值问题,与传统的单目标函数问题不同,在多目标规划问题中,通常不存在能使得所有目标函数同时得到优化的最优解,往往只需要求出满意解.求解多目标规划的方法主要有两类:第一类是化多为少的方法,即把多目标化为较容易求解的单目标问题进行求解,第二类是分级序列法,即把目标按其重要性给出一个优先级,每次在上一优先级目标的最优解集内求下一优先目标的最优解,直到求出共同的最优解,本文主要介绍第二种方法。
下面我们以一个实例来说明多目标规划的特点、采用分级序列法求解的步骤和LINGO程序的编写。
1 一个实例(运输问题模型)要把一种产品从产地运到客户处,发量、需求量及产地到客户的运输费单价如表1所示.表1 运输费用单价表2 线性规划建模求解设从产地i (1,2i =)到客户(1,2,3)j j =的运送量为ij x ,单位运输费用为ij c ,产地i 的发量为i e ,客户j 的需求量为j d ,则可建立如下的线性规划模型: min 2311ijij i j z cx ===⋅∑∑ (1)s.t.21,1,2,3ijj i xd j ===∑ (2)31,1,2iji j xe i =≤=∑ (3)使用LINGO 软件求解,发现无可行解。
无可行解的原因是客户总需求量(8500)大于产地的总发量(7000),客户需求量无法满足。
由于该问题是一个供求不平衡问题,总需求量缺少1500个单位,因此按下列目标来考虑运输方案:第一目标,客户1为重要部门,需求量必须全部满足; 第二目标,满足其他两个客户至少75%的需要量; 第三目标,使运费尽量少;第四目标,从产地2到客户1的运量至少有1000个单位.3 采用分级序列法对多目标规划求解[13]-3.1 确定目标的优先级与权系数 首先确定目标的优先级与权系数,目标的优先分为两个层次,第一个层次是目标分成不同的优先级,在计算多目标规划时,必须先优化高优先级的目标,然后再优化低优先级的目标,通常以12,,,k P P P 表示不同的优先级,并规定k k p p >-1,在上述实例中,有四个目标,按重要性分为第一至第四目标,我们分别记这四个目标的优先级为1234,,,P P P P 。
Lingo目标规划模型
1. 设置偏差变量
用偏差变量(Deviational variables)来表示实际值与目标值 之间的差异,令
d ---- 超出目标的差值,称为正偏差变d量
d ---- 未达到目标的差值,称为负偏差变量 其中d 与 d至 少有一个为0
好劳资关系的重要因素,但对全职售货员要比 兼职售货员加倍优先考虑; P4: 尽量减少加班时间,但对两种售货员区别对 待,优先权因子由他们对利润的贡献而定。
MIN DPLUS2 + DMINUS2
SUBJECT TO
2X1 + 2X2
<= 12
200X1 + 300X2 - DPLUS1 + DMINUS1 = 1500
2X1 - X2 - DPLUS2 + DMINUS2 = 0
4X1
- DPLUS3 + DMINUS3 = 16
5X2 - DPLUS4 + DMINUS4 = 15
min{d };
5x2
d
d
15.
设备C可以适当加班,但要控制, min{d d };
则目标可表示为
2x1
x2
d
d
0.
设备B既要求充分利用,又尽可能 min{d d };
不加班,则目标可表示为
4x1
d
d
16.
从上面的分析可以看到:
•如果希望不等式保持大于等于,则极小化负偏差;
•如果希望不等式保持小于等于,则极小化正偏差; •如果希望保持等式,则同时极小化正、负偏差.
DMINUS1 = 0
END
修改的目标 增加的约束
lingo-多目标规划模型
在生产系统、工程系统、社会经济系统中, 多目标决策问题更是屡见不鲜。比如在炼油厂的 生产计划中,基本的决策问题是如何根据企业的 外部环境与内部条件,制定出具体的作业计划。 该计划应能使企业的各种主要的经济指标达到预 定的目标。这些指标包括:利润、原油量、成本、 能耗等。其他企业一般也有类似的多目标计划决 策问题。 多目标决策问题有两个共同的特点,即各目 标的不可公度性和相互之间的矛盾性。所谓目标 的不可公度性指各目标之间没有统一的量纲,因 此难以作相互比较。
多目标决策问题的案例及特点 我们介绍两个日常生活中常见的决策问题。第 一个是顾客到商店购买衣服。对于顾客而言,购买 衣服就是一个决策问题,顾客本人是决策者,各种 各样的衣服是行动方案集。该决策问题的解就是顾 客最终买到一件合适的衣服(或选择一个满意的方 案)。那么,一件衣服(即一个方案)合适否(满 意否)应该根据几个指标来评价,比如衣服的质量、 价格、大小、式样、颜色等。 因此,顾客购买衣服的问题是多目标决策问题。 又如,公务人员外出办事总要乘某种交通工具。这 也是一个决策问题,决策者是公务员,备选方案是 可利用的交通工具。公务员为了选择合适的交通工 具,需要考虑几个指标,比如:时间、价格、舒适 性、方便程度等。显然这也是一个多目标决策问题。
图5
d 对应于第三优先等级,将 1 =0,d 2 6 作为约束条件,建立
线性规划问题:
min z d 3 10x1 15x2 d1 d1 40 x x d d 1 2 2 2 10 x2 d 3 d 3 7 s.t. d1 0, d 2 6 x , x , d , d 1 2 j j 0, j 1,2,3
由于模型的不准确性和单一目标的片面性,这 种所谓最优的方案并不一定是决策者满意的。自然, 用这种最优方案作为决策者的最终决策具有强迫性 质,往往难以为决策者接受。另一方面,多目标方 法向决策者提供经过仔细选择的备选方案(多种方 案)。这样使得决策者有可能利用自己的知识和经 验对这些方案进行评价和判断,从中找出满意方案 或给出偏好信息以及寻找更多的备选方案。 概括起来,多目标决策方法处理实际决策问题 有三个方面的优点:(1)加强了决策者在决策过程 中的作用;(2)可以得到范围更为广泛的备选决策 方案;(3)决策问题的模型和分析者对问题的直觉 将更加现实。
lingo处理实例(多目标问题)
扩展 的求 解器 (求解 程序) 状态 框
目前为止找到的可行解 的最佳目标函数值
有效步数
目标函数值的界
特殊求解程序当前运行步数: 分枝数(对B-and-B程序); 子问题数(对Global程序); 初始点数(对Multistart程序)
第18页,共167页。
• 运行状态窗口 注:凡是可以从一个约束直接解出变量取值时,这个变量 就不认为是决策变量而是固定变量,不列入统计中;只含 有固定变量的约束也不列入约束统计中。
求解器 (求解 程序) 状态框
解的目标函数值
当前解的状态 : "Global Optimum",
"Local Optimum", "Feasible", "Infeasible“(不可行), "Unbounded“(无 界), "Interrupted“(中断), "Undetermined“(未确定)
第28页,共167页。
集合及其属性
• QUARTERS集合的属性
• DEM
• RP
• OP
• INV•1来自•2•3•4
• QUARTERS集合
第29页,共167页。
集合元素及集合的属性确定的所有变量
菜单命令有快捷键,常用的菜单命令有快捷按钮),图形界
用lingo求解数学规划模型实例
1, 第i个部队分配第j种装备 设 xij 0, 第i个部队不分配第j种装备
目标函数: max aij xij
i 1 j1
9
9
xij 1 i 1 9 s .t . : x 1 ij j1 xij=0或1
( i, j=1,2,…,9)
9
9
EQ1 EQ2 EQ3 EQ4 EQ5 EQ6 EQ7 EQ8 EQ9 AR1 0 0 0 0 0 0 0 0 1 AR2 0 0 0 1 0 0 0 0 0 AR3 0 0 0 0 0 1 0 0 0 AR4 0 0 0 0 1 0 0 0 0 AR5 1 0 0 0 0 0 0 0 0 AR6 0 0 0 0 0 0 1 0 0 AR7 0 0 0 0 0 0 0 1 0 AR8 0 0 1 0 0 0 0 0 0 AR9 0 1 0 0 0 0 0 0 0 装备 部队 1 2 3 4 5 6 7 8 9 A 0.24 0.31 0.31 0.49 0.63 0.45 0.45 0.32 0.33 B 0.42 0.04 0.24 0.06 0.15 0.02 0.07 0.24 0.56 C 0.15 0.60 0.08 0.28 0.31 0.37 0.26 0.58 0.41 D 0.46 0.69 0.14 0.13 0.60 0.14 0.15 0.64 0.13 E 0.34 0.11 0.54 0.65 0.06 0.69 0.18 0.43 0.65 F 0.69 0.24 0.61 0.41 0.41 0.29 0.43 0.45 0.07 G 0.03 0.45 0.37 0.55 0.47 0.61 0.55 0.09 0.22 H 0.57 0.35 0.48 0.25 0.19 0.18 0.66 0.05 0.46 I 0.69 0.27 0.34 0.36 0.31 0.46 0.08 0.20 0.11
多目标规划——精选推荐
多⽬标规划多⽬标规划的模型基础:1. 正负偏差变量即d2+,d2-分别表⽰决策值超过和未达到⽬标值的部分。
且di+,di-均⼤于02. 刚性约束和⽬标约束(柔性⽬标约束具有偏差)多⽬标规划中,刚性约束中保持>=/<=不变。
约束需要变换为柔性约束时,需要把>=/<=改成=(因为已经有了d2+,d2-⽤来表⽰正负偏差),并且追加上(+di-di+)这⾥注意!是+di-,-di+,这是因为需要将⽬标还原回去,使其最接近原来的刚性约束3. 优先因⼦与权系数对于若⼲个⽬标,分出主次和轻重缓急4. ⽬标规划的⽬标函数是所有偏差变量的加权和。
值得注意的是该加权和均取min值。
且每个不同的等级需求中,并不⼀定di+、di-都出现。
具体分析需要具体看题⽬举例如下:题⽬中说设备B既要求充分利⽤,⼜尽可能不加班,那么⽤时间衡量列出的表达式即为:min z=P3(d3- + d3+)之所以这⾥⽤+⽽不是-d3+的原因是:正负偏差不可能同时存在,必有di+di-=0(因为决策值不可能同时⼤于⽬标值⼜⼩于⽬标值),⼜前⾯是min,所以就取+,让di+和di-都是正值。
故引出如下规则:最后给出例题,并给出对应的解法:问题:某企业⽣产甲、⼄两种产品,需要⽤到 A, B,C 三种设备,关于产品的赢利与使⽤设备的⼯时及限制如下表所⽰。
问该企业应如何安排⽣产,才能达到下列⽬标:( 1)⼒求使利润指标不低于 1500 元;( 2)考虑到市场需求,甲、⼄两种产品的产量⽐应尽量保持 1:2;( 3)设备 A 为贵重设备,严格禁⽌超时使⽤;( 4)设备C 可以适当加班,但要控制;设备 B 既要求充分利⽤,⼜尽可能不加班。
在重要性上,设备 B 是设备C 的 3 倍。
建⽴相应的⽬标规划模型并求解。
解:设该企业⽣产甲⼄两种产品的件数分别为 x1, x2 ,相应的⽬标规划模型为:下⾯采⽤序贯解法,⽤lingo求解:⼀级⽬标:model:sets:variable/1..2/:x;!规定变量;s_con_num/1..4/:g,dplus,dminus;!软约束条件个数(g的个数=dplus个数=dminus个数)以及需要的相关参数;s_con(s_con_num,variable):c;!软约束系数;endsetsdata:g=1500 0 16 15;c=200 300 2 -1 4 0 0 5;enddatamin=dminus(1);!第⼀个⽬标函数;!对应min=z中第⼀⼩部分;2*x(1)+2*x(2)<12;!硬约束;@for(s_con_num(i):@sum(variable(j):c(i,j)*x(j))+dminus(i)-dplus(i)=g(i)); !利⽤设置完毕的数据构建软约束的表达式;!软约束表达式;@for(variable:@gin(x));!限制变量为整数;end此时,第⼀⽬标最优值为0,第⼀级偏差为0,下⾯进⾏第⼆步:⼆级⽬标:!求得dminus(1)=0,接着求解第⼆个⽬标;model:sets:variable/1..2/:x;!规定变量;s_con_num/1..4/:g,dplus,dminus;!软约束条件个数以及相关参数;s_con(s_con_num,variable):c;!软约束系数;endsetsdata:g=1500 0 16 15;c=200 300 2 -1 4 0 0 5;enddatamin=dminus(2)+dplus(2);!第⼆个⽬标函数;2*x(1)+2*x(2)<12;!硬约束;@for(s_con_num(i):@sum(variable(j):c(i,j)*x(j))+dminus(i)-dplus(i)=g(i));!软约束表达式;dminus(1)=0;!第⼀⽬标结果;@for(variable:@gin(x));end此时,第⼆⽬标最优值为0,偏差为0,下⾯进⾏第三步:三级⽬标:!求得dminus(2)=0,接着求解第三个⽬标;model:sets:variable/1..2/:x;!规定变量;s_con_num/1..4/:g,dplus,dminus;!软约束条件个数以及相关参数;s_con(s_con_num,variable):c;!软约束系数;endsetsdata:g=1500 0 16 15;c=200 300 2 -1 4 0 0 5;enddatamin=3*dminus(3)+3*dplus(3)+dminus(4);!第三个⽬标函数;2*x(1)+2*x(2)<12;!硬约束;@for(s_con_num(i):@sum(variable(j):c(i,j)*x(j))+dminus(i)-dplus(i)=g(i));!软约束表达式;dminus(1)=0;!第⼀⽬标约束;dminus(2)+dplus(2)=0;!⼆级⽬标约束;@for(variable:@gin(x));end最终求得x1=2,x2=4,dplus(1)=100,最优利润为1600由于上⾯的过程需要编写好⼏个程序,在使⽤时不⽅便,下⾯给出Lingo编写的⼀个通⽤程序,在程序中⽤到数据段未知数据的编程⽅法。
LINGO在多目标规划设计最大最小化模型中应用
LINGO 在多目标规划和最大最小化模型中的应用在许多实际问题中,决策者所期望的目标往往不止一个,如电力网络管理部门在制定发电计划时即希望安全系数要大,也希望发电成本要小,这一类问题称为多目标最优化问题或多目标规划问题。
一、多目标规划的常用解法多目标规划的解法通常是根据问题的实际背景和特征,设法将多目标规划转化为单目标规划,从而获得满意解,常用的解法有:1.主要目标法确定一个主要目标,把次要目标作为约束条件并设定适当的界限值。
2.线性加权求和法对每个目标按其重要程度赋适当权重0≥i ω,且1=∑i i ω,然后把)(x f i ii ∑ω作为新的目标函数(其中p i x f i ,,2,1),( =是原来的p 个目标)。
3.指数加权乘积法设p i x f i ,,2,1),( =是原来的p 个目标,令∏==p i a i ix f Z 1)]([其中i a 为指数权重,把Z 作为新的目标函数。
4.理想点法先分别求出p 个单目标规划的最优解*i f ,令∑-=2*))(()(i i f x f x h然后把它作为新的目标函数。
5.分层序列法将所有p 个目标按其重要程度排序,先求出第一个最重要的目标的最优解,然后在保证前一个目标最优解的前提条件下依次求下一个目标的最优解,一直求到最后一个目标为止。
这些方法各有其优点和适用的场合,但并非总是有效,有些方法存在一些不足之处。
例如,线性加权求和法确定权重系数时有一定主观性,权重系数取值不同,结果也就不一样。
线性加权求和法、指数加权乘积法和理想点法通常只能用于两个目标的单位(量纲)相同的情况,如果两个目标是不同的物理量,它们的量纲不相同,数量级相差很大,则将它们相加或比较是不合适的。
二、最大最小化模型在一些实际问题中,决策者所期望的目标是使若干目标函数中最大的一个达到最小(或多个目标函数中最小的一个达到最大)。
例如,城市规划中需确定急救中心的位置,希望该中心到服务区域内所有居民点的距离中的最大值达到最小,称为最大最小化模型,这种确定目标函数的准则称为最大最小化原则,在控制论,逼近论和决策论中也有使用。
LINGO--目标规划
2.对应于第二优先等级, d1+= 2.对应于第二优先等级,将d1+=0作为约束 对应于第二优先等级 条件,建立线性规划问题: 条件,建立线性规划问题: min z = d 2−
10 x1 + 15 x 2 + d 1− − d 1+ = 40 x1 + x 2 + d 2− − d 2+ = 10 s.t . + d1 = 0 x 1 , x 2 , d − , d + ≥ 0 , j = 1, 2 j j
min=d2_; 10*x1+15*x2+d1_-d1=40; x1+x2+d2_-d2=10; d1=0;
2011年 2011年8月28日9时38分 28日 38分
运行结果
Global optimal solution found. Objective value: Total solver iterations: Variable Value D2_ 6.000000 X1 4.000000 X2 0.000000 D1_ 0.000000 D1 0.000000 D2 0.000000
min z = d
− 3 − 1 + 1
10 x1 + 15 x2 + d − d = 40 − + d d x1 + x2 + − 2 − + 2 = 10 x2 + d 3 − d 3 = 7 s.t . + − d1 = 0, d 2 = 6 − + x1 , x2 , d j , d j ≥ 0, j = 1, 2, 3
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
例
试分析下表所示四个方案的非劣性。
目标函数 方案 X1 X2 X3 X4 F1(x) 10 14 12 8 F2(x) 21 18 16 20 非劣 非劣 劣 劣 方案的性质
解:因 F1 ( x1) 10 8 F1 ( x 4) F ( x1) 21 20 F ( x4) 2 2 故 x1 x 4 。 同理,x2 x3, x1 x2, x1 x3, x2 因此四个方案的优劣性见表。
由于模型的不准确性和单一目标的片面性,这 种所谓最优的方案并不一定是决策者满意的。自然, 用这种最优方案作为决策者的最终决策具有强迫性 质,往往难以为决策者接受。另一方面,多目标方 法向决策者提供经过仔细选择的备选方案(多种方 案)。这样使得决策者有可能利用自己的知识和经 验对这些方案进行评价和判断,从中找出满意方案 或给出偏好信息以及寻找更多的备选方案。 概括起来,多目标决策方法处理实际决策问题 有三个方面的优点:(1)加强了决策者在决策过程 中的作用;(2)可以得到范围更为广泛的备选决策 方案;(3)决策问题的模型和分析者对问题的直觉 将更加现实。
只有一个目标的决策问题称为单目标决策(或 单目标规划)问题,相应的解题方法称为单目标方 法。具有2个或2个以上目标的决策问题称为多目标 决策问题,相应的求解方法称为多目标方法。从方 法的特点来看,单目标方法强调分析者的作用,忽 视决策者的作用。而多目标方法则由决策者探寻 和确定备选的可行方案范围,评价目标的相对价值。 从求解过程来看,单目标方法采用统一的单一度量 单位,向决策者提供唯一的最优方案。
非劣性的意义可解释为:设某一可行x 解 对应的目标函数值为F ( x) ,若不存在其 他可行解既能在F ( x) 的基础上改进某一目 标的值,同时又不至于使任何别的目标的 值变差。在不同的研究方向,非劣性可能 有不同的说法,比如,数学家、经济学家 和统计学家又称之为“有效性”或“最优 性”。下面举一个简单的例子来说明非劣 性。
图3
对应于第二优先等级,将 d1 =0作为约束条件,建立线性 规划问题:
min z d 2
10x1 15x2 d1 d1 40 x1 x2 d 2 d 2 10 s.t. d 1 0 x1 , x2 , d , d j j 0, j 1,2
多目标决策方法
李小飞
多目标决策的基本概念 多目标决策的数学模型及其非劣解 多目标决策建模的应用实例
用LINGO软件求解目标规划问题
1. 求解方法概述
• LINGO(或LINDO)不能直接求解目标规 划问题,但可以通过逐级求解线性规划的 方法INGO求解目标规划问题
二、多目标决策的非劣解的求解方法
为了求得多目标规划问题的非劣解,常常需要将 多目标规划问题转化为单目标规划问题去处理。实现 这种转化,有如下几种建模方法。
效用最优化模型 罚款模型 约束模型 目标规划模型
方法一
效用最优化模型(线性加权法)
思想:规划问题的各个目标函数可以通过一定的方式 进行求和运算。这种方法将一系列的目标函数与效用 函数建立相关关系,各目标之间通过效用函数协调, 使多目标规划问题转化为传统的单目标规划问题:
max Z ( X )
s.t .
( X ) G
是与各目标函数相关的效用函数的和函数。
但困难是要确定合理的权系数,以反映不同目标之间的重要程度。
在用效用函数作为规划目标时,需要确定一组权值 i 来反映原问题中各目标函数在总体目标中的权重,即:
max i i
i 1 k
用LINGO求解,得最优解是 x1 4, x2 0, d1 d1 0 ,
d2 6, d3 7 ,最优值为7。具体LINGO程序及输出信息如下
(参见图6) :
model: min=d3_; 10*x1+15*x2+d1_-d1=40; x1+x2+d2_-d2=10; x2+d3_-d3=7; d1=0; d2_=6; END
图5
d 对应于第三优先等级,将 1 =0,d 2 6 作为约束条件,建立
线性规划问题:
min z d 3 10x1 15x2 d1 d1 40 x x d d 1 2 2 2 10 x2 d 3 d 3 7 s.t. d1 0, d 2 6 x , x , d , d 1 2 j j 0, j 1,2,3
图1
在LINGO工作区中录入以下程序(参见图2) model: min=d1; 10*x1+15*x2+d1_-d1=40; END 其中x1、x2分别代表决策变量x1 、 x2;d1_、d1 d d 分别代表偏差变量 1 、 1 。
图2
在菜单LINGO下点选“Solve”,或按复合键“Ctrl+S” 进行求解。LINGO弹出求解结果报告(参见图3): 详细信息如下
min z P1 d 1 P2 d 2 P3 d 3
10x1 15x 2 d 1 d 1 40 x x d d 1 2 2 2 10 s.t. x2 d 3 d 3 7 x1 , x 2 , d , d j j 0, j 1,2,3
在生产系统、工程系统、社会经济系统中, 多目标决策问题更是屡见不鲜。比如在炼油厂的 生产计划中,基本的决策问题是如何根据企业的 外部环境与内部条件,制定出具体的作业计划。 该计划应能使企业的各种主要的经济指标达到预 定的目标。这些指标包括:利润、原油量、成本、 能耗等。其他企业一般也有类似的多目标计划决 策问题。 多目标决策问题有两个共同的特点,即各目 标的不可公度性和相互之间的矛盾性。所谓目标 的不可公度性指各目标之间没有统一的量纲,因 此难以作相互比较。
如上例的各个方案之间 , ④比①好,⑤比④好, ⑥比②好, ⑦比③好。
图 多目标规划的劣解与非劣解
而对于方案⑤、⑥、 ⑦之间则无法确定优劣, 而且又没有比它们更好 的其他方案,所以它们 就被称为多目标规划问 题的非劣解或有效解, 其余方案都称为劣解。 所有非劣解构成的集合 称为非劣解集。
当目标函数处于冲突状态时,就不会存在使所有目 标函数同时达到最大或最小值的最优解,于是我们只能 寻求非劣解。
T 式中: X [ x1 , x2 , , xn ] 为决策变量向量。
缩写形式:
max(min) Z F ( X )
s.t .
( X ) G
有n个决策变量,k个目标函数,m个约束方程,
则:
Z=F(X) 是k维函数向量, (X)是m维函数向量;
G是m维常数向量;
多目标规划问题的求解不能只追求一个目标的最优化(最大或 最小),而不顾其它目标。 对于上述多目标规划问题,求解就意味着需要做出如下的复合 选择: 每一个目标函数取什么值,原问题可以得到最满意的解决? 每一个决策变量取什么值,原问题可以得到最满意的解决 ?
用LINGO求解,得最优解 d1 d1 =0 , d 2 6,最优值为6。 具体LINGO程序及输出信息如下:LINGO程序为(参见图4):
model: min=d2_; 10*x1+15*x2+d1_-d1=40; x1+x2+d2_-d2=10; d1=0; END
图4
LINGO运算后输出为(参见图5):
解:首先对应于第一优先等级,建立线性规 划问题:
min z d1 10x1 15x2 d1 d1 40 s.t. x , x , d , d 1 2 1 1 0
用LINGO求解,得最优解=0,最优值为0。 具体求解过程如下:
启动LINGO软件,窗口如图1所示。
x4 。
非劣性可以用下图说明。
在图1中,max(f1, f2) .就
方案①和②来说,①的
f2 目标值比②大,但其目 标值 f1 比②小,因此无
法确定这两个方案的优
与劣。 在各个方案之间, 显然:④比①好,⑤比
图 多目标规划的劣解与非劣解
④好, ⑥比②好, ⑦比
③好……。
第二部分 多目标决策的数学模型及其非劣解
目标之间的矛盾性是指,如果改进某 一目标的值,可能会使另一个或一些目标 变差。正因为各目标的不可公度性和相互 之间的矛盾性,多目标决策问题不能简单 的作为单目标问题来处理。必须深入研究 其特征,特别是解的性质。单目标决策一 般有最优解,且往往是唯一的,有时可能 存在无限多个解。但是这里的“最优”往 往带有片面性,不能全而准确的反映决策 者的偏好信息。多目标决策问题不存在所 谓的“最优”解,只存在满意解。满意解 指决策者对于有关的所有目标值都认为满 意。
图6
LINGO运算后输出为:(参见图7)
图7
•
d 6 , d d d x 4 , x 0 , 因此, 1 3 7 2 1 1 =0, 2
就
是目标规划的满意解。
第一部分
多目标决策的基本概况
本章将从多目标决策(也称多目标规划)方法 的作用出发,通过分析简单的多目标决策问题的几 个案例,阐述多目标决策的基本概念。任何决策问 题的解决主要依赖于所谓的决策者和分析者。决策 者一般指有权挑选行动方案,并能够从中选择满意 方案作为最终决策的人员。政府官员、企业行政管 理人员均为某类问题的决策者。 决策者的作用是:评价和判断各目标的相对重 要性;根据目标的当前水平值以及主观的判断和经 验,提供关于决策方案的偏好信息。分析者一般指 能够提供可行方案和各目标之间的折中信息的人或 机器,比如经济学家、工程师、系统分析员、社会 学家、计算机等。
一、多目标决策的数学模型
(一)任何多目标决策问题,都由两个基本部分组成: (1)两个以上的目标函数; (2)若干个约束条件。