1 回答
TA貢獻1827條經(jīng)驗 獲得超8個贊
Local Solve Error withremote=False 您引用的錯誤是因為求解器未能找到解決方案,或者因為您在 MacOS 上并且需要一些帶有g(shù)cc. 如果您使用的是 MacOS,請嘗試安裝gcc以獲取所需的共享庫,如MacOS 上本地解決方案的 GitHub 問題討論中所述。
brew install gcc
如果是求解器問題,您可以在顯示求解器輸出時看到錯誤消息:
m.solve(disp=True)
由于 IPOPT 中線性求解器的許可限制或您的本地可執(zhí)行文件沒有求解器之一,本地求解有時與遠程服務(wù)器求解不同(例如,IPOPT 不適用于MacOS、ARM Linux 上的本地求解,或 x86-64 Linux)。如果請求的求解器選項不可用,則處理本地請求的apm可執(zhí)行文件會自動恢復(fù)到下一個可用的求解器選項。您可以嘗試m.options.SOLVER=1將 APPOPT 或m.options.SOLVER=2BPOPT 作為不同的求解器。
1此外,如果要在求解器未成功找到解決方案時引發(fā)異常,則應(yīng)將調(diào)試級別保留為。否則,設(shè)置debug=0并使用m.options.APPSTATUS以確定求解器是否成功。
m.solve(disp=True,debug=0)
if m.options.APPSTATUS==0:
print('Solver failed to find a solution')
else:
print('Successful solution')
如果您可以發(fā)布一個顯示問題的最小示例,我們可以提供有關(guān)讓您的程序在本地運行的更具體的建議。
云計算與remote=True
公共服務(wù)器今天有幾個小時不可用,但現(xiàn)在已備份。由于 Gekko 的流行,服務(wù)器有時會因偶爾的維護活動而超載或不可用。如果您想在云中托管自己的系統(tǒng)或作為專用服務(wù)器,專用 APMonitor 服務(wù)器可用作Linux的計算服務(wù)器或Windows的計算服務(wù)器。如果您確實創(chuàng)建了自己的服務(wù)器,請使用:
m = GEKKO(server='http://10.0.0.10',remote=True)
但替換10.0.0.10為服務(wù)器的 IP 地址。
添加回答
舉報
