当前位置:文档之家› 单纯形法求解过程

单纯形法求解过程

单纯形法求解过程

单纯形法是一种经典的线性规划求解方法,它是由乔治·达竞

士等人在1947年提出的。该方法的基本思想是,通过在单纯

形空间内不断移动顶点的位置来寻找最优解。单纯形法是目前广泛应用的线性规划求解方法之一,它求解线性规划问题可大大地简化计算过程。

单纯形法的求解过程包括以下几个步骤:

1. 将线性规划问题转化为标准形式

线性规划问题的标准形式为:

$ \max_{x} \ \ c^T x $

$s.t. \ Ax=b$

$x\geq 0$

其中,$x$是要求解的向量;$b$是一个常数向量;$A$是一个$m\times n$的矩阵;$c$是一个常数向量。

2. 初始化单纯形表

因为单纯形法是通过移动顶点来寻找最优解的方法,因此需要初始化单纯形表。单纯形表是将原始的约束条件表示为不等式形式时形成的。例如,对于一个带有3个变量的线性规划问题,其单纯形表的形式如下:

CB | X1 | X2 | X3 | X4 | RHS

----|-----|-----|-----|-----|----

0 | a11| a12| a13| 0 | b1

0 | a21| a22| a23| 0 | b2

0 | a31| a32| a33| 0 | b3

1 | z1 | z

2 | z

3 | 0 | 0

其中,CB代表成本系数,X1、X2、X3、X4分别代表变量。

a11、a12、a13等代表矩阵A中的元素,b1、b2、b3代表矩阵

b中的元素。

3. 选择进入变量和离开变量

在单纯形表中,规定最后一列为等式右边的常数(RHS),即b。在单纯形法的求解过程中,首先需要选择一个“进入变量”,即在单纯形表的第一行中,寻找一个系数为正的变量,使得将其加入目标函数后,目标函数值可以上升。这里以X1为例,

X1为进入变量。

接着,需要选择一个“离开变量”,即在单纯形表中,寻找一个

使得添加X1变量后,约束条件不改变且取得约束条件中系数

最小的一个变量离开。假设选择的离开变量为X3。

4. 更新单纯形表

通过高斯-约旦消元法来更新单纯形表的变量,即通过对第

$X3$行做初等变换来消去X1的系数,然后对其他行做类似的

操作,使得单纯形表重新转化为增广矩阵的形式。

CB | X1 | X2 | X3 | X4 | RHS

----|-----|-----|-----|-----|----

0 | 0 | a12'| a13'|a14' |b1'

0 | a21'| a22'| a23'|a24' |b2'

0 | a31'| a32'| a33'|a34' |b3'

1 | z1' | z2' | z3'| z4' | 0

5. 终止条件的判断

如果单纯形表中所有的CB都是非负数,那么就得到了最优解;如果存在某些CB是负数,则继续回到第3步,直到达到终止

条件。

以上就是单纯形法的求解过程。通过单纯性表的变换,找到最大化目标函数的最优解。单纯形法计算速度较快,而且在求解过程中有很好的可视化效果,能够帮助人们更好地理解线性规划问题。

单纯形法

单纯形法(SM ,simplex method) 首先在n 维欧氏空间n E 中构造一个包含1n +顶点的凸多面体,求出各顶点的函数值并确定其中的最大值,次大值和最小值。然后通过反射、扩张、内缩、缩边等求出一个较好解,用之取代最差点,从而构成新的多面体。如此迭代可求得一个极小点。 具体步骤如下: ①、 确定初始点。 ②、 反射操作:求出1n +个顶点的函数值,确定其中最大值G f ,次大值H f 和最 小值L f 。除去最大值点G X ,计算剩余n 个点的形心X ,然后求出G X 关于X 的对称点(2)n X +,计算(2)()n f X +。若(2 )()n L f X f +<,则令(3)(2)()n n X X X X γ++=+-, 其中1γ>,取2γ=,并计算(3)()n f X +,若(3)(2)()() n n f X f X ++<则用(3)n X +取代G X 转步骤⑤,否则用(2)n X +取代G X 转步骤⑤。 ③、 若(2)()n L H f f X f +≤≤,则用(2)n X +取代G X 步骤⑤。 ④、 若(2)()n H f X f +≥,则需要内缩,(2)(')min{(),()}n H f X f X f X +=,令 (4)(')n X X X X β+=+-,其中0.5β=,计算(4)()n f X +,若(4)()(')n f X f X +≤,则用(4)n X +取代G X ,并转步骤⑤。若(4)()(')n f X f X +>则缩边,即 ()/2 i i L X X X =+,(1,2,,1)i n =+ ,转步骤⑤。 ⑤、 若1 20.51 1{[()()]}1n i i f X f X n ε+=-<+∑,则停止,否则转②。 SM 简单,计算量小,优化快速,不需要函数可导。但对初始值依赖性强,容易陷入局部极小,而且优化效果随函数维数增加明显下降。 形心计算:1 1()n i G i X X X n ==-∑ 反射点计算:(2)2n G X X X +=- 变量定义:最大值G f ,次大值H f ,最小值L f ,形心fX ,对称点2fX ,3fX ,fXp ,4fX ;

运筹学单纯形法例题求解过程

运筹学单纯形法例题求解过程 (原创版) 目录 一、运筹学单纯形法的基本概念 二、运筹学单纯形法的求解步骤 1.确定基变量和初始基本可行解 2.编制初始单纯形表 3.判断基本可行解是否为最优解 4.迭代求解下一个使目标函数更优的基本可行解 5.重新计算机会费用和检验数 三、运筹学单纯形法的应用实例 正文 一、运筹学单纯形法的基本概念 运筹学单纯形法是一种求解线性规划问题的方法,它是基于数学和统计学的理论基础,通过逐步优化算法,寻找线性规划问题中最优解的一种方法。线性规划问题是指在一定约束条件下,寻求目标函数的最小值或最大值的问题。而单纯形法是线性规划问题中最常用的求解方法之一,它通过迭代计算,不断优化基变量,从而得到问题的最优解。 二、运筹学单纯形法的求解步骤 1.确定基变量和初始基本可行解 在求解线性规划问题时,首先需要确定问题的基变量,即在所有变量中选择若干个变量作为基变量。基变量的选取可以通过寻找单位矩阵的方法来确定。确定基变量后,可以求出初始基本可行解,即满足所有约束条件的变量值组合。

2.编制初始单纯形表 根据初始基本可行解和线性规划模型提供的信息,可以编制初始单纯形表。单纯形表是一个包含基变量、非基变量、目标函数系数、约束条件常数项和检验数等元素的矩阵表。 3.判断基本可行解是否为最优解 在求解过程中,需要判断基本可行解是否为最优解。这可以通过检验数来进行。检验数是指非基变量与对应约束条件的乘积,如果所有非基变量的检验数都小于等于 0,说明已经达到最优解。否则,需要继续迭代求解。 4.迭代求解下一个使目标函数更优的基本可行解 如果基本可行解不是最优解,需要通过迭代求解来寻找下一个使目标函数更优的基本可行解。迭代过程中,需要确定换入变量和换出变量,然后根据换入变量和换出变量生成新的单纯形表,并重新计算机会费用和检验数。 5.重新计算机会费用和检验数 在迭代过程中,需要重新计算机会费用和检验数,以便判断新的基本可行解是否更优。如果新的基本可行解的检验数满足条件,说明已经找到最优解,可以结束迭代求解过程。否则,需要继续迭代求解。 三、运筹学单纯形法的应用实例 在实际应用中,运筹学单纯形法可以用于解决各种线性规划问题,例如资源分配问题、物流运输问题、生产计划问题等。

单纯形法解题步骤

三、单纯形法的解题步骤 第一步:作单纯形表. )(1)把原线性规划问题化为标准形式; )(2)找出初始可行基,通常取约束方程组系数矩阵中的单位矩阵; )(3)目标函数非基化; )(4)作初始单纯形表. 第二步:最优解的判定. (1) 若所有检验数都是非正数,即,则此时线性规划问题已取 得最优解. (2) 若存在某个检验数是正数,即,而所对应的列向量无正分量,则线性规划 问题无最优解. 如果以上两条都不满足,则进行下一步. 第三步:换基迭代. ,并确定所在列的非基变量为进基变量. (1)找到最大正检验数,设为 (2)对最大正检验数所在列实施最小比值法,确定出主元,并把主元加上小括号. 主元是最大正检验数 所在列,用常数项与进基变量所对应的列向 量中正分量的比值最小者; 替换出基变量,从而得到新的基变量.也就是主元所在 (3)换基:用进基变量 (4)利用矩阵的行初等变换,将主元变为1,其所在列其他元素都变为零,从此得到新的单纯形表; (5)回到第二步,继续判定最优解是否存在,然后进行新一轮换基迭代,直到问题得到解决为止. 例3 求.

解(1)化标准型:令 ,引进松弛变量 ,其标准型为 求 (2)作单纯形表:在约束方程组系数矩阵中 的系数构成单位矩阵,故取 为基变量,目标函数已非基化了,作初始单纯形表并“换基迭代”(见表6.8).表 6.8

(3)最终结果:此时检验数均为非正数,线性规划问题取得最优解,最优解为 标函数取得最优值 . 目 性规划问题的最优解为: . 原线 目标函数的最优值为14,即 . 例4 用单纯形方法解线性规划问题. 求 . 解此数学模型已是标准型了,其中约束方程含有一个二阶单位矩阵(1、2行,3、4列构成),取为基变量,而目标函数没有非基化.从约束方程找出 , , 代入目标函数 , 经整理后,目标函数非基化了. 作单纯形表,并进行换基迭代(见表6.9). 最大检验数 ,由最小比值法知: 为主元,对主元所在列施以行初等变 换,基变量 出基,非基变量 进基. 表 6.9 目前最大检验数 ,其所 在列没有正分量,所以该线性规划问题没有最优解.

单纯形法

单纯形法 一、单纯形法的原理 线性方程组的解: ?? ?=----=+-+-432 24254321 54321x x x x x x x x x x (1) 5个未知数,两个方程组。方程的解多于1个。 两种初等变换:5 1)方程组的任一方程乘上一个不为零的数。 2)方程组的任一方程两边同乘上一个常数,分别加到另一个方程的两边。 式(1)做变换得到:(①×-1) ? ? ?=-+-=+-+-2322 242543254321x x x x x x x x x (2) 式(2)做变换得到:(②×2) ? ??=-+-=---2 32642354325431 x x x x x x x x (3) 方程组(1)、(2)、(3)同解,可令0543===x x x 。得到:61=x ,22=x 。选择3x ,4x ,5x 不同的值,相应地有不同的1x 和2x 的值,因此方程组有多组解。 基本变量:如果变量i x 的系数在某一个方程为1,而在其它所有方程为0,则称i x 为该方程组中的基本变量。 非基本变量:凡不是基本变量的变量都叫做非基本变量。 1x ,2x 为基本变量;3x ,4x ,5x 为非基本变量。 旋转运算:运用初等变换,可使一给定变量化为基本变量,这一运算,成为旋转运算。基本变量的个数,与方程的个数相同。 基本解:设非基本变量为0,求得相应的基本变量的值,得到一组解,这组解称为基本解。 基本可行解:基变量的值为非负时的基本解称为基本可行解。 单纯形法的思路; 1)先不考虑目标函数,从满足约束条件开始,寻求一个初始基本可行解; 2)求具有较佳目标函数值的另一个基本可行解,以改进初始解; 3)对目标函数做有限次的改善。当某一个基本可行解不能再得到改善时,即求

单纯形法求解线性规划的步骤

单纯形法求解线性规划的步骤 1>初始化 将给定的线性规划问题化成标准形式,并建立一个初始表格,它最右边的单元格都是非负的(否则无解),接下来的m列组成一个m*m的单元矩阵(目标行的单元格则不必满足这一条件),这m列确定了初始的基本可行解的基本变量,而表格中行用基本变量来表示 2>最优化测试 如果目标行的所有单元格都是非负的(除了最右列中代表目标函数值的那个单元格),就可以停止了,该表格代表了一个最优解,它的基本变量的值在最右列中,而剩下的非基本变量都为0 3>确定输入变量 从目标行的前n个单元格中选择一个负的单元格(选择绝对值最大的那个)该单元格所在的列确定的输入变量及主元列 4>确定分离变量 对于主元列的每个正单元格,求出θ比率(如果主元格的单元格为负或为0,说明该问题是无解的,算法终止),找出θ比率最小的列,改行确定了分离变量和主元行 5>建立下一张表格 将主元行的所有单元格除以主元得到新的主元行,包括主元行在内的每一行,要减去改行主元列单元格和新主元行的成绩(除主元行为1外,这一步将主元列的所有单元格变成0).把主元列的变量名进行代换,得到新的单纯形表,返回第一步 为求简单 在本程序中,需要自己建立标准矩阵(比如加入松弛变量等工作需要用户自己完成),程序的输入有两种方式: 1:指定行和列,由用户自行输入每一个元素SimpleMatrix(introw=0,int col=0); 2:直接在主程序中初始化一个二维数组,然后利用构造函数SimpleMatrix(introw,int col,double **M) 来初始化和处理(本程序所用的实例用的是这种方法) 程序中主要的函数以及说明 ~SimpleMatrix(); 销毁动态分配的数组.用于很难预先估计矩阵的行和列,所以在程序中才了动态的内存分配.需要重载析构函数 bool Is_objectLine_All_Positive();其中row2为主元所在的行,col为主元所在的列,row1为要处理的行 void PrintAnswer();数不合法"<

图解法和单纯形法求解线性规划问题

图解法和单纯形法求解以下线性规划问题 1.1 图解法解线性规划问题 只含两个变量的线性规划问题,可以通过在平面上作图的方法求解,步骤如下: (1)以变量x1为横坐标轴,x2为纵坐标轴,适当选取单位坐标长度建立平面坐标直 角坐标系。由变量的非负性约束性可知,满足该约束条件的解均在第一象限内。 (2)图示约束条件,找出可行域(所有约束条件共同构成的图形)。 (3)画出目标函数等值线,并确定函数增大(或减小)的方向。 (4)可行域中使目标函数达到最优的点即为最优解。 然而,由于图解法不适用于求解大规模的线性规划问题,其实用意义不大。 1.2 单纯形法解线性规划问题 它的理论根据是:线性规划问题的可行域是n维向量空间Rn中的多面凸集,其最优值如果存在必在该凸集的某顶点处达到。顶点所对应的可行解称为基本可行解。 单纯形法的基本思想是:先找出一个基本可行解,对它进行鉴别,看是否是最优解;若不是,则按照一定法则转换到另一改进的基本可行解,再鉴别;若仍不是,则再转换,按此重复进行。因基本可行解的个数有限,故经有限次转换必能得出问题的最优解。如果问题无最优解也可用此法判别。 单纯形法的一般解题步骤可归纳如下:①把线性规划问题的约束方程组表达成典范型方程组,找出基本可行解作为初始基本可行解。②若基本可行解不存在,即约束条件有矛盾,则问题无解。③若基本可行解存在,从初始基本可行解作为起点,根据最优性条件和可行性条件,引入非基变量取代某一基变量,找出目标函数值更优的另一基本可行解。④按步骤3进行迭代,直到对应检验数满足最优性条件(这时目标函数值不能再改善),即得到问题的最优解。⑤若迭代过程中发现问题的目标函数值无界,则终止迭代。 1.3 线性规划问题的标准化 使用单纯形法求解线性规划时,首先要化问题为标准形式

单纯形法

单纯形法(不可以解空集问题,无初始解) 一、单纯形法的基本思想 1、顶点的逐步转移 即从可行域的一个顶点(基本可行解)开始,转移到另一个顶点(另一个基本可行解)的迭代过程,转移的条件是使目标函数值得到改善(逐步变优),当目标函数达到最优值时,问题也就得到了最优解。 2.需要解决的问题: (1)为了使目标函数逐步变优,怎麽转移? (2)目标函数何时达到最优——判断标准是什么? (3)初始解的寻找 二、单纯形法原理(用代数方法求解LP) 第一步:引入非负的松弛变量(x3 x4 x5)和剩余变量(算完后剩余的资源) x3,x4,x5, 将该LP化为标准型 第二步:寻求初始可行基(单位阵对应的),确定基变量 第三步:写出初始基本可行解(很多之中找一个,必令原x为0)和相应的目标函数值 两个关键的基本表达式: ① 用非基变量表示基变量的表达式 ② 用非基变量表示目标函数的表达式 第四步:分析两个基本表达式,看看目标函数是否可以改善? ① 分析用非基变量表示目标函数的表达式 非基变量前面的系数均为正数(必为负数才可以),所以任何一个非基变量进基都能使Z值增加 通常把非基变量前面的系数叫“检验数” ②选哪一个非基变量进基? 排在最前面的负检验数对应的非基变量 ③确定出基变量 “最小比值原则”(或θ原则)见本 如果x2≤0,会出现什麽问题? 最小比值原则会失效! 基变换 新的基变量——x2, x3,x4;新的非基变量x1, x5; 写出用非基变量表示基变量的表达式: 可得新的基本可行解 X(1)=(0,3,2,16,0)T ⑤写出用非基变量表示目标函数的表达式: 检验数仍有正的 第五步:上述过程何时停止? 当用非基变量表示目标函数的表达式中,非基变量的系数(检验数)全部非正(0时表无穷解,负时表唯一解)时,当前的基本可行解就是最优解! 为什麽? 分析用非基变量表示目标函数的表达式,如果让负检验数所对应的变量进基,目标函数值将下降!

单纯形法的计算方法

第4章单纯形法的计算方法 单纯形法求解线性规划的思路:一般线性规划问题具有线性方程组的变量数大于方程个数,这时有不定的解。但可以从线性方程组中找出一个个的单纯形每一个单纯形可以求得一组解,然后再判断该解使目标函数值是增大还是变小决定下一步选择的单纯形。这就是迭代,直到目标函数实现最大值或最小值为止。 4.1初始基可行解的确定 为了确定初始基可行解,要首先找出初始可行基,其方法如下。 (1) 第一种情况:若线性规划问题 max z = 'n ' am 二bj = 1,2,...,m X j XO, j =1,2,...n 从Pj ( j = 1 , 2 , ? , n)中一般能直接观察到存在一个初始可行基 (2)第二种情况:对所有约束条件是“W”形式的不等式,可以利用化为标准型的方法,在每个约束条件的左端加上- 一个松弛变量。经过整理,重新对 X j 及a j ( i = 1 , 2 , ?,m j = 1 , 2 ,? , n)进行编号,则可得下列方 程组 为+ a1卬十X m十+???*a1n x n j x 2 + a z’m^h X m 十 + .. .+ a2n X n = b2 X m +a m,m_h X m十+.??*a nn x n - b n X(,X2,...,X^O 显然得到一个m x m单位矩阵 n ' C j X j j=l B=(R,巳,…,P n)= 1 i- 0 1…

以B 作为可行基。将上面方程组的每个等式移项得 X =d —印小书冷出―…―a 1n X n X 2 = b 2 — a 2,^4X m+ _..^ a 2n X n 令Xm 1 ~ Xm ?2 =…=Xi =0,由上式得 X 二 b j (i =1,2,..., m) 又因b i >0,所以得到一个初始基可行解 X =(X 1,X 2,…,X m ,0,...,0) T (n -m) 个 -(b 1, 6 ,...,b m ,0, 0 (n _m) 个 (3)第三种情况:对所有约束条件是“形式的不等式及等式约束情况,若 不存在单位矩阵时,就采用人造基方法。即对不等式约束减去一个非负的剩余变 量后,再加上一个非负的人工变量;对于等式约束再加上一个非负的人工变量, 总能得到一个单位矩阵。 4.2 最优性检验和解的判别 对线性规划问题的求解结果可能出现唯一最优解、 无穷多最优解、无界解和 无可行解四种情况,为此需要建立对解的判别准则。一般情况下,经过迭代后可 以得到: , n , X i -送 a j X j (i =1,2,...,m) j zm 1 将上代入目标函数,整理后得 m - n m - Z=W C i b i +送(C j ca j )X j i =1 j h 1 if B = (P 1 ,P 2 , ...,P n ) = ‘1 0… 0 1… (T o

线性规划问题的单纯形法求解步骤

线性规划问题的单纯形法求解步骤线性规划是一种优化问题,它的解决方法有很多种,在这里我们来介绍其中一种常用的方法——单纯形法。我们将介绍单纯形法的求解步骤,以帮助读者更好地理解和掌握这种求解方法。 1. 建立数学模型 任何一个线性规划问题的解决都需要先进行建模。我们将问题转换成数学模型,然后使用数学方法进行求解。线性规划问题的一般形式为: max cx s.t. Ax ≤ b x ≥ 0 其中,c、x、b、A都是向量或矩阵,x≥0表示各变量都是非负数。其中c表示目标函数,A和b表示约束条件。 2. 计算初始基可行解

我们需要从初始点开始,逐步优化目标函数。但是,在开始优化前我们需要先找到一个基可行解。基可行解的定义是:如果所有非基变量的取值都是0,并且所有基变量的取值都是非负的,则该解被称为基可行解。当基可行解找到后,我们就可以开始进行优化。 3. 确定进入变量 在单纯形法中,每次迭代中我们都需要找到进入变量。进入变量是指,通过操作非基变量可以使得目标函数增加的变量。我们需要找到一个使得目标函数增加最多的非基变量,将其称为进入变量。 4. 确定离开变量 在确定进入变量后,我们需要确定一个离开变量。离开变量是指,通过操作基变量可以使得目标函数增加的变量。我们需要找到一个离开变量,使得当进入变量增加到某个值时,该离开变量的值为0。这样,我们就找到了一个最小的正根比率,使得通过基本变量出基到进入变量变为零而得到的新解是可行的。 5. 交换变量

接下来,我们需要将已选定的进入变量和离开变量进行交换。 此时,我们将进入变量转变为基变量,离开变量转变为非基变量。通过这种交换,我们还需要调整我们的基向量。由于这个交换, 我们将得到一个新的基可行解,并且它可以比之前的解更好。 6. 重复迭代 我们需要重复上述步骤,直到我们找到最优解。重复迭代意味 着我们将不断查找新的进入变量和离开变量,并进行变量交换。 这种找到最优解的过程可能非常复杂,但是单纯形法的效率很高,通常可以在很短的时间内找到最优解。 以上就是线性规划问题的单纯形法求解步骤。需要注意的是, 在实际应用中,我们需要根据具体问题的特点灵活应用。同时, 由于单纯形法存在某些局限性,例如可能出现无界解或无可行解 等问题,因此,我们还需要使用其他方法来解决这些问题。

单纯形解法

线性规划问题解法: (1)图解法: 优点---只管易掌握,有助于理解结构。 缺点---只能解决低维的问题,对高维无能为力。 (2)单纯形法:单纯形法把寻优的目标集中在所有基本可行解(即可行域顶点)中。 单纯形法的一般步骤如下: 1、寻找一个初始的基本可行解。 2、检查现行的基本可行解是否最优,如果为最优, 则停止迭代,已找到最优解,否则转一步。 3、移至目标函数值有所改善的另一个基本可行解, 然后转会到步骤(2)。 步骤1: 约束方程 表示为: 用可行基B的逆阵B-1左乘等式两端,再通过移项可推得: 若令所有非基变量 ,则基变量 由此可得初始的基本可行解: 其过程为: 存在问题: 1、要判断m 个系数列向量是否恰好构成一个基并不是一件容易的事。 基由系数矩阵A中m 个线性无关的系数列向量构成。 但是要判断m 个系数列向量是否线性无关并非易事。 2、即使系数矩阵A中找到了一个基B ,也不能保证该基恰好是可行基。 因为不能保证基变量XB =B-1b ≥0。 3、为了求得基本可行解,必须求基B的逆阵B-1。 但是求逆阵B-1也是一件麻烦的事。 结论:在线性规划标准化过程中设法得到一个m 阶单位矩阵I 作为初始可行基B 为了设法得到一个m 阶单位矩阵I 作为初始可行基B,可在规划标准化过程中作如下处理: 1、若在化标准形式前,m 个约束方程都是“≤”的形式, 那么在化标准形时只需在一个约束不等式左端都加上一个松弛变 量x n+i (i=12…m)。 2、若在化标准形式前,约束方程中有“≥”不等式, 那么在化标准形时除了在方程式左端减去剩余变量使不等式变 成等式以外,还必须在左端再加上一个非负新变量,称为 人工变量. 3、若在化标准形式前,约束方程中有等式方程,那么可以直接在 等式左端添加人工变量。 【步骤一完成:寻找一个初始的基本可行解】 AX=b B B N N X AX=(BN)=BX +NX =b X ⎛⎫ ⎪⎝⎭ -1-1B N X =B b-B NX N X =0-1B X =B b 1B b X=0-⎛⎫ ⎪⎝⎭-1-1-1B N B N N B AX=b BX +NX =b X =B b-B NX X =0,X =B b →→→

单纯形法的解题步骤

. 三、单纯形法的解题步骤 第一步:作单纯形表. )( 1)把原线性规划问题化为标准形式; )( 2)找出初始可行基,通常取约束方程组系数矩阵中的单位矩阵; )( 3)目标函数非基化; )( 4)作初始单纯形表. 第二步:最优解的判定. (1) 若所有检验数都是非正数,即,则此时线性规划问题已取得最优解 . (2) 若存在某个检验数是正数,即,而所对应的列向量无正分量,则线性规划 问题无最优解 . 如果以上两条都不满足,则进行下一步. 第三步:换基迭代. ( 1)找到最大正检验数,设为,并确定所在列的非基变量为进基变量. ( 2)对最大正检验数所在列实施最小比值法,确定出主元,并把主元加上小括号. 主元是最大正检验数所在列,用常数项与进基变量所对应的列向量中正分量的比值最小者; ( 3)换基:用进基变量替换出基变量,从而得到新的基变量.也就是主元所在列的非基变量进基,所在行的基变量出基; (4)利用矩阵的行初等变换,将主元变为 1,其所在列其他元素都变为零,从此得到新的 单纯形表; (5)回到第二步,继续判定最优解是否存在,然后进行新一轮换基迭代,直到问题 得到解决为止 . 例3求.

. 解(1)化标准型:令,引进松弛变量,其标准型为求 ( 2)作单纯形表:在约束方程组系数矩阵中的系数构成单位矩阵,故取为基变量,目标函数已非基化了,作初始单纯形表并“换基迭代”(见表 6.8) . 表 6.8 x 1x2x3x4x5常数 x 3101005 x 41201010 x 50(1)0014 S′130000 x 3101005 x 4(1)001-22 x 2010014 S′1000-3-12 x 3001-123 x 11001-22 x 2010014 S′000-1-1-14

单纯型法的计算步骤

3.2 单纯形法的计算步骤 由于单纯形)12.2(的目标函数和约束函数中含有基变量和非基变量,为了设计出方便, 有效的计算方法,我们将简化单纯形的表达形式,称其为单纯形表格。比如,下述单纯形: 2136x x --=η 114x s -= 21223x x s --= 的简化单纯形表格如下(参见表3.2)。这种格式使得我们非常容易识别基变量,我们只要将仅 表 :简单单纯形表 有1个"1"的列(1s 和2s )为基变量。 1.3.2 标准最大化线性规划的单纯型法 为了设计标准最大化线性规划问题)15.1(的初始单纯形表,我们首先将它的等价问题 )11.2(改写为: max ∑∑=+=⨯+= m i i n n j j j x x c 1 1 0η ..t s ⎪⎩ ⎪⎨⎧++=≥==++=∑m n n n j x m i b x x a j i i n n j j ij ,...,1,,...,2,1,0,...,2,1,1 )16.2( 那么标准最大化线性规划问题)15.1(的初始单纯形表被表示为(参见表4.2): 表:标准最大化线性规划的初始单纯形表

其中:j c ,n j ,...,2,1=为原问题目标函数的系数,},...,2,1{m n n n B +++=为基变量下标集合,},...,2,1{n N =为非基变量下标集合,B x 为基变量,B c 为基变量在原问题目标函数系 数,B b 为基变量的解,那么初始基可行解为),...,,0,...,0(10 m b b x =,η为对应初始目标函数 值。 我们将解释表6.2中j sac 和j imp 行的计算方法和经济涵义。由于标准最大化线性规划问题可被看成是利用m 种资源生产n 种产品,决策变量j x 在线性规划约束条件中的系数ij a 可以被理解为,为了生产一件产品j ),...,2,1(n j =需要消耗原材料i ),...,2,1(m i =的数量;决策变量j x 在目标函数中的系数j c 是一件产品j 的利润;松弛变量i n x +则表示第i 种原材料的剩余量。基于上述描述,我们引入下面两个概念: )1(生产一件产品j 的单位边际损失值 ∑∈⨯=B i ij i j a c sac N j ∈ )17.2( 其中i c ,B i ∈是对应基变量在目标函数中的系数,显然i c 或表示某件产品的单位利润或等于 0。乘积项ij i a c ⨯有四种经济解释: )(a 如果j ,N j ∈代表产品且i ,B i ∈代表尚未使用的原材料,ij a 表示生产一件产 品j 所消耗原材料i 的数量,则0=⨯ij i a c ,表示生产一件产品j 没有产生边际损失; )(b 如果j ,N j ∈代表产品且i ,B i ∈也代表产品,ij a 表示产品j 与产品i 的替代 关系,ij i a c ⨯,表示未了生产一件产品j 而放弃生产产品i 所产生的利润损失,所以ij i a c ⨯是生产一件产品j 而发生的边际损失;

相关主题
文本预览
相关文档 最新文档