0-1线性规划模型
- 格式:ppt
- 大小:446.50 KB
- 文档页数:12
0-1型整数线性规划模型理论(1) 0-1型整数线性规划0-1型整数线性规划是一类特殊的整数规划,它的变量仅取值0或1.其模型如下:T min ..01(1,2,,)j f s t x j n =⎧⎨=⎩c xAx =b 取或 其中()T 12,,,,n c c c =c ()T 12,,,,n x x x =x (),ij m na ⨯=A ()T 12,,,.mb b b =b 称此时的决策变量为0-1变量,或称二进制变量.在实际问题中,如果引进0-1变量,就可以把各种需要分别讨论的线性(或非线性)规划问题统一在一个问题中讨论了.(2) 求解0-1型整数线性规划的分支界定法Matlab 指令x = bintprog(f,A,b): 求解0-1型整数线性规划,用法类似于linprog.x = bintprog(f,A,b,Aeq,beq): 求解下述线性规划问题:T min ,z =f x ≤Ax b ,≤Ax b ,⋅≤Aeq x beq ,x 分量取0或1.x = bintprog(f,A,b,Aeq,beq,x0): 指迭代初值x0,如果没有不等式约束,可用[]代替A,b 表示默认,如果没有等式约束,可用[]代替Aeq 和beq 表示默认;用[x,fval]代替上述各命令行中左边的x,则可得到最优解处的函数值fval.例如:求解0-1型整数线性规划模型:1min ni i Z x ==∑()()()12345356894679123471256758129232200..20002001(1,2,,9)j x x x x x x x x x x x x x x x x x x x s t x x x x x x x x x x x j ⎧-++++≤-⎪-++++≤-⎪⎪-+++≤-⎪⎪--+≤⎪-≤⎪⎨--+≤⎪⎪-≤⎪-+≤⎪⎪--+≤⎪⎪==⎩或用Matlab 软件编程可解得1236791x x x x x x ======,其他变量为0,共六门课,满足所给条件, Matlab程序代码如下:c = ones(1,9);a =[-1,-1,-1,-1,-1,0,0,0,0;0,0,-1,0,-1,-1,0,-1,-1;0,0,0,-1,0,-1,-1,0,-1;-1,-1,2,0,0,0,0,0,0;0,0,0,1,0,0,-1,0, 0;-1,-1,0,0,2,0,0,0,0;0,0,0,0,0,1,-1,0,0;0,0,0,0,-1,0,0,1,0;-1,-1,0,0,0,0,0,0,2];b = [-2;-3;-2;0;0;0;0;0;0];A = [5 4 4 3 4 3 2 2 3];x = bintprog(c,a,b)f = A*x运行结果:Optimization terminated.x =111111f =20。
5.4 0—1型整数规划模型1. 0—1型整数规划模型概述整数规划指的是决策变量为非负整数值的一类线性规划,在实际问题的应用中,整数规划模型对应着大量的生产计划或活动安排等决策问题,整数规划的解法主要有分枝定界解法及割平面解法(这里不作介绍,感兴趣的读者可参考相关书籍)。
在整数规划问题中,0—1型整数规划则是其中较为特殊的一类情况,它要求决策变量的取值仅为0或1,在实际问题的讨论中,0—1型整数规划模型也对应着大量的最优决策的活动与安排讨论,我们将列举一些模型范例,以说明这个事实。
0—1型整数规划的的数学模型为:目标函数 n n x c x c x c z Min Max +++= 2211)(约束条件为:⎪⎪⎩⎪⎪⎨⎧==≥≤++=≥≤++=≥≤++1| 0 ) ,() ,() ,(22112222212111212111n m n mn m m n n n n x x x b x a x a x a b x a x a x a b x a x a x a , , ,21这里,0 | 1表示0或1。
2. 0—1型整数规划模型的解法0—1型整数规划模型的解法一般为穷举法或隐枚举法,穷举法指的是对决策变量nx x x , , ,21 的每一个0或1值,均比较其目标函数值的大小,以从中求出最优解。
这种方法一般适用于决策变量个数n较小的情况,当n 较大时,由于n 个0、1的可能组合数为n2,故此时即便用计算机进行穷举来求最优解,也几乎是不可能的。
隐枚举法是增加了过滤条件的一类穷举法,该法虽能减少运算次数,但有的问题并不使用。
此时,就只能用穷举法了。
3. 应用实例例1 工程上马的决策问题 1)问题的提出某部门三年内有四项工程可以考虑上马,每项工程的期望收益和年度费用(千元)如下表所示:假定每一项已选定的工程要在三年内完成,是确定应该上马哪些工程,方能使该部门可能的期望收益最大。
2)模型分析与变量的假设这是工程上马的决策问题,对任一给定的工程而言,它只有两种可能,要么上马,要么不上马,这两种情况分别对应二进制数中的1、0,大凡这样的实际背景所对应的工程问题,大都可考虑用0—1型整数规划模型建立其相应的模型。
0-1整数规划整数规划是线性规划的一个特殊情况,其决策变量是整数。
在0-1整数规划中,决策变量只能取0或1的整数值。
0-1整数规划是一类NP-hard问题,通常以优化问题的形式出现。
0-1整数规划在实际生活中有广泛的应用。
它可以用于资源分配、生产计划、物流运输等方面。
下面将通过一个具体的例子来说明0-1整数规划的应用:假设某公司生产两种产品A和B,分别需要使用两种原材料X和Y。
每个单位的产品A需要消耗1个单位的原材料X和3个单位的原材料Y;每个单位的产品B需要消耗2个单位的原材料X和2个单位的原材料Y。
该公司每天可以获得100个单位的原材料X和150个单位的原材料Y。
假设产品A的利润为5元,产品B的利润为8元。
问如何安排生产,使得利润最大化。
首先,我们定义决策变量:设产品A的生产数量为x,产品B 的生产数量为y,决策变量为整数。
则可以列出目标函数和约束条件。
目标函数:maximize 5x + 8y约束条件:1x + 2y ≤ 100 (原材料X的限制)3x + 2y ≤ 150 (原材料Y的限制)x,y为0或1的整数根据上述目标函数和约束条件,可以构建0-1整数规划模型。
然后,可以使用相应的算法求解该模型,确定最优的生产方案,使得利润最大化。
对于这个例子来说,通过计算可以得到最优解为x=25,y=37,即生产25个单位的产品A和37个单位的产品B时,利润最大,为325元。
总结起来,0-1整数规划是一种重要的优化工具,可以应用于各种实际问题中。
通过明确决策变量的整数限制,可以获得最优解,实现最大化或最小化的目标。
在实际应用中,需要结合具体问题的特点和约束条件,构建相应的数学模型,并运用适当的算法求解。
这样可以有效地解决实际问题,提高效率和经济效益。