我整理了一些关于[ ]的项目学习资料(内附讲解~~),与大家分享、学习:
本文介绍了三种常见的线性规划工具包:scipy、pulp、cvxpy,后两个包还支持整数规划()、0.1 规划()、混合整数线性规划(MILP)。
1. Scipy 用于线性规划 1. Scipy 简介
scipy库是一个非常强大的包,可以通过调用以下函数来解决简单的线性规划:
scipy..(c,A_ub=无,b_ub=无,A_eq=无,b_eq=无,
=无, ='', =无, =无)
c 应该是指求最大值的函数的系数数组,A_ub 应该是不等式的未知量的系数矩阵,【注意:这里的不等式指的是=,所以要乘以一个负号】。A_eq 是等式的未知量的系数矩阵。B_ub 是不等式的右边,B_eq 是等式的右边。如果 ,是指各个未知量的范围。
2. 案例
话题:
代码示例:
登录并复制
from scipy import optimize as op
import numpy as np
c=np.array([2,3,-5])
A_ub=np.array([[-2,5,-1],[1,3,1]])#注意是-2,5,-1
B_ub=np.array([-10,12])
A_eq=np.array([[1,1,1]])
B_eq=np.array([7])
# 上限7是根据约束条件1和4得出的
x1=(0,7)
x2=(0,7)
x3=(0,7)
res=op.linprog(-c,A_ub,B_ub,A_eq,B_eq,bounds=(x1,x2,x3))
print(res)
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
结果:
2. Pulp 1. Pulp 简介
scipy库提供了简单的线性或者非线性规划问题的解法,但是无法解决0-1规划问题比如背包问题,或者整数规划问题,混合整数规划问题。而pulp库可以解决以上类型的问题,并且通用性更强,编写程序的自由度也更大。
官方有很多案例和教程:
2. 案例
一些关于[ ]的项目学习资料(附有说明~~),你需要的话可以拿来参考:
扫一扫在手机端查看
我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求,请立即点击咨询我们或拨打咨询热线: 13761152229,我们会详细为你一一解答你心中的疑难。