我是Gurobi和Python的新手。我试图解决一个简单的混合二进制问题,但有一些错误。 我对问题的定义如下, 我想要变量u1,1,u2,1,u3,1和u1,2,u2,2,u3,2,类似于变量p。我想添加上面的约束,但有一些错误说我的表达式不正确。 u=m.addVars([1, 2, 3], [1, 2], vtype=GRB.BINARY)
p=m.addVars(3,2,lb=0.0)
m.addConstrs(p[i,j]<= 30*u[i,j]
for i in range(3)
for j in range(2))
m.ad
我试图弄清楚如何用Python为Gurobi编写这个约束。
这条路对吗?
model.addConstr(
(gp.quicksum(a[i,r]*y[r] for i in range (len(n))) for r in range(len(R)))==1 , name='firstConst')
我试图设置一个MIP开始于Gurobi MILP解决方案。我有一组二进制变量:
tupledict_m = master.addVars(list_m, name="m", vtype=GRB.BINARY)
如果主模型是Gurobi模型,则list_m是整数的元组。我运行以下命令来设置起始值:
for i in list_m: tupledict_m[i].start = bool(m_values[i])
对于浮点数据类型,m_valuesi为1.0或0.0。在那之后,如果我打印:print([tupledict_m[i].start for i in list_m
使用该模型解决运输问题的解决方案:
m = Model("transport_problem_2")
flow = {}
for c in cities:
for b in bases:
flow[c,b] = m.addVar(obj=distance[c,b], name='flow_%s_%s' %(c,b))
m.update()
for c in cities:
m.addConstr(quicksum(flow[c,b] for b in bases) <= supply[c], 'supply_%s
我试图用networkx创建一个颜色与边缘相关联的图形。每条边都应该有所有的颜色,但只有一种会被选择。
Z = [0, 1, 2, 3, 4, 5, 6]
for colored_arc in ((u,v,z) for u,v in G.edges() for z in Z):
G[colored_arc[0]][colored_arc[1]][colored_arc[2]] = colored_arc
其中u,v是节点,z是颜色。这就是结果
for u,v in G.edges():
for z in Z:
print(G[u][v][z])
(1, 2
我正在使用Gurobi和Julia一起创建一个线性规划,如果变量被包含重复元素的列表索引,我将很难添加变量。具体来说,我试图执行以下命令:
@variable(model, materialResources[[1, 1]])
其中模型是我在Gurobi中初始化的模型。
model = Model(with_optimizer(Gurobi.Optimizer, OutputFlag=0));
程序向后吐出以下错误消息:
ERROR: LoadError: Repeated index 1. Index sets must have unique elements.
如果materialRes
我想在Gurobi中建立一个目标函数来最小化x^2 + y^2。我已尽我所能提供以下例子:
import gurobipy as gbPy
model = gbPy.Model()
A = [1, 2, 3, 4, 5]
B = [1, 2, 3]
x = model.addVars(5, lb = 0)
y = model.addVars(3, lb = 0)
for i in range(len(x)):
model.addConstr(x[i] >= A[i])
for i in range(len(y)):
model.addConstr(y[i] >
我正在学习如何使用Python在Gurobi中解决组合优化问题。我想知道读取csv文件以将数据用作模型参数的最佳选项是什么。我正在使用'genfromtxt‘来读取csv文件,但我在使用它进行约束构造时遇到了困难(Gurobi不支持这种类型-请参阅错误)。
这里是我的代码和错误消息,my_data由4列组成:节点索引、x坐标、y坐标和最大度数。
from gurobipy import *
from numpy import genfromtxt
import math
# Read data from csv file
my_data = genfromtxt('prob2
下面是我制作st的方法
st = {}
cursor.execute('select * from store limit 6')
for row in cursor.fetchall():
st[row[0]] = row[0], row[1]
下面是一种简单的方法来了解我是如何尝试获取元组的第一个元素的:
for i in len(st):
print st[i][0]
它告诉我type "int" is not iterable。
我实际想要使用它的地方在下面:
costtotal = m.addVars(st[i][0], dc[i][
我的问题:迭代Gurobi "Var“决策变量创建TypeError:'<‘不支持’在'Var‘和’int‘的实例之间,和之间存在指数(即**/ pow())。
关于Gurobi优化的关键信息:
目标函数:对于三个项目,最大化(价格*期望值)之和
期望值通过两个定义的公式计算:
1) PDF =概率密度函数
2) EV =期望值,它是PDF在特定积分上的积分。
决策变量"upperBound“应使该积分的上界最大化,下界为0。
模式如下:
from gurobipy import *
import pandas as pd, n
我正在使用Gurobi 9.0.0和Python API来解决MIP问题。我被困在表达一个基于另一个变量定义的变量上。 具体地说,我为一定范围的i定义了一个变量x[i]。现在我想创建一个变量y[i],它是x[i]和x[i+1]在定义的i范围内的绝对区别。最终目标是最小化目标中所有i的最大y。 我尝试按如下方式定义该变量: y[i] = model.addVar(abs_(x[i] - x[i+1]) for i in range(i_range - 1)) 但是Gurobi抛出了一个错误 File "model.pxi", line 2562, in gurobipy.Mod
我有以下公式需要使用Gurobi进行优化来实现:See here for formula 下面是使用Gurobi Python API的代码: from gurobipy import *
m=Model()
# Create variables
alphak = m.addVars(S, B, b, a, vtype=GRB.BINARY,name="alphak")
# Set objective
obj1=quicksum(quicksum(quicksum(int((quicksum(alphak[s,B0,f,t]*alphak[s,k,f,t] for k i
我试图用Gurobi来解决一个线性规划问题,尽管我在第一个约束中已经有不相容的维度了。我的向量b的形状为(3,1),我的决策变量lamb_obj的形状为(3,)。有人能帮我解决这个尺寸不协调的问题吗?
这个描述了我的线性规划问题。
第一个约束是由两个乘数之和相加的向量乘法。我的代码如下所示:
import gurobipy as gp
from gurobipy import GRB
from gurobipy import *
import numpy as np
import numpy.random as rd
import matplotlib.pyplot as plt
import
所以我对gurobi是个新手,我决定开始使用它来解决一个众所周知的问题,即回归。我找到了this官方笔记本,在那里解决了一个L0惩罚的回归模型,我只提取了回归模型的一部分。然而,当我用gurobi解决这个问题时,我得到了一个非常奇怪的解决方案,与实际正确的回归解决方案完全不同。 我正在运行的代码是: import gurobipy as gp
from gurobipy import GRB
import numpy as np
from sklearn.datasets import load_boston
from itertools import product
boston = lo
致ADM:请不要删除我的问题,这是关于gurobi-python中的点积,不是为了numpy! 在过去,我使用m.addvars来添加决策变量。 我的目标函数是一个大规模求和,需要多次运行。 我发现构建目标函数需要很长时间。 代码如下: import gurobipy
M = gurobipy.Model()
# set decision variables
x = M.addVars(n, m, vtype=gurobipy.GRB.BINARY, name='x')
# n and m are very large
#
在Zeppelin (甲骨文数据演播室)与Gurobi一起工作,我一直得到一个列表索引错误。这是代码和错误消息。对于Gurobi来说,我非常感谢对如何解决这个问题的任何有用的投入。
当将变量(数量)添加到模型(deal)时,似乎出现了错误。
%python
import numpy as np
import pandas as pd
import gurobipy as gp
from gurobipy import *
from rsecommon.analytics.gurobi import *
try:
instance = rseenv.RseGurobiEnv.getIn
我正在使用Python/Gurobi优化一个问题。我使用以下方法生成变量:
x = f.addVars(DR_dicts.keys(), vtype=GRB.BINARY, name="x")
为了显示决策变量的最优值,我使用:
for v in f.getVars():
if (abs(v.x) > 0.99):
print(v.varName, v.x)
我得到以下解决方案:
x[2,37] 1.0
x[2,41] 1.0 etc.
如何访问值2,37和2,41?我需要使用这些来计算一些值,但是检索它们似乎很困难。
我试图用networkx和gurobi来解决图着色问题的一些约束。对于每个I-∈V,我们定义了以下一组区间。每个区间l,u∈Ⅱ表示顶点i的边缘集的可能的最小颜色l和最大颜色u。另外,对于每个k∈K,我们表示顶点i∈V的区间集,其中包括颜色k:
这就是我写的所有代码:
import networkx as nx
import gurobi as gb
from itertools import combinations, chain
import pygraphviz as pygv
import os
import matplotlib.pyplot as plt
from IPython.
我试图通过添加变量/约束并按照重新求解更新的模型来修改模型。
问题是,对于变量而言,这两种情况都会导致属性错误失败:
Traceback (most recent call last):
File "seqdesign.py", line 98, in <module>
main()
File "seqdesign.py", line 71, in main
problem._solver.add_var(problem._model.McBernoulliTrials)
File "/home/edo/minic