相关理论知识参考 单纯形理论知识
算法可以在给定一个包含线性规划问题的标准形式的描述下,求解该线性规划问题。
例如某一个 pro.txt 文件内容如下:
6
3
3 -1 1 -2 0 0
2 1 0 1 1 0
-1 3 0 -3 0 1
-3 4 12
-7 7 -2 -1 -6 0
执行算法之后得到结果:
x_1 = 0.000000,x_2 = 0.000000,x_3 = 0.000000,x_4 = 1.500000,x_5 = 2.500000,x_6 = 16.500000
objective value is : -16.500000
1-th line constraint value is : -3.000000
2-th line constraint value is : 4.000000
3-th line constraint value is : 12.000000
代码如下:
#encoding=utf-8
__author__ = 'ysg'
import numpy as np #python 矩阵操作lib
class Simplex():
def __init__(self):
self._A = "" # 系数矩阵
self._b = "" #
self._c = '' #约束
self._B = '' #基变量的下标集合
self.row = 0 #约束个数
def solve(self, filename):
#读取文件内容,文件结构前两行分别为 变量数 和 约束条件个数
#接下来是系数矩阵
#然后是b数组
#然后是约束条件c
#假设线性规划形式是标准形式(都是等式)
A &