首页 文章
  • 1 votes
     answers
     views

    获取Pyomo MIP中约束的边际值(对偶)

    我想访问pymo中使用Pyomo开发的MIP问题的双变量 . 据我所知,双重不是为MIP问题创建的,但在我看来应该有一个解决方案 . This应该可以用作最小的工作示例,我自己使用Gurobi . 我可以看到两种可能的解决方案; 1.修复二进制/整数变量并解析为LP并重新创建双重变量 . 2.仅为必要的约束获得双重 . 我无法找到尝试第二种方法的方法,因为我做的第一种方法是: m.solve()...
  • 1 votes
     answers
     views

    在pyomo中如何从目标函数中提取二阶导数

    我正在使用pyomo,并且已经定义了一个模型,具有与之相关的目标函数 . 模型解决后,目标函数附加了某些参数 . 所以如果我有一个多索引变量 [x1, x2, x3] ,我的二次目标函数会看起来像这样: (x1^2 + 13*x2^2 + 10*x3^2) + (2*x1 +......) . 我的问题是:鉴于我实际上可以从目标中以字符串格式访问此表达式,有没有办法获得关于所有变量的此函数的二阶...
  • 0 votes
     answers
     views

    如何用Pyomo优化sklearn或tensorflow模型(wrt输入变量)的函数?

    我有一个优化的功能,涉及sklearn或tensorflow模型,相对于sklearn或tensorflow模型的输入变量 . 由于我的目标/损失函数是非线性的,并且由于我的一些输入变量(我正在优化的wrt)是整数,所以我不能使用tensorflow中可用的基于梯度的优化方法 . 所以,我试图找到一个Pyomo的解决方案,它做非线性混合整数编程 . 然而,当我在Pyomo:Pyomo – Opti...
  • 0 votes
     answers
     views

    与gurobi的Pyomo:找不到opt.solve,在文件<stdin>中返回SyntaxError:非ASCII字符'\xc3'

    经过数小时和数小时跟踪错误并尝试各种方式,我希望有人会有一个想法 . 我正在用Pyomo和gurobi作为求解器实现优化 . 以下代码:#coding = utf-8 from itertools import product import matplotlib.pyplot as plt from CentralOptimizationModel import create_central_o...
  • 0 votes
     answers
     views

    在Python的Pymo扩展上安装Couenne解算器

    如何安装Pyomo的&quot;Cuenne&quot;优化器扩展?我从以下网址下载了二进制文件:https://www.coin-or.org/download/binary/Couenne/ 以下是来自Pyomo网站的关于如何解决问题的官方指南,ASL: 上面发生的基本工作流程可以概括为:创建一个ASL求解器插件,该插件使用shell搜索PATH中出现的ipopt可执行文件 . 将Pyomo...
  • 2 votes
     answers
     views

    使用Python PYOMO中的GAMS / CPLEX

    我注意到Pyomo 5.3提供了一个GAMS解算器插件 . https://github.com/Pyomo/pyomo/blob/master/pyomo/solvers/plugins/solvers/GAMS.py 这非常令人兴奋,因为我们有一个GAMS / CPLEX许可证,我们可以使用CPLEX作为解算器,但只能通过GAMS . 使用新的Pyomo-Gams界面,从我的理解应该可以在P...
  • 1 votes
     answers
     views

    在使用couenne求解器的spyder中使用logof函数

    我在一个简单的MINLP模型中有以下约束: model.cm2=Constraint(expr = model.xB2 == log(1.0+model.xA2)) 当我调用bonmin(来自AMPL的windows64二进制发行版)时,这种方法有效 当切换到couenne求解器时,我需要转换为log10 base model.cm2=Constraint(expr = model.xB2 ==...
  • 6 votes
     answers
     views

    使用Anaconda(Python)在Windows上安装Pyomo

    我想用Pyomo (Coopr)解决LP和ILP但不幸的是我是新手,我无法正常运行它 . 我已按照its instructions安装了Pyomo(Coopr) pip install Coopr 我可以毫无问题地导入模块: $ python Python 2.7.5 |Anaconda 1.8.0 (64-bit)| ... Type &quot;help&quot;, &quot;copyr...
  • 1 votes
     answers
     views

    如何在pyomo中将Integral定义为目标函数?

    我希望能够在 pyomo 中定义一个积分作为目标函数的一部分 . 我无法弄清楚积分需要什么样的表达式 .这是我最好的猜测: model = ConcreteModel() model.t = ContinuousSet(bounds = (0,1)) model.y = Var(model.t) model.dydt = DerivativeVar(model.y, wrt=(model.t)) ...
  • 4 votes
     answers
     views

    pyomo的性能生成具有大量约束的模型

    我对Pyomo的性能感兴趣,以生成具有大量约束和变量(约10e6)的OR模型 . 我目前正在使用GAMS来启动优化,但我想使用不同的python功能,因此使用Pyomo生成模型 . 我做了一些测试,显然当我编写模型时,每次约束实例化时都会调用用于定义约束的python方法 . 在进一步实现之前,我想知道是否存在一种基于numpy数组数据直接创建约束块的方法?从我的观点来看,对于大型模型,通过块构造...
  • 0 votes
     answers
     views

    将索引变量的值设置为索引表达式 - pyomo

    我正在开发一个项目,要求我使用python lib进行编码 . 叫做pyomo . 我需要将索引变量的值设置为索引表达式 . 因此总共有2个模型和1个创建实例的脚本 . 第一种模式: m.i = [1,2,3] # i=1,2,3 m.j = [1,2,3] # j=1,2,3 m.index = Set(within=m.i*m.j) # m.index = [i]*[j] ...
  • 0 votes
     answers
     views

    Pyomo说我的模型没有定义

    嗨,我正在测试我的Pyomo安装,当我尝试解决任何优化问题时,它会返回一个错误,内容如下: “退出pyomo求解:未定义模型,模块test.py中未提供'pyomo_create_model'” 我正在执行 pyomo解决test.py diet.dat --solver = glpk from pyomo.environ import * infinity = float('inf') ...
  • 0 votes
     answers
     views

    并行优化pyomo-gurobi

    我对Pyomo和优化都很新 . 我试图解决一个迭代的局部搜索算法,我必须多次解决“相对较小”的优化问题 . 目前,我已经实现了一个循环,每次,我制定优化问题并用Gurobi解决它 . 但是,我想知道是否有一种“并行化”的方式来解决这个问题,因为本地搜索的结果并没有相互影响 . 我查看了ThreadPoolExecutor和ProcessPoolExecutor . 第一个没有提高速度,而第二个给我...
  • 0 votes
     answers
     views

    基于参数更改或AMPL Python API的Pyomo迭代

    我在Pyomo模型的迭代运行中遇到了麻烦 . 我的模型是一天的调度模型 - 24小时 . 例如,我想运行它2次,这意味着我运行了两天(第1天,第2天) . 我想要更改的参数是 model.SPV = Param (model.Time) . 第一天的参数如下所示: param : SPV := 1 0 2 0 3 0 4 0 5 0.003 6 0.067 7 0...
  • 2 votes
     answers
     views

    求解混合互补模型时出错

    直接使用PATH求解器,我无法解决下面提出的问题 . 原始问题来自https://prod.sandia.gov/techlib-noauth/access-control.cgi/2015/155584.pdf,似乎声称问题已解决 . 使用非线性形式可以解决 . 无论这是pyomo还是PATH中的版本问题,都很难说清楚 . 我正在运行pyomo 5.5.x和pathampl来自http://pa...
  • 0 votes
     answers
     views

    “没有包'coinhsl'发现”:IPOPT编译并通过测试,但是pyomo无法找到它?

    我不知道问题出在我和Pyomo.DAE之间,还是在我和IPOPT之间 . 我在Windows上的Ubuntu(WSL)上的Bash命令行界面中执行此操作 . 当我跑: JAMPchip @ DESKTOP-BOB968S:〜/ examples / dae $ python3 run_disease.py 我收到以下输出: 警告:找不到'ipopt'可执行文件,这是solver ipopt ...
  • 1 votes
     answers
     views

    在Pyomo中,是否可以基于多个表达式编写目标函数或约束?

    我在Pyomo中很新,我尝试使用几种方法编写目标函数和模型的约束 . 实际上,我想基于在不同python脚本中实现的不同对象类型的几个贡献来构造目标函数/约束 . 为此,我使用了pyomo Expression对象 . 我不知道这是否是正确的使用对象 . 为了说明我的问题,这里是一个实现我想要做的事情的示例代码: import pyomo.environ model = pyomo.environ...
  • 0 votes
     answers
     views

    使用pyomo解决的简单示例中目标函数的值不正确

    我最近开始使用pyomo进行研究,我正在研究它的用法“ Pyomo-Optimization modelling in Python ” . 由于我的研究与热交换器网络有关,我目前正在尝试构建和解决一个非常简单的问题,然后再扩展到更复杂和更有意义的问题 . 这是我输入pyomo的模型 . from coopr.pyomo import* model=AbstractModel() Tcin1=3...
  • 0 votes
     answers
     views

    在Pyomo模型中将时间作为约束中的显式变量

    我正在使用PyOMO模拟半间歇反应 . 考虑一个描述半间歇反应器的ODE系统,其中一个反应物以给定的体积流量供给t1单位时间,反应继续进行直至倾向,并且显然t1 &lt;倾向 . 要指定流中的停止,我可以使用条件规则(假设t1 = 3.5 * 60): def _vol_flow_in_schedule(mod,t): if t&lt;=3.5*60: return mod.vol_flow...
  • 0 votes
     answers
     views

    最大化2点与pyomo ^之间的距离

    我想最大化pyomo中2点之间的距离 . 我只知道其中一点: model.paramNum=RangeSet(0,2) model.x=Var(model.paramNum,within=Integers) def obj_rules(model): distance=sqrt(sum(GetElement(realPoint[i])-1*model.x[i] for ...
  • 3 votes
     answers
     views

    SymPy无法解析包含多索引变量引用的pyomo表达式

    我正在尝试解析使用SymPy优化pyomo模型得到的表达式 . 该模型包含简单和索引变量引用,它们在结果表达式中表示如下:simple: simple_var indexed: indexed_var[index_name] 其中index_name是来自pyomo定义集的值 . 我注意到在尝试解析生成的表达式时,SymPy始终因此错误而失败: 回溯(最近一次调用最后一次):Blockquot...
  • 1 votes
     answers
     views

    访问pyomo约束中发生的所有变量

    我正在研究python中需要修改具体(混合整数非线性)pyomo模型的算法 . 特别是,我需要知道 general algebraic constraint 中存在哪些变量 . 例如 . 对于约束 model.con1 = Constraint(expr=exp(model.x_1) + 2*model.x_2 &lt;= 2) 我想做一个查询(如 model.con1.variables ),它...
  • 0 votes
     answers
     views

    给定点处的非线性pyomo约束的梯度

    I(重复地)需要在给定点处的非线性pyomo约束 con 的数值梯度信息(即,相应的pyomo模型的变量都被设置为特定值) . 我已阅读this post并决定(稍加修改)行 from pyomo.core.base.symbolic import differentiate var_list = list(model.component_objects(Var, active=True)) g...
  • 3 votes
     answers
     views

    Pyomo:错误:评估表达式:未初始化的NumericValue对象没有值

    我正在研究Pyomo优化脚本 . 它具有索引参数和变量以及8个约束的中等复杂性 . 如果我将决策变量保留为没有初始值,那么对于涉及决策变量的约束,我会得到“错误:评估表达式:未初始化的NumericValue对象没有值”错误 . 如果我将决策变量初始化为1或0,则求解器(glpk)返回状态:最佳和目标函数值= 0.所有决策变量也设置为0.我正在寻找有关如何解决此问题的想法 . 下面是相关代码(没有...
  • 0 votes
     answers
     views

    用Pyomo解决MINLP问题 . 是否有关于'Starting feasible solution'的任何设置?

    我的环境是:Python 3.5.2,Anaconda 4.2.0(32位),Pyomo 4.4.1(VOTD)(W7上的CPython 3.5.2),男爵17.3.31 我目前正在与Pyomo和Baron进行优化作为求解器 . 为了测试,使用minlp问题 . 我可以通过运行main.py代码获得最佳解决方案,如下所示 . 每次运行代码时,在第一次运行之后,我将获得与第一次运行相同的解决方案 ....
  • 0 votes
     answers
     views

    (POMOMO)我想在pyomo约束中设置限制日常 生产环境 的约束

    我已经努力解决了这个问题,这在GAMS文件中是一个简单的解决方案,但我不能用PYOMO来做 . 我的问题是,我希望将 生产环境 限制作为日常 生产环境 ,作为某一代人的约束 . 生成是可变的,每小时设定8760,每天这一代的总和应低于一定限度 . 在GAMS中,我可以使用以下代码轻松解决它; set t hours in a year /1*8760/ ; set d day /1*365/...
  • 0 votes
     answers
     views

    寻找Pyomo提供了数学函数

    在Pyomo中,我想解决以下最小化问题,该问题与两个音频文件的播放速率和时序相匹配: import pyomo from pyomo.environ import * from pyomo.opt import SolverFactory import soundfile as sf import math import numpy #Create Model: model = Concrete...
  • 0 votes
     answers
     views

    SCIP可执行Pyomo

    我希望与Pyomo一起使用SCIP求解器来解决MILP非线性问题,因为它是那里最快的求解器之一 . 但是当我在库的SolverFactory函数中将解算器设置为“scip”时,我收到错误,说“scip”可执行文件未找到 . 我知道要使用任何解算器,我们需要在PATH中使用它 . 我尝试过像Bonmin,Couenne这样的不同求解器 . 他们的可执行文件可以从AMPL webstie本身下载,但我...
  • 1 votes
     answers
     views

    将SCIP设置为PYOMO求解器时出错

    我正在尝试解决在PYOMO中设置的MILP问题,即SCIP作为求解器 . 我使用python ANACONDA解释器从PyDev中运行问题 . 我可以运行并解决其他求解器的问题,即CBC,GLPK和IPOPT . 但是,当使用SCIP作为求解器时,它不起作用 . 看来SCIP / AMPL接口有问题......任何人都可以帮忙吗? 以下是有关错误提示和系统配置的一些详细信息 . 我试过'scip...
  • 1 votes
     answers
     views

    在Pyomo / AMPL中定义多个模型

    我试图在 Pyomo/AMPL 中设置(并解决)多个优化问题 . 为此,我需要首先为 AMPL 定义模型: model model_1.mod model model_2.mod model model_3.mod ... model model_n.mod 对于 Pyomo : model_1 = ConcreteModel() model_2 = ConcreteModel() ...

热门问题