Python中pupl的基础操作
目录
- 1. 安装Pupl
- 2. 基础操作
- 2.1 样例
- 2.2 设置优化方向
- 2.3 写入目标函数
- 2.4 变量设置:01变量
- 2.5 变量设置:整数变量
- 2.6 变量设置:连续变量
- 2.7 变量设置:变量上下限
- 2.8 写入不等式约束
- 2.9 写入等式约束
1. 安装Pupl
conda install --channel https://conda.anaconda.org/conda-forge pulp
注:如果直接使用 conda install pulp 或是 pip install pulp 总是出现如下错误,使用以上操作可以成功安装。(借鉴自:https://blog.csdn.net/winter_python/article/details/108085295)
2. 基础操作
2.1 样例
import pulp
MyProbLP = pulp.LpProblem("LPProbDemo1", sense=pulp.LpMaximize)
x1 = pulp.LpVariable('x1', lowBound=0, upBound=7, cat='Continuous')
x2 = pulp.LpVariable('x2', lowBound=0, upBound=7, cat='Continuous')
x3 = pulp.LpVariable('x3', lowBound=0, upBound=7, cat='Continuous')
MyProbLP += 2*x1 + 3*x2 - 5*x3 # 设置目标函数
MyProbLP += (2*x1 - 5*x2 + x3 >= 10) # 不等式约束
MyProbLP += (x1 + 3*x2 + x3 <= 12) # 不等式约束
MyProbLP += (x1 + x2 + x3 == 7) # 等式约束
MyProbLP.solve()
print("Status:", pulp.LpStatus[MyProbLP.status]) # 输出求解状态
for v in MyProbLP.variables():print(v.name, "=", v.varValue) # 输出每个变量的最优值
print("F(x) = ", pulp.value(MyProbLP.objective)) #输出最优解的目标函数值
#= 关注 Youcans,分享原创系列 https://blog.csdn.net/youcans =
(样例借鉴自:https://blog.csdn.net/guolindonggld/article/details/89950877)
2.2 设置优化方向
- 最大化
MyProbLP = pulp.LpProblem("LPProbDemo1", sense=pulp.LpMaximize)
- 最小化
MyProbLP = pulp.LpProblem("LPProbDemo1", sense=pulp.LpMinimize)
2.3 写入目标函数
MyProbLP += 2*x1 + 3*x2 - 5*x3 # 设置目标函数
2.4 变量设置:01变量
x = LpVariable("x",cat='Binary')
2.5 变量设置:整数变量
x = LpVariable("x",cat='Integer')
2.6 变量设置:连续变量
x = pulp.LpVariable('x', cat='Continuous')
2.7 变量设置:变量上下限
x = pulp.LpVariable('x', lowBound=0, upBound=7, cat='Continuous')
2.8 写入不等式约束
MyProbLP += (x1 + 3*x2 + x3 <= 12) # 不等式约束
2.9 写入等式约束
MyProbLP += (x1 + x2 + x3 == 7) # 等式约束
Python中pupl的基础操作相关推荐
- python 新建文件 hdfs_python基础操作以及hdfs操作
一.前言 作为一个全栈工程师,必须要熟练掌握各种语言...HelloWorld.最近就被"逼着"走向了python开发之路,大体实现的功能是写一个通用类库将服务器本地存储的文件进行 ...
- Python中的File(文件)操作
Python中的File(文件)操作 针对磁盘中的文件的读写.文件I/O I 输入(input) O输出(Output) 文件操作步骤:1.打开文件 2.读写文件 3.关闭文件 写入文件的操作:(把大 ...
- 详解Python中的File(文件)操作
目录 Python中的File(文件)操作 写入文件的操作: 读取文件的操作: 一.文件操作相关函数 1. open() 打开文件 2. seek() 设置文件指针的位置 3. write() 写入内 ...
- Python中常用的一些操作总结(未完待续)update @ 2017-5-18
写在前面的话 其实也没有什么可以写的,或者说完全没有价值.因为你只要动一动手指就可以在Google上找到我要写的这些东西.只是我还不习惯好久没有碰我的blog,但是我又不想写没有价值的东西.或许有价值 ...
- python对excel某一列去重-「总结篇」Python中所有的Excel操作技巧
原标题:「总结篇」Python中所有的Excel操作技巧 Python对于Excel的操作是多种多样的,掌握了相关用法就可以随心所欲的操作数据了! 操作xls文件 xlrd(读操作): import ...
- python使用方法-在Python中使用next()方法操作文件的教程
next()方法当一个文件被用作迭代器,典型例子是在一个循环中被使用,next()方法被反复调用.此方法返回下一个输入行,或引发StopIteration异常EOF时被命中. 与其它文件的方法,如Re ...
- python脚本怎么使用_在Python中使用next()方法操作文件的教程
next()方法当一个文件被用作迭代器,典型例子是在一个循环中被使用,next()方法被反复调用.此方法返回下一个输入行,或引发StopIteration异常EOF时被命中. 与其它文件的方法,如Re ...
- Python中的数据遍历操作
1 前言 今天在学习FaceBoxes~ 看到一个语句不是很懂, 就是这里面的zip操作,感觉Python中的数据遍历的语句还是挺多样的,于是想着用笔记记录一下~ 2 Python中的数据遍历操作 2 ...
- Python中有关文件的操作
Python中有关文件的操作 1.文件路径的书写 import os #这里返回的值是字符串 path = os.path.join(root_dir,file_dir) 2.列出文件夹中的文件 im ...
最新文章
- 独家 | 探索性文本数据分析的新手教程(Amazon案例研究)
- 全球及中国塑料制品行业发展形势及产量需求前景研究报告2021版
- 装好了ubuntu,w2k却无法启动了,:(
- mysql 存储过程游标删除_mysql数据库存储过程游标循环,提前退出
- CentOS 6.5 Zabbix-agent3.2 安装 1.0版
- requirejs加载顺序_前端模块化之AMD — Requirejs的使用
- 测试网内主机存活状态
- css sprite 介绍和实例
- Android开发笔记(十六)秋千摇摆动画SwingAnimation
- spring与jpa整合 简化persistence.xml配置文件 使用属性文件 数据源dbcp访问数据库...
- Oracle PLSQL语句实例
- 智慧食堂项目策划书(商业计划书/立项计划)
- 使用BMfont制作含有中文图片的.fnt格式字体合图
- 阳光牧场助手 阳光牧场外挂
- python股票量化交易系统源码_经典的股票量化交易策略(含源码)
- php怎么定义字符串变量的值,php字符串变量怎么替换
- 我是一只在IT线上苦苦挣扎的小菜鸟
- 我的自白--道路与梦想
- css3字间距的控制
- 从普通程序员到身价过百亿:追求长期价值的耐心,决定了你能走多远
热门文章
- word2019安装mythtype后出现“不受信任的位置及禁用宏”问题解决办法
- perl 处理 回车 换行符
- 工程师笔记|STM32U5带OEM Key保护的RDP降级
- 荣誉系统排名是整个服务器,魔兽世界60年代的PVP荣誉系统、军阶对照表和各职业的徽记效果...
- 产品经理的竞品分析报告入门
- 收藏 | Android开发从入门到精通系列书籍资料最全攻略!!!(最新更新)
- gbase 8d客户端配置文件
- matlab中绘制一个sin函数曲线
- 推荐四款可视化工具,解决99%的可视化大屏需求
- gis处理提示唯一值过多