提供对Python3的支持,同时保持与Python2的兼容性。纸浆是一个LP模型,可以生成MPS或LPFAMES,并调用GLPK,硬币CPL/CBC,CPLEX和GUROPI解决线性问题。

PuLP-py3的Python项目详细描述


版权所有J.S.Roy(js@jeannot.org),2003-2005
版权所有Stuart A.Mitchell(stu@stuartmitchell.com
版权所有gerald senarclens de grancy(oss@senarclens.eu
有关版权信息,请参阅许可文件。

注意:一旦Stuart A.Mitchell找到时间将Python3兼容性包含在原始pulp包中,这个fork将被删除。

pulp是用python编写的lp建模器。pulp可以生成mps或lp文件 并调用glpk[1]、coin clp/cbc[2]、cplex[3]和gurobi[4]来求解线性 问题。

有关示例,请参见示例目录。

纸浆需要python>;=2.5。

这些示例至少需要路径中的解算器或共享库文件。

文档位于https://www.coin-or.org/PuLP/。 一个全面的wiki可以在https://www.coin-or.org/PuLP/

使用lpvariable()创建新变量。创建变量0<;=x<;=3 >;gt;gt;x=lpvariable(“x”,0,3)

创建变量0<;=y<;=1 >>>gt;y=lpvariable(“y”,0,1)

使用lpproblem()创建新问题。创建“myproblem” >>>prob=lpproblem(“myproblem”,lpminimize)

组合变量以创建表达式和约束,并将它们添加到 问题。 >>>问题+=x+y<;=2

如果添加表达式(而不是约束),则 成为目标。 >>>>问题+=-4*x+y

选择一个解决方案并解决问题。前任: >>>>状态=问题解决(glpk(msg=0))

显示解决方案的状态 >;gt;gt;lpstatus[状态] “最佳”

可以使用value()获取变量的值。前任: >>>gt;值(x) 2.0

导出类:
  • lpproblem–线性规划问题的容器类
  • lpvariable–添加到lp中约束的变量
  • lpconstraint–一般形式的约束 a1x1+a2x2…anxn(<;=,=,>;=)b
  • lpconstraintvar–用于按列构造模型的列 建模
导出函数:
  • value()–查找变量或表达式的值
  • lpsum()–给定一个表单列表[a1*x1,a2x2,…,anxn]将构造 用作约束或变量的线性表达式
  • lpdot()–给出两个表单列表[a1,a2,…,an]和 [x1,x2,…,xn]将构造要使用的线性表达式 作为约束或变量

欢迎评论、错误报告、补丁和建议。 pulp-or-discuss@googlegroups.com

参考文献: [1]http://www.gnu.org/software/glpk/glpk.html [2]http://www.coin-or.org/ [3]http://www.cplex.com/ [4]http://www.gurobi.com/

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
JavaFX进度条从单独的函数更改而来   jvm使用java服务器选项   java在<li>元素中查找同名的最后一个链接   java问题将参数传递给不同公共类中的构造函数   如何在php中从java函数中获取字符串   java如何在Android中动态显示多个tile   java仅使用Ribbon而不使用任何服务注册表是否可以实现负载平衡?   Jersey 1.19版本的java Swagger JAXRS出现“冲突URI模板”错误   带H2数据库的java Spring boot jpa   从12:00:00到00:00:00的日期转换   Android中的java如何设置文本?   java密钥库“不支持的保护参数”   http使用Java在Java中发送httprequest。净包   SpringJava刷新数据库   java在Spring Boot应用程序中使用嵌入式MongoDb和MongoTemplate失败   java需要什么MatOfMatch对象?   xml使用Java中的合并算法将两个值合并为单个值   java SQLite数据库不保存数据为什么不工作