【用人话讲运筹学】一、线性规划的基本概念
江景页jy333
编辑于 2020年03月26日 10:10
收录于文集
共20篇

  最近在学运筹学,由于每周的两节课都是八点开始实在起不来床,无奈之下只有自学。结果一打开教材就看得我头晕,一堆术语说的云里雾里,罗列了一堆知识点却说不清轻重点;再打开老师的PPT,杂乱的排版和粘在一起的字让我失去了看下去的念头……无奈只有硬着头皮看书,终于学会了一些大概。我觉得应该用一些浅显的话来介绍运筹学中的知识点,以便大家能容易看懂,光速备考。第一章中的线性规划与单纯形法是整个线性规划的基础,今天就简单地介绍一下,如何快速解决常规的线性规划问题。

一、线性规划的基础

  线性规划问题不用多说,就是给一些约束条件,求一个目标函数的最值,可能是最大值或者最小值。“线性”二字保证了问题的简单性,不论是高中数学必修五中学过的两个变量的线性规划,还是刚入大学就要学的线性代数,都能够用简单的计算解决问题。也正因它的线性,高中数学会使用平面直角坐标系中直线的移动来找到最值,而增多变量以后,虽然不能简单画图解决,但是抽象出来的解法,却是差不多的。

  鉴于高中数学的线性规划太过简单,我们跳过图解法这一节,直接用大学应该使用的方法来解决问题。在进行系统性的解题时,我们要先明确一些概念:

  (1)决策变量,也就是我们能够控制取值的x1,x2等变量;

  (2)目标函数,是我们要求的最值函数,在其中决策变量x1,x2前面的系数被称为价值系数

  (3)约束条件,是约束决策变量取值的一些硬性条件,每一个条件都要被满足。一般我们会把常数移到不等式的右边,把所有带系数的决策变量移到不等式的左边,这些系数又被称为技术系数

  用一张图概括如下:

一张图概括线性规划的基本概念

  红色的为价值系数,蓝色的为决策变量,绿色的是技术系数。明确了以上概念,我们就可以讨论线性规划的标准型了。

二、什么是标准型

  标准型是为了方便我们用一套固定的范式求解线性规划问题而出现的线性规划模型,与我们之前随便写出的不同,标准型具有一些要求:

  (1)目标函数一定是最大值函数;

  (2)约束条件必须全都是等式

  (3)约束条件的右端必须为正数

  (4)所有变量的取值都必须是非负数

  可以看到,刚才我们写出的线性规划问题,除了第(4)条——所有变量取值都非负以外,就没有一项是符合标准型的,因此我们要想办法,将其变为标准型。一条一条解决吧!

  (1)目标函数一定要是最大值,这个好办,如果遇到最小值,那只要求-z的最大值即可,原目标函数改为以下函数:

将等式两边同时取反,把最小值变为最大值

  (2)约束条件必须全都是等式,这个需要我们手动调整了,如果遇到小于等于的情况,为了让它的符号变成等号,必须加上一个非负的东西,我们称之为松弛变量

此时x4为松弛变量

  当然,原约束条件也有可能是大于等于的,这时候就得减去一个非负的东西,称之为剩余变量

此时x5是剩余变量

  PS:请记住松弛变量剩余变量的名字!它们与接下来所提到的人工变量是不同的东西!

  (3)约束条件的右端必须为正数,这个也好办,如果是负数,就把方程整个加个负号就行:

如果右端系数是负数,则将左右两端取反

  (4)最后是变量一定要非负,这里存在另外两种可能,一种是变量本身非正,这时候只需用-x替换x即可;另一种情况是变量是unr(无限制条件)的,此时我们一般会用两个非负变量相减,把所有的x替换。(这里如果无法理解请看下面的例子)

  经过了上述调整,线性规划的标准型就变成了这样:

线性规划的标准型,这里图上漏了x4,x5≥0

  作为巩固,我们再进行以下的练习:

将这个模型化为标准型,unr即“没有限制的”

  显然,这个问题的标准型应该是这样的:

上一题的标准型

  这里,由于x4是没有限制的,因此把它转化为x7-x8,执行完(1)(2)(3)后再将里面所有的x4用x7-x8替换即可得到答案。是不是很简单?

  线性规划的基本概念就是以上这些,看完以后,需要掌握的内容有——决策变量、目标函数、价值系数、技术系数与标准型的要求,如果忘了,记得回去复习一下哟!