zoukankan      html  css  js  c++  java
  • 从线性规划到单纯形法的求解

    1. 线性规划的标准问题

    首先来看线性规划的标准问题:

    mins.t.cTxAx=b,xi0

    ARm×n,xRn,cRn,且要求 Rank(A)=mA 是行满秩矩阵)。

    下面是一些基本概念的定义:

    BA 中任意非奇异的 m×m 阶子矩阵(|B|0),则称 B 为此规划的一个基,令 B=(Pj1,,Pjm),下标 {j1,j2,,jm}{1,2,,n},对应的记 xB={xj1,xj2,,xjm} 为基变量,其余为非基变量。

    令非基变量均为 0,则有:

    Bxb=b

    一些概念:

    • 基本解:xN=0,xB=B1b(这样记,由基构成的解)
    • 可行解:若最终求得的向量 x 满足约束,Ax=b,x0,这样的解为可行解(或叫容许解);
    • 基本可行解:同时满足基本解,可行解的解,也即 xN=0,xB=B1b0 的为基本可行解;

    2. 判别定理

    BxB+NxN=bxB=B1bB1NxN

    根据 A=(B,N) 的拆分形式,对其做进一步的推导:

    x0====cTx(cTB,cTN)(xBxN)cTBxB+cTNxNcTBB1b(cTBB1NcTN)xN

    因为 cTBB1 常常出现,又进一步称其为单纯性子。对上式移项调整,进一步可得:

    x0+(cTBB1NcTN)xN=cTBB1b,(cTBB1BcTB)xB=0x0+(cTBB1BcTB)xB+(cTBB1NcTN)xN=cTBB1bx0+(cTBB1AcT)x=cTBB1b

    B 为线性规划的一个基,若 B1b0,且有 cTBB1AcT0,则对应于 B 的基本解式必是线性规划问题的最优解。

    • B1b0 ⇒ 基本可行解;
    • cTBB1AcT0x0cTBB1b

    3. 单纯形表

    单纯形表与基向量 B 有关,

    T(B)=[cTBB1bB1bcTBB1AcTB1A]

    其中:

    • cTBB1b 是标量;
    • cTBB1AcT 是行向量;
    • B1b 是列向量;
    • B1A 是矩阵;
  • 相关阅读:
    MVC模式简介
    UEditor插入表格没有边框但有间距
    MVC准备前基础知识
    如何关闭ie9烦人的提示信息?
    javaScript中利用ActiveXObject来创建FileSystemObject操作文件
    win7下IIS安装与配置运行网站
    javascript函数
    减小SSN影响
    EMC (电磁兼容性)
    电源完整性设计
  • 原文地址:https://www.cnblogs.com/mtcnn/p/9421432.html
Copyright © 2011-2022 走看看