下载此文档

单纯形法求解线性规划的步骤样稿.doc


文档分类:高等教育 | 页数:约12页 举报非法文档有奖
1/12
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/12 下载此文档
文档列表 文档介绍
单纯形法求解线性计划步骤
 
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();   //判定目标行是否全部为非负数,最终一列不作考虑
这个函数用来判定是否已经存在最优解
bool Is_MainCol_All_Negative(int col);//判定主元列是否全部为负数或零
这个函数用来判定线性计划是否是无解
bool Is_column_all_Positive(int col);  //判定col列中是否全部为正(不包含目标行)
用来判定线性计划是否存在最优解,因为假如最终一列假如有负数化,就无解了,算法终止
int InColumn();    //确定输入变量
用来判定主元所在列
int DepartRow(int col);  //确定分离变量(寻求主元)
用来确定主元所在行
void MainItem_To_1(int row,int col);  //将主元所在行做处理,使主元变为1
void SubMatrixLine(int row1,int row2,intcol);//将矩阵其它行做处理,矩阵两行相减
这个函数是在主元行已经做处理以后调用,目标是是矩阵其它行主元列元素变成0.
其中row2为主元所在行,col为主元所在列,row1为要处理行
void PrintAnswer();  //输出矩阵最优解
int GetRows();    //返回矩阵行数
int GetCols();    //返回矩阵列数
double GetItem(int row,int col);  //返回矩阵第row行,第col列元素
源代码
//
#ifndef SIMPLEMATRIX_H_
#define SIMPLEMATRIX_H_
class SimpleMatrix
{
public:
   SimpleMatrix(int row=0,int col=0);
   SimpleMatrix(int row,int col,double **M);
   ~SimpleMatrix();
    bool Is_objectLine_All_Positive();   //判定目标行是否全部为非负数,最终一列不作考虑
    bool Is_MainCol_All_Negative(int col);//判定主元列是否全部为负数或零
    bool Is_column_all_Positive(int col); //判定col列中是否全部为正(不包含目标行)
    int InColumn();    //确定输入变量
    int DepartRow(int col);  //确定分离变量(寻求主元)
    void MainItem_

单纯形法求解线性规划的步骤样稿 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数12
  • 收藏数0 收藏
  • 顶次数0
  • 上传人业精于勤
  • 文件大小27 KB
  • 时间2020-11-17
最近更新