Cum de a avea acces la o valoare funcție obiectiv în pyomo?

voturi
0

Sunt nou la pyomo. Și am încercat să ieșire valoarea obiectivă de modelul meu pyomo. Am făcut accesul la valorile variabile, dar nu pot avea acces la valoarea funcției obiectiv. Codurile mele sunt:

   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)

Și ultima linie oferă informații de eroare:

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

Dar eu pot vedea în mod clar valoarea din 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

Orice ajutor ar fi apreciat foarte mult !!

Întrebat 19/03/2020 la 21:55
sursa de către utilizator
În alte limbi...                            

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