Hoe toegang doelfunctiewaarde in pyomo?

stemmen
0

Ik ben nieuw in pyomo. En ik ben op zoek naar de output van de objectieve waarde van mijn pyomo model. Ik heb toegang tot de variabele waarden, maar ik kan geen toegang tot de objectieve functie waarde te krijgen. Mijn codes zijn:

   instance = model.create_instance(data)

opt = SolverFactory('cplex')
results = opt.solve(instance)
instance.solutions.store_to(results)
results.write()
# instance.display()

# output the solution
var_val = []
for v in instance.component_data_objects(Var):
    var_val.append(int(v.value))

obj_val = value(instance.obj)

En de laatste regel geeft fout info:

    obj_val = value(instance.obj)
NameError: name 'value' is not defined

Maar ik kan duidelijk zien de waarde van result.write():

 Message: None
  Objective:
    obj:
      Value: 104728.80233047833
  Variable:
    x[0,1]:
      Value: 1569
    x[1,0]:
      Value: 1569
    x[1,1]:
      Value: 206
    x[2,2]:
      Value: 230
    x[2,3]:
      Value: 213
    x[3,2]:
      Value: 213

Alle hulp zou werkelijk gewaardeerd worden !!

De vraag is gesteld op 19/03/2020 om 21:55
bron van user
In andere talen...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more