python求解线性规划问题,百度后发现了scipy模块,optimize,新手希望大神能写个实例,例子如下:

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python求解线性规划问题,百度后发现了scipy模块,optimize,新手希望大神能写个实例,例子如下:相关的知识,希望对你有一定的参考价值。

参考技术A scipy做线性规划不是很方便,推荐用pulp来做,这个模块不属于python的内置模块,需要先安装,pip install pulp
from pulp import *

# 设置对象
prob = LpProblem('myProblem', LpMinimize)

# 设置三个变量,并设置变量最小取值
x1 = LpVariable('x1', 0)
x2 = LpVariable('x2', 0)
x3 = LpVariable('x3', 0)
x4 = LpVariable('x4')

# 载入目标函数,默认是求最小值,因此这次对原目标函数乘以-1
prob += 3*x1 - 4*x2 + 2*x3 -5*x4

# 载入约束变量
prob += 4*x1 - x2 + 2*x3 -x4 == -2
prob += x1 + x2 -x3 + 2*x4 <= 14
prob += -2*x1 + 3*x2 + x3 -x4 >= 2

# 求解
status = prob.solve()

# 显示结果
for i in prob.variables():
print(i.name + "=" + str(i.varValue))

计算结果为:
x1=0.0
x2=2.0
x3=4.0
x4=8.0本回答被提问者和网友采纳

python 求解线性方程组

Python线性方程组求解

求解线性方程组比较简单,只需要用到一个函数(scipy.linalg.solve)就可以了。比如我们要求以下方程的解,这是一个非齐次线性方程组:

3x_1 + x_2 - 2x_3 = 5

x_1 - x_2 + 4x_3 = -2

2x_1 + 3x_3 = 2.5

import numpy as np
from scipy.linalg import solve
a = np.array([[3, 1, -2], [1, -1, 4], [2, 0, 3]])
b = np.array([5, -2, 2.5])
x = solve(a, b)
print(x)

 输出结果:

[0.5 4.5 0.5]

摘自:http://blog.csdn.net/zuyuanzhu/article/details/21185995


以上是关于python求解线性规划问题,百度后发现了scipy模块,optimize,新手希望大神能写个实例,例子如下:的主要内容,如果未能解决你的问题,请参考以下文章

如何通过 SCIP 求解器获得 Google OR-Tools 和 Python 中的相对 MIP 差距?

OR-Tools / SCIP - 如何使用指标约束来解决 MIP 问题?

在Windows上安装SCIP for Python不再适用

PYQT5项目实践|实现Python+cplex 求解模型后,写入GUI小程序中,具体实践包括: CPLEX 的 求解整数规划模型和求解结果以表的形式输出在GUI界面中

如何用python结合cplex求解混合整数规划问题

Excel规划求解无法使用