优化问题与最优控制问题的求解方法
1. 非线性规划中的约束优化问题求解
在非线性规划里,约束优化问题的求解可以借助 Python 来完成。Python 中的 scipy.optimize 库提供了 minimize 函数,它接收目标函数、初始起始点以及优化过程的选项,最终返回最优解和最优解处目标函数的值。
下面通过两个具体例子来展示如何使用 Python 脚本求解约束最小化问题。
例 1:使用 MinEx1Withminimize.py 求解问题
# MinEx1Withminimize
import numpy as np
from scipy.optimize import minimize
def objfun(x):
return x[0]*x[3]*(x[0]+x[1]+x[2])+x[2]
def ic(x):
return x[0]*x[1]*x[2]*x[3]-25.0
def ec(x):
return 40.0 - sum(x*x)
x0 = np.array([1., 5., 5., 1.])
cons = [{'type': 'ineq', 'fun': ic}, {'type': 'eq', 'fun': ec}]
lubs = [(1.0, 5.0), (1.0, 5.0), (1.0, 5.0), (1.0, 5.0)]
Sol = minimize(objfun, x0, method='SLSQP', bounds=lubs, constra
优化与最优控制问题求解方法
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



