Gekko Python:有什么方法可以导出模型以进行调试?
Gekko Python: Any way to export the model for debugging purposes?
我有一个 gekko 模型,它没有生成我期望的解决方案。出于调试目的以可读形式打印模型会很棒(很像从 CPLEX 打印 LP 格式)。
这可能吗?
我的模型在 Matlab 中完美求解。
使用m.open_folder()
打开gk0_model.apm
所在的运行目录。这是 Gekko 制作的模型的文本版本。这是一个简单的应用程序:
from gekko import GEKKO
m = GEKKO() # create GEKKO model
print('--------- Follow local path to view files --------------')
print(m.path) # show source file path
m.open_folder()
print('-'*56)
u = m.Param(value=5,name='u') # define parameter
x = m.Var(name='s') # define variable
m.Equation(x==u) # define equation
m.options.SOLVER = 1 # change solver (1=APOPT,3=IPOPT)
m.solve(disp=False)
print('x: ' + str(x.value)) # print variable value
脚本产生以下输出:
--------- Follow local path to view files --------------
C:\Users\johnh\AppData\Local\Temp\tmp3oqof67rgk_model0
--------------------------------------------------------
x: [5.0]
使用文本编辑器打开 gk0_model.apm
显示 APMonitor 格式的模型文件:
Model
Parameters
u = 5
End Parameters
Variables
s = 0
End Variables
Equations
s=u
End Equations
End Model
APM模型可以用APM Matlab or through a web-browser interface求解。
我有一个 gekko 模型,它没有生成我期望的解决方案。出于调试目的以可读形式打印模型会很棒(很像从 CPLEX 打印 LP 格式)。
这可能吗?
我的模型在 Matlab 中完美求解。
使用m.open_folder()
打开gk0_model.apm
所在的运行目录。这是 Gekko 制作的模型的文本版本。这是一个简单的应用程序:
from gekko import GEKKO
m = GEKKO() # create GEKKO model
print('--------- Follow local path to view files --------------')
print(m.path) # show source file path
m.open_folder()
print('-'*56)
u = m.Param(value=5,name='u') # define parameter
x = m.Var(name='s') # define variable
m.Equation(x==u) # define equation
m.options.SOLVER = 1 # change solver (1=APOPT,3=IPOPT)
m.solve(disp=False)
print('x: ' + str(x.value)) # print variable value
脚本产生以下输出:
--------- Follow local path to view files --------------
C:\Users\johnh\AppData\Local\Temp\tmp3oqof67rgk_model0
--------------------------------------------------------
x: [5.0]
使用文本编辑器打开 gk0_model.apm
显示 APMonitor 格式的模型文件:
Model
Parameters
u = 5
End Parameters
Variables
s = 0
End Variables
Equations
s=u
End Equations
End Model
APM模型可以用APM Matlab or through a web-browser interface求解。