Matlab 将父函数的输出与嵌套函数的输入相关联
我将尝试简单地解释自己,希望得到一个简单的答案 假设我有一个函数“calculate”,它接受输入Matlab 将父函数的输出与嵌套函数的输入相关联,matlab,function,optimization,nested,Matlab,Function,Optimization,Nested,我将尝试简单地解释自己,希望得到一个简单的答案 假设我有一个函数“calculate”,它接受输入[t,k,r,x]和输出[a,B,C,D],如下所示: function [A,B,C,D] = calculate(t,k,r,x) 现在让我们假设我有另一个函数,将这些输出作为输入,并输出更多不同的输出,例如 function [M,N] = again(A,B,C,D) 如何将[M,N]链接为k和t?总体目标是通过优化k和t来最小化M和N,我可以猜测这与嵌套函数和传递参数有关,但我不确定如
[t,k,r,x]
和输出[a,B,C,D]
,如下所示:
function [A,B,C,D] = calculate(t,k,r,x)
现在让我们假设我有另一个函数,将这些输出作为输入,并输出更多不同的输出,例如
function [M,N] = again(A,B,C,D)
如何将[M,N]
链接为k
和t
?总体目标是通过优化k
和t
来最小化M
和N
,我可以猜测这与嵌套函数和传递参数有关,但我不确定如何启动,启动就是我想要的。谢谢看一看。它为许多优化问题提供函数。虽然我相信这些函数只取一个函数作为参数。因此,对于您的情况,如果您能这样做,可能是最好的:
calculate.m
,并保存它。m
,然后保存它再次调用函数使用参数(t,k,r,x)计算,然后继续从计算的输出中确定(M,N)
希望这足以作为一个开始。嗨,这太棒了。我担心嵌套函数的顺序,但完全忽略了(我不知道为什么)单独编写它们并进行调用。所以现在,我想到了一件我知道自己无法通过的事情。我知道工具箱(无论您想使用什么优化工具)只接受一个变量作为输入。在原始问题的情况下,我如何制定目标函数,以便输出仍然是
[M,N]
,但优化程序(在本例中为GA)优化我想要的变量。我想需要某种形式的映射?首先,你应该弄清楚你有什么样的问题:线性的,非线性的,你有什么约束条件吗。。。。如前所述,目标函数,即您要优化的函数,应该再次成为问题。问题是,如何将我要优化的特定命名变量(t,k)转换为目标函数输入的一个变量(z,比方说)?