Πώς να αποκτήσετε πρόσβαση σε αντικειμενική αξία λειτουργία pyomo;

ψήφοι
0

Είμαι νέος στο pyomo. Και εγώ προσπαθώ για την έξοδο της αντικειμενικής αξίας από το μοντέλο pyomo μου. Έκανα πρόσβαση στις μεταβλητές τιμές, αλλά δεν μπορούν να έχουν πρόσβαση στην αντικειμενική αξία λειτουργία. κωδικούς μου είναι:

   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)

Και η τελευταία γραμμή δίνει πληροφορίες σφάλματος:

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

Αλλά μπορώ να δω καθαρά την τιμή από 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

Οποιαδήποτε βοήθεια θα εκτιμηθεί πραγματικά!!

Δημοσιεύθηκε 19/03/2020 στις 21:55
πηγή χρήστη
Σε άλλες γλώσσες...                            

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