简介
建模是一种解决复杂问题的强大方法。依据图书 Modeling Languages in Mathematical Optimization(参 阅 参考资料)的叙述,模型用于:
解释现象
进行预测
评估关键因素
识别极限
分析折衷方法
在 业界,Microsoft Excel 等电子表格软件常常是建模问题的首要选择。现在,电子表格通常非常直观,但它们在解决大型问 题上存在着局限性。如果您是开发人员,那么您可能会发现编写脚本来解决建模问题会更有效,因为您可以轻松地将脚本集 成到其他系统中。本文将介绍使用 Pyomo 库在 Python 应用中实现线性优化的基础知识。
入门
首先要安装 Pyomo。Pyomo 是 Coopr 的一个中心组件,而 Coopr 是 Python 软件包的集合。您可以下载 coopr_install 脚本,在使用 Python 解释器运行它时,它会创建一个 Python 虚拟环境。
创建一个名为 “coopr” 的相对目录:
noahs -MacBook-Air% python coopr_install
使用下面的命令启动 Pyomo,这会将该相对目录和它的可执行文件放在您的 路径中:
noahs-MacBook-Air% source coopr/bin/activate
使用 Pyomo "--help 命令获取使用 pyomo 的帮助:
(coopr)noahs-MacBook-Air% pyomo --help
您需要一个编译器来使用虚拟 Python 环境构建器 (virtualenv) 和 Pyomo。在 OS X 上,使用 XCode Developer Tools 命令行工具。在 Linux 上,使用 GNU Compiler Collection (GCC)。初始化这个虚拟环境后,可通过以下两种方式之一使用 Pyomo 解决问题:
使用 Pyomo 命令行 工具:
(coopr)noahs-MacBook-Air% pyomo my_problem.py --solver=glpk
或者,将初始化代码嵌入您的脚 本中,通过 Python 解释器运行它:
清单 1. 在一个脚本中调用 Pyomo
#This is an optional code path that allows the script to be run outside of #pyomo command-line. For example: python wyndor.py if __name__ == '__main__': #This replicates what the pyomo command-line tools does from coopr.opt import SolverFactory opt = SolverFactory("glpk") instance = model.create() results = opt.solve(instance) #sends results to stdout results.write()
Pyomo 假设您至少安装了一个解算器 (solver)。GNU Linear Programming Kit (glpk) 是 默认的解算器。请参阅您希望使用的解算器的安装说明。然后确保 Pyomo 能够在它的路径上找到此解算器。
以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索python
, 问题
, 脚本
, 命令
, 一个
, virtualenv虚拟环境
, python处理excel表格
, python虚拟环境
解释器
有创意的解决复杂问题、创造性地解决复杂问题、解决复杂问题的例子、创造性解决复杂问题、解决复杂问题的能力,以便于您获取更多的相关知识。