运筹学02:线性规划

作者:桂。

时间:2018-07-25  05:46:06

链接:https://www.cnblogs.com/mia1004/p/9363813.html 


前言

对于线性规划,自己对于解决实际问题,仅需要做到:

1)如何把实际问题抽象成优化模型;

2)对应的优化模型,转化为何种形式,可以借助工具求解;

3)如何用软件工具求解。

一、线性规划

线性规划一般形式:

max f = min -f,对应MATLAB形式(linprog):

应用举例:

max z = 2x1 + 3x2;

subject to:

1)x1 + 2x2 <= 8;

2)4x1 <= 16;

3)4x2 <= 12;

4)x1,x2 >=0;

对应指令:

clc;clear all;
f  = [-2 -3]';
A = [4 0;0 4];
b = [16 12]';
Lb = [0 0]';
Ub = [Inf, Inf];
[x,fval,exitflag] = linprog(f,A,b,[],[],Lb,Ub);

 可通过输出的exitflag标志位,判断求解的状态(无解、唯一解、多解等等)

当然,也可以调用界面形式:

command -> optimtool:

 二、对偶问题

针对对偶问题:仅需要掌握一点:如何将原问题转化为对偶问题。

原问题:

对偶问题:

即:纵向转横向,小于号对应min,大于号对应max。

 概括为一般形式:

猜你喜欢

转载自www.cnblogs.com/mia1004/p/9363813.html