使用Pyomo解决复杂的问题

简介

建模是一种解决复杂问题的强大方法。依据图书 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虚拟环境
解释器
有创意的解决复杂问题、创造性地解决复杂问题、解决复杂问题的例子、创造性解决复杂问题、解决复杂问题的能力,以便于您获取更多的相关知识。

时间: 2024-12-29 02:51:27

使用Pyomo解决复杂的问题的相关文章

Python中的线性优化通过编写脚本来解决建模问题

本系列文章将展示如何利用 Pyomo 的能力集成 Python 来建模优化应用程序.本系列的第一篇文章将介绍http://www.aliyun.com/zixun/aggregation/22929.html">基础知识.第 2 部分将介绍如何添加更多工具和构建一种可伸缩的架构.第 3 部分将提供一些使用 IPython 和 pandas 进行投资分析和统计分析的实用示例. 建模是一种解决复杂问题的强大方法.依据图书 Modeling Languages in Mathematical O

解决win7系统无法将网页添加到收藏夹的方法

  许多用户在访问网站时,如果看到自己感兴趣的网页内容或网站,通常我们都会通过Ctrl+D添加到收藏夹中,但近期有部分win7系统用户,在浏览器下添加网页收藏时,却发现无法将网页添加到收藏夹,对于这一问题我们如何解决呢?下面看小编为大家提供的详细解决方法吧! 原因分析: 很多时候网址不能收藏都是由于收藏夹目录指向错误引起的,我们可以到注册表里将其修复. 操作方法: 1.在开始菜单中点击"运行",然后输入"regedit"并且回车; 2.打开注册表编辑器,依次展开[H

如何解决win7旗舰版系统下IE收藏夹无法展开的问题

近期朋友在电脑的操作过程中遇到这样一个问题,计算机中的收藏夹突然无法正常展开了,遇到这样的问题令人十分的懊恼.经过多番的研究及测试之后,总算找到了解决计算机中收藏夹无法展开问题的方法.下面就一起来分享看看如何解决win7旗舰版系统计算机中收藏夹无法展开问题吧! 操作方法: 1.使用快捷键win键+r键打开运行窗口,在运行窗口中输入"regedit"回车确认,打开注册表编辑器. 打开注册表编辑器 2.在打开的注册表编辑器中,依次展开到HKEY_CLASSES_ROOTlnkfile. 展

电脑中通过修改注册表解决网页无法添加到收藏夹的方法

  电脑中通过修改注册表解决网页无法添加到收藏夹的方法.最近有不少用户反映在电脑中出现了无法添加网页到收藏夹的问题,尝试了各种方法都无法解决这个问题.对此,在接下来的内容中,小编为大家提供了一种通过修改注册表解决网页无法添加到收藏夹的方法,大家可以参考一下. 1.按Win+R打开运行,输入regedit并按回车键; 2.在注册表编辑器依次展开HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Explorer/UserShell

解决win7系统无法进入操作中心的方法教程

  Windows操作中心是一个查看警报和执行操作的中心位置,它可帮助保持 Windows 稳定运行,不过在win7系统下,windows操作中心貌似很少用户会进入查看,不过不能因为我们不经常使用而对其不理不睬,近期有部分使用win7系统的用户向小编反映,在即的windows操作中心无法打开,对于出现该问题的用户我们应该如何解决呢?下面看小编为大家带来的解决方法! 解决win7系统无法进入操作中心的方法教程 1.首先,我们同时按下win7电脑键盘上的win+R快捷键打开电脑的运行窗口,在打开的运

解决win7系统下安全弹出U盘出现电脑重启的问题方法

  U盘是一种能够方便用户便携式存储数据的设备,U盘在我们的生活中较为广泛被使用,不过有些用户在win7系统下使用U盘时进行备份或转移资料后,在不使用U盘时,使用安全弹出U盘时出现电脑自动重启的问题,对于该奇葩问题很多用户表示不解,故此小编针对遇到该问题的用户提供了解决方法,需要的用户赶快试试吧! 解决win7系统下安全弹出U盘出现电脑重启的问题方法 1.返回到桌面位置,找到"这台电脑"图标,直接鼠标右键点击这台电脑,在出现的菜单里面选中选择设备管理器选项. 2.这样就能够打开win8

解决win7系统所有中文显示乱码的方法教程

  在win7系统下我们如果把语言操作系统界面语言修改为英文后,有部分用户的电脑中的英文字体将显示乱码的问题,对于出现该问题是因为中文不是Unicode语言,用户在将系统语言设置为英文后,语言设置的非Unicode设置出问题而导致的,故此我们需要将非Unicode的语言修改为中文语言即可解决这个问题,下面我们看下具体的操作教程吧! 解决win7系统所有中文显示乱码的方法教程 1.点击开始菜单图标并单击打开控制面板. 2.在区域和语言设置-管理中,选择更改显示语言. 3.选择管理标签,并点击更改系

解决win7系统唤醒休眠状态出现“拒绝访问”错误的方法

  windows休眠状态是指将所有运行的实时数据存储到硬盘上,并且关闭一切不必要的硬件从而节省电量,无论你所使用的windows是哪个版本,系统都能够让用户自动进入休眠状态,当然在你没有关闭休眠功能的前提下,不过在近期有部分win7用户反映,将系统从休眠状态唤醒时,出现"拒绝访问"的错误,对于该问题我们如何解决呢?下面看为您带来的解决方法! 解决win7系统唤醒休眠状态出现"拒绝访问"错误的方法 第一步.进入Win7系统后,我们在键盘中按"Win+R&q

process-Widget启动报异常。请求解决

问题描述 Widget启动报异常.请求解决 Unable to launch app or broadcast Intent process is bad act=android.appwidget.action.APPWIDGET_ENABLED 怎么回事啊!!! 开始还好好的,后来不晓得怎么了,装widget一直报这个错,不晓得抽什么风, 网上说神马卸掉重装,卸掉关机重启重装,统统都不行.... 解决方案 http://stackoverflow.com/questions/3253676/