so neu zu Gurobi und Optimierung. Ich möchte dies ein einfaches Linienmodell lösen, aber scheint, dass ich einen Fehler gemacht habe, den ich nicht erkennen kann. so unter drei Funktionen, die jeweils spezifischen Aufwand zu implementieren verbrauchen Ich möchte diejenigen mit dem höchsten Wert bei einer bestimmten Kapazität auswählen. Eigenschaft, Wert, Mühe f1,3,2 f2,5,1 f3,1,2 Kapazität = 3Gurobi lineare Programmierung mit Python
hier mein Code:
from gurobipy import *
m = Model("C1")
featuresname, value, effort = multidict({
"F1":[3,2],
"F2":[5,1],
"F3":[1,2]
})
featureset = {}
for f in featuresname:
featureset[f] = m.addVar(obj=value[f], name=f)
m.modelSense = GRB.MAXIMIZE
m.update()
capacity = 3
m.addConstr(quicksum(effort[f] * featureset[f] for f in featuresname) <=capacity,f)
result = m.optimize()
print(result)
if m.status == GRB.Status.OPTIMAL:
print('Optimal objective: %g' % m.objVal)
elif m.status != GRB.Status.INFEASIBLE:
print('Optimization was stopped with status %d' % m.status)
ich diese Beispiele alle lesen http://www.gurobi.com/resources/examples/example-models-overview aber kann das Problem nicht finden .... können Sie mir bitte einige Hinweise geben?
Code sieht OK für mich. Was erwarten Sie, dass das nicht stimmt? – vcp