[英]Using external functions within Pyomo constraints
我需要使用外部 python function 在 pyomo model 中創建約束,但我不相信它可以正常工作。 例如,如果我有以下外部 function
# External function
def total_cost(length, flow):
return length * floww * 1000
然后我想在創建 pyomo model object 時調用它,但“長度”和“流量”值是我的 model 中的變量,它會正常工作嗎? 有人有這方面的經驗嗎?
您的示例在大多數情況下應該可以正常工作。 您需要注意三個例外情況(但這些也適用於正常的約束規則):
value
,因為該變量將被表達式樹中的常量數值替換(而不是發送到求解器) 我還建議在構造約束后調用pprint
來驗證約束表達式是否符合您的期望。 如果約束太長/太亂,那么您可以print
函數返回的子表達式並驗證您獲得的是 Pyomo 表達式對象而不是常量數值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.