我在网上搜索了一下,没有找到任何解决这个问题的方法,所以我决定在这里正式提问。在
我有一个有多个输出的函数:
f(input1,input2,... ,inputn) = output1,ouput2,output3
我希望最小化output1
约束其他输出,例如:
我的想法是有以下程序结构:
def function(input1,input2,...,inputn):
#very secret part of code
return(output1,ouput2,output3)
inputs=[1,31,22]
_res = optimize.minimize(function, inputs, method='nelder-mead',
options=options,*constraints*)
现在我认为答案应该在Scipy^{
事实上,据我所知,我只能约束我的函数输入,而不能约束函数的某些输出。我错过了什么?在
下面是一个带约束的优化示例:
它给出了:
^{pr2}$其思想是要最小化的函数是标量良好的:返回的值必须是
output1
。为了定义每个约束,必须添加其他函数:constraint1(inputs)->output2
,constraint2(inputs)->output3
。。。等等也许你可以把代码的“非常秘密的部分”分成不同的函数,目标函数和约束函数都会用到这些函数
相关问题 更多 >
编程相关推荐