0-1型整数线性规划模型理论
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
0-1型整数线性规划模型理论
(1) 0-1型整数线性规划
0-1型整数线性规划是一类特殊的整数规划,它的变量仅取值0或1.其模型如下:
T min ..01(1,2,
,)j f s t x j n =⎧⎨=⎩c x
Ax =b 取或 其中()T 12,,,,n c c c =c ()T 12,,,,n x x x =x (),ij m n
a ⨯=A ()T 12,,,.m
b 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 n
i i Z x ==∑
()()()
123453568946791234712567
5812923
2200..20
0020
01(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 =
1
1
1
1
1
1
f =
20