当前位置:文档之家› 第5讲 整数规划、非线性规划、多目标规划1

第5讲 整数规划、非线性规划、多目标规划1

第5讲整数规划、非线性规划、多目标规划一、整数规划1、概念数学规划中的变量(部分或全部)限制为整数时,称为整数规划。

若在线性规划模型中,变量限制为整数,则称为整数线性规划。

整数规划的分类:如不加特殊说明,一般指整数线性规划。

对于整数线性规划模型大致可分为两类:1)变量全限制为整数时,称纯(完全)整数规划。

2)变量部分限制为整数的,称混合整数规划。

2、整数规划特点(i)原线性规划有最优解,当自变量限制为整数后,其整数规划解出现下述情况:①原线性规划最优解全是整数,则整数规划最优解与线性规划最优解一致。

②整数规划无可行解。

例1原线性规划为21min x x z +=s.t.⎩⎨⎧≥≥=+0,05422121x x x x 其最优实数解为:01=x ,452=x ,45min =z ③有可行解(当然就存在最优解),但最优值变差。

例2原线性规划为21min x x Z +=s.t.⎩⎨⎧≥≥=+0,06422121x x x x 其最优实数解为:01=x ,232=x ,23min =z 若限制整数得:11=x ,12=x ,2min =z 。

(ii )整数规划最优解不能按照实数最优解简单取整而获得。

3、0-1整数规划0−1型整数规划是整数规划中的特殊情形,它的变量j x 仅取值0或1。

这时j x 称为0−1变量,或称二进制变量。

j x 仅取值0或1这个条件可由下述约束条件:10≤≤j x ,且为整数所代替,是和一般整数规划的约束条件形式一致的。

在实际问题中,如果引入0−1变量,就可以把有各种情况需要分别讨论的线性规划问题统一在一个问题中讨论了。

引入10-变量的实际问题:(1)投资场所的选定——相互排斥的计划例3某公司拟在市东、西、南三区建立门市部。

拟议中有7个位置(点))7,,2,1( =i A i 可供选择。

规定在东区:由321,,A A A 三个点中至多选两个;在西区:由54,A A 两个点中至少选一个;在南区:由76,A A 两个点中至少选一个。

如选用i A 点,设备投资估计为i b 元,每年可获利润估计为i c 元,但投资总额不能超过B 元。

问应选择哪几个点可使年利润为最大?模型建立:先引入10-变量)7,,2,1( =i x i 令⎩⎨⎧=.0,1点没被选中当点被选中当,,i A i Ai x 7,,2,1 =i 。

于是问题可列写成:ii i x c z ∑==71Max s.t.⎪⎪⎪⎪⎩⎪⎪⎪⎪⎨⎧==≥+≥+≤++≤∑=)7,,2,1(10112765432171i x x x x x x x x Bx b i i i i 或(2)相互排斥的约束条件①有两个相互排斥的约束条件244521≤+x x 或453721≤+x x 。

为了统一在一个问题中,引入10-变量y ,则上述约束条件可改写为:⎪⎩⎪⎨⎧=-+≤++≤+10)1(453724452121或y My x x yM x x 其中M 是充分大的数。

②约束条件01=x 或8005001≤≤x 可改写为⎩⎨⎧=≤≤108005001或y y x y ③如果有m 个互相排斥的约束条件:mi b x a x a i n in i ,,2,111 =≤++为了保证这m 个约束条件只有一个起作用,我们引入m 个10-变量),,2,1(m i y i =和一个充分大的常数M ,而下面这一组1+m 个约束条件m i My b x a x a i i n in i ,,2,111 =+≤++(1)11-=++m y y m (2)就合于上述的要求。

这是因为,由于(2),m 个i y 中只有一个能取0值,设0*=iy ,代入(1),就只有*i i =的约束条件起作用,而别的式子都是多余的。

(3)最佳指派问题将不同的任务分派给若干人去完成,由于任务有难易,人员素质有高低,因此各人去完成不同的任务的效率就有差异。

我们的问题是:应分派何人去完成哪种任务使得总效率最高(或所花费的时间最少,或所需的费用最低)?这一类问题称为指派问题或分配问题。

指派问题的一般提法是:用最佳方法按照一对一的原则把“任务”指派给“人”。

具体地就是:设有n 个人A 1,A 2,…,A n ,被分派去完成n 项工作B 1,B 2,…,B n ,要求每项工作需且仅需一个人去完成,每个人需完成且仅需完成一项工作。

已知i A 完成j B 工作的效率(如工时、成本或价值等)为ij c 。

问应如何指派,才能使总的工作效率最好?指派问题本质上是0—1规划问题。

设ij x 表示i A 完成j B 工作,并令⎪⎩⎪⎨⎧=工作去完成当不指派工作去完成当指派j i j i ij B A B A x 0 1,则指派模型的标准形式为⎪⎪⎪⎩⎪⎪⎪⎨⎧=∈====≥=∑∑∑∑====), ,2 ,1,( }1 ,0{ ), ,2 ,1( 1), ,2 ,1( 1s.t.)0( min 1111n j i x n j x n i x c x c z ij n i ij nj ij ij n i n j ij ij由c ij组成的方阵C=(c ij)n n称为效率矩阵。

只要效率矩阵C给定,指派问题也就相应确定。

若0x为指派模型的最优解,则n阶方阵X=(0ij x)称为指派模型的最优解方阵。

事实上,方阵X为一置ij换方阵,即该矩阵中的每一行、每一列只有一个“1”。

当人数和任务数不相等的时候,此时需要考虑一些其他的条件,应对具体问题进行分析讨论问题:全国大学生数学建模竞赛2005年B题,下载网址:/html_cn/node/ce966e3cd21e07274a27819807e51806.html二、非线性规划1、概念如果目标函数或约束条件中包含非线性函数,就称这种规划问题为非线性规划问题。

一般说来,解非线性规划要比解线性规划问题困难得多。

而且,也不象线性规划有单纯形法这一通用方法,非线性规划目前还没有适于各种问题的一般算法,各个方法都有自己特定的适用范围。

在一组等式或不等式的约束下,求一个函数的最大值(或最小值)问题,其中目标函数或约束条件中至少有一个非线性函数,这类问题称之为非线性规划问题,简记为(NP)。

可概括为一般形式)(min x f q j x h j ,,1,0)(s.t. =≤(NP)pi x g i ,,1,0)( ==其中T n x x x x ],,,[21 =称为模型(NP)的决策变量,f 称为目标函数,i g ),,1(p i =和),,1(q j h j =称为约束函数。

另外,0)(=x g i ),,1(p i =称为等式约束,0)(≤x h j ),,1(q j =称为不等式约束。

对于一个实际问题,在把它归结成非线性规划问题时,一般要注意如下几点:(i)确定供选方案:首先要收集同问题有关的资料和数据,在全面熟悉问题的基础上,确认什么是问题的可供选择的方案,并用一组变量来表示它们。

(ii)提出追求目标:经过资料分析,根据实际需要和可能,提出要追求极小化或极大化的目标。

并且,运用各种科学和技术原理,把它表示成数学关系式。

(iii)给出价值标准:在提出要追求的目标之后,要确立所考虑目标的“好”或“坏”的价值标准,并用某种数量形式来描述它。

(iv)寻求限制条件:由于所追求的目标一般都要在一定的条件下取得极小化或极大化效果,因此还需要寻找出问题的所有限制条件,这些条件通常用变量之间的一些不等式或等式来表示。

注意:线性规划与非线性规划的区别如果线性规划的最优解存在,其最优解只能在其可行域的边界上达到(特别是可行域的顶点上达到);而非线性规划的最优解(如果最优解存在)则可能在其可行域的任意一点达到。

2、凸函数、凸规划设)(x f 为定义在n 维欧氏空间)(n E 中某个凸集R 上的函数,若对任何实数)10(<<αα以及R 中的任意两点)1(x 和)2(x ,恒有)()1()())1(()2()1()2()1(x f x f x x f αααα-+≤-+则称)(x f 为定义在R 上的凸函数。

若对每一个)10(<<αα和R x x ∈≠)2()1(恒有)()1()())1(()2()1()2()1(x f x f x x f αααα-+<-+则称)(x f 为定义在R 上的严格凸函数。

考虑非线性规划⎪⎩⎪⎨⎧=≤=∈},,2,1,0)(|{)( min l j x g x R x f j R x 假定其中)(x f 为凸函数,),,2,1)((l j x g j =为凸函数,这样的非线性规划称为凸规划。

可以证明,凸规划的可行域为凸集,其局部最优解即为全局最优解,而且其最优解的集合形成一个凸集。

当凸规划的目标函数)(x f 为严格凸函数时,其最优解必定唯一(假定最优解存在)。

由此可见,凸规划是一类比较简单而又具有重要理论意义的非线性规划。

3、二次规划若某非线性规划的目标函数为自变量x 的二次函数,约束条件又全是线性的,就称这种规划为二次规划。

Matlab 中二次规划的数学模型可表述如下:bAx x f Hx x T T ≤+ s.t. 21min 这里H 是实对称矩阵,b f ,是列向量,A 是相应维数的矩阵。

例4原油采购与加工某公司用两种原油A 、B 混合加工成两种汽油甲、乙。

甲、乙两种汽油含原油A 的最低比例分别为50%和60%,每吨售价分别为4800元和5600元。

该公司现有原油A 和B 的库存量分别为500吨和1000吨,还可以从市场上买到不超过1500吨的原油A 。

原油A 的市场价为:购买量不超过500吨时的单价为10000元/吨;购买量超过500吨但不超过1000吨时,超过500吨部分的单价为8000元/吨;购买量超过1000吨时,超过1000吨部分的单价为6000元/吨。

该公司应如何安排原有的采购和加工?问题分析安排原油采购、加工的目标只能是利润最大,题目中给出的是两种汽油的售价和原油A 的采购价,利润为销售汽油的收入与购买原油A 的支出之差。

难点在于原油A 的采购价与购买量的关系比较复杂,是分段函数关系,能否以及如何用线性规划、整数规划模型加以处理是关键所在。

模型建立设原油A 的购买量为x ,根据题目所给数据,采购的支出()x c 可表为如下的分段线性函数(以下价格以千元/t 为单位):()⎪⎩⎪⎨⎧≤≤+≤≤+≤≤=1500100063000100050081000500010x x x x x x x c设原油A 用于生产甲、乙两种汽油的数量分别为11x 和12x ,原油B 用于生产甲、乙两种汽油的数量分别为21x 和22x ,则总的收入为()()221221116.58.4x x x x +++,于是目标函数()()()x c x x x x z -+++=221221116.58.4max 约束条件包括加工两种汽油用的原油A 、原油B 库存量的限制,和原油A 购买量的限制,以及两种汽油含原油A 的比例限制,分别表示为:xx x +≤+500121110002221≤+x x 1500≤x 5.0211111≥+x x x 6.0221212≥+x x x 0,,,,22211211≥x x x x x 注:求解时考虑转化为线性规划进行求解三、多目标规划-----多目标决策的一部分(主要介绍概念和处理方法和98年的A题)但在实际工作中所遇到的的决策分析问题,却常常要考虑多个目标。

相关主题