当前位置:网站首页>王树尧老师运筹学课程笔记 05 线性规划与单纯形法(概念、建模、标准型)
王树尧老师运筹学课程笔记 05 线性规划与单纯形法(概念、建模、标准型)
2022-07-29 05:27:00 【3077491278】
第5讲 线性规划与单纯形法(概念、建模、标准型)
线性规划问题及其数学模型
线性规划问题
定义:在线性约束条件下,寻找线性目标函数的最优化问题。
线性规划问题的共同特征
- 每一个问题都用一组决策变量 ( x 1 , x 2 , ⋯ , x n ) \left(x_{1}, x_{2}, \cdots, x_{n}\right) (x1,x2,⋯,xn)表示某一方案,这组决策变量的值就代表一个具体方案。一般这些变量取值是非负且连续的。(如果实际要求变量不是连续的,那么先把变量当做连续的去求解,最后再进行讨论。)
- 要有建模的有关数据,如资源拥有量、消耗资源定额、创造新价值量等,并构成互不矛盾的约束条件,这些约束条件可以用一组线性等式或线性不等式来表示。
- 都有一个要求达到的目标,它可用决策变量及其有关的价值系数构成的线性函数(称为目标函数)来表示。按问题的不同,要求目标函数实现最大化或最小化。
线性规划模型的标准型
之所以要将问题化为标准型,主要是为了便于之后使用单纯形等方法进行求解。
线性规划数学模型一般有如下形式:
目标函数 max ( min ) z = c 1 x 1 + c 2 x 2 + ⋯ + c n x n \quad \max (\min ) z=c_{1} x_{1}+c_{2} x_{2}+\cdots+c_{n} x_{n} max(min)z=c1x1+c2x2+⋯+cnxn
满足约束条件 { a 11 x 1 + a 12 x 2 + ⋯ + a 1 n x n ⩽ ( = , ⩾ ) b 1 a 21 x 1 + a 22 x 2 + ⋯ + a 2 n x n ⩽ ( = , ⩾ ) b 2 ⋮ a m 1 x 1 + a m 2 x 2 + ⋯ + a m n x n ⩽ ( = , ⩾ ) b m x 1 , x 2 , ⋯ , x n ⩾ 0 } \left\{\begin{array}{c}a_{11} x_{1}+a_{12} x_{2}+\cdots+a_{1 n} x_{n} \leqslant(=, \geqslant) b_{1} \\ a_{21} x_{1}+a_{22} x_{2}+\cdots+a_{2 n} x_{n} \leqslant(=, \geqslant) b_{2} \\ \vdots \\ a_{m 1} x_{1}+a_{m 2} x_{2}+\cdots+a_{m n} x_{n} \leqslant(=, \geqslant) b_{m} \\ x_{1}, \quad x_{2}, \cdots, \quad x_{n} \geqslant 0\end{array}\right\} ⎩⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎧a11x1+a12x2+⋯+a1nxn⩽(=,⩾)b1a21x1+a22x2+⋯+a2nxn⩽(=,⩾)b2⋮am1x1+am2x2+⋯+amnxn⩽(=,⩾)bmx1,x2,⋯,xn⩾0⎭⎪⎪⎪⎪⎪⎬⎪⎪⎪⎪⎪⎫
标准化的步骤:
- 目标函数需要化为 m a x max max。若原本的目标函数是 m i n min min,则令 z ′ = − z z^{'}=-z z′=−z,然后求 m a x z ′ max z^{'} maxz′。
- 约束条件需要化为 = = =。若原本的约束条件是 ≤ \leq ≤,则约束条件变为原本的约束条件减去一个新的非负变量。若原本的约束条件是 ≥ \geq ≥,则约束条件变为原本的约束条件加上一个新的非负变量。
- 变量需要化为 ≥ 0 \ge0 ≥0。若原本的变量是 = 0 =0 =0,则直接改为 ≥ 0 \ge0 ≥0,但实际上这种情况并不会出现,因为如果变量 = 0 =0 =0,那么改变量就不会在目标函数和约束条件中出现。若原本的变量是 ≤ 0 \le0 ≤0,则令 x i ′ = − x i x_i^{'}=-x_i xi′=−xi,并令 x i ′ ≥ 0 x_i^{'}\ge0 xi′≥0,同时目标函数和约束条件中进行替换。若原本的变量没有约束( ∈ \in ∈R),则令 x i = x i ′ − x i ′ ′ x_i=x_i^{'}-x_i^{''} xi=xi′−xi′′,并令 x i ′ ≥ 0 x i ′ ′ ≥ 0 x_i^{'}\ge0\ x_i^{''}\ge0 xi′≥0 xi′′≥0,同时目标函数和约束条件中进行替换。
线性规划问题的处理流程
- 数学建模。得到目标函数和约束条件。
- 化标准型(详解上述标准化的3个步骤)。
- 单纯形法求解。
- 对于解的讨论。
补充说明
线性规划数学模型一般有如下形式:
目标函数 max ( min ) z = c 1 x 1 + c 2 x 2 + ⋯ + c n x n \quad \max (\min ) z=c_{1} x_{1}+c_{2} x_{2}+\cdots+c_{n} x_{n} max(min)z=c1x1+c2x2+⋯+cnxn
满足约束条件 { a 11 x 1 + a 12 x 2 + ⋯ + a 1 n x n ⩽ ( = , ⩾ ) b 1 a 21 x 1 + a 22 x 2 + ⋯ + a 2 n x n ⩽ ( = , ⩾ ) b 2 ⋮ a m 1 x 1 + a m 2 x 2 + ⋯ + a m n x n ⩽ ( = , ⩾ ) b m x 1 , x 2 , ⋯ , x n ⩾ 0 } \left\{\begin{array}{c}a_{11} x_{1}+a_{12} x_{2}+\cdots+a_{1 n} x_{n} \leqslant(=, \geqslant) b_{1} \\ a_{21} x_{1}+a_{22} x_{2}+\cdots+a_{2 n} x_{n} \leqslant(=, \geqslant) b_{2} \\ \vdots \\ a_{m 1} x_{1}+a_{m 2} x_{2}+\cdots+a_{m n} x_{n} \leqslant(=, \geqslant) b_{m} \\ x_{1}, \quad x_{2}, \cdots, \quad x_{n} \geqslant 0\end{array}\right\} ⎩⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎧a11x1+a12x2+⋯+a1nxn⩽(=,⩾)b1a21x1+a22x2+⋯+a2nxn⩽(=,⩾)b2⋮am1x1+am2x2+⋯+amnxn⩽(=,⩾)bmx1,x2,⋯,xn⩾0⎭⎪⎪⎪⎪⎪⎬⎪⎪⎪⎪⎪⎫
其中 c i c_i ci为价值系数, b i b_i bi为限额系数, a i j a_{ij} aij为技术系数。这些名称来源于生产问题,可以结合实际的生产问题加以理解。
一般情况下 m < n m<n m<n,即方程个数 < < <未知数个数。(也就是说求出的解是无穷多个的,KKT定理可能会失效。)
总结
线性规划问题是指,在线性约束条件下,寻找线性目标函数的最优化问题。
对于线性规划问题,可以按照KKT方法进行处理,更推荐的是先化为标准型然后再用单纯形法求解。
边栏推荐
- 偏向锁、轻量级锁测试工具类级相关命令
- Inventory | major network security events of global key information infrastructure
- Hongke solution | a unique solution to realize seamless integration at low cost in Digital Substations
- 10种常见的软件架构模式
- MySQL 事物四种隔离级别分析
- 软件包设置成——>YUM源
- Base64与File之间的相互转化
- 失效的访问控制
- Shallow reading of condition object source code
- Annotation
猜你喜欢

Hongke case | PAC: an integrated control solution integrating SoftPLC control logic, HMI and other service functions

Shallow reading of reentrantlock source code of abstractqueuedsynchronizer (AQS)

AbstractQueuedSynchronizer(AQS)之 ReentrantLock 源码浅读

数据单位:位、字节、字、字长

Merkletree builds QT implementation UI

NeuralCF-神经协同过滤网络

Hongke automation SoftPLC | modk operation environment and construction steps (1) -- Introduction to operation environment

【冷冻电镜|论文阅读】子断层平均 M 软件解读:Multi-particle cryo-EM refinement with M

Joint modeling of price preference and interest preference in conversation recommendation - extensive reading of papers

5G服务化接口和参考点
随机推荐
Ansible(自动化软件)
基于Matlab解决线性规划问题
How to judge whether a business is attacked by DDoS? What harm will it cause?
'function vtable for error: undefined reference to ... ' 问题的原因及解决方法
find命令详解(文章最后运维最常用操作)
成长为架构师途中的一些思考
Hongke share | bring you a comprehensive understanding of "can bus error" (I) -- can bus error and error frame
非常实用的 Shell 和 shellcheck
NLP-分词
greenplum企业部署
NeuralCF-神经协同过滤网络
Hongke automation SoftPLC | Hongke kPa modk operation environment and construction steps (2) -- modk operation environment construction
CDM—码分复用(简单易懂)
如何在开发板上使用sftp命令访问sftp-server
Mutual conversion between Base64 and file
Base64与File之间的相互转化
Using STP spanning tree protocol to solve the problem of two-layer loop in network
Execution sequence of finally and return
【备忘】关于ssh为什么会失败的原因总结?下次记得来找。
finally 和 return 的执行顺序