使用优化工具箱和未知函数。

18视图(30天)
我想使用优化工具箱来优化输入参数但我没有一个目标函数。目标函数没有显式形式,其价值是测量与模拟(运行从Matlab代码创建一个. exe)。
我怎么能给优化工具箱的功能输入函数的乐趣为了工作吗?
我有一个主要功能模拟。米(函数模拟),我已经创建了基于此函数. exe。
我改变了我的主要功能函数y =仿真(x),并使用[x] = fminunc (x0 @Simulation)但我得到一个错误输入函数。

答案(3)

明星黾
明星黾 2014年10月5日
必须 有一个目标函数!
如果你想要 优化你的功能,你能告诉我些什么呢?想到你想要什么 “模拟” 函数(例如,输出你想从它),并编写一个目标函数优化参数匹配的输出。
你使用的解算器和方法取决于你的问题。
2的评论
明星黾
明星黾 2014年10月5日
它可能不能优化 6 * 54 参数,甚至 一个目标函数。

登录置评。


提多Edelhofer
提多Edelhofer 2014年10月5日
你好,
作为明星黾说,你必须有一个目标函数。这并不意味着你必须有一个明确的功能,但是你必须有某种程度的说“这组参数很好”或“不好”这组参数,测量的是一个单值”值越小的越好参数”。
这方面的一个例子是曲线拟合:某种函数的参数(如* exp (b * x)和“善良”的测量是拟合值和测量值之间的差异。
对你来说这意味着:编写一个目标函数,接受一个向量的大小6 * 54,把这些324年值,仿真运行,并且返回一个值描述“好”或“坏”如上所述。
然后使用这个目标函数和调用合适的优化器,如fminunc,如果没有约束,或fmincon,如果你有。
提图斯
2的评论
约翰
约翰 2014年10月6日
谢谢你的建议。我试图找到类似我的目标函数(Pest-Pobs) ^ 2,害虫将模拟值和pob将观测值。
问题是,我没有任何观测值,如果我把随机观测值可能没有任何解决方案或不收敛。万博 尤文图斯
关于优化算法我将尝试了很多为了研究收敛性和/或健康的解决方案。但首先,我必须找到目标函数使用。

登录置评。


背部哈吉加法里
背部哈吉加法里 2020年9月16日
这就跟你问声好!我有一个使用fmincon类似的问题。我得到我的目标函数值从实时实验并不能定义一个公式。我只知道我需要它接近于零。所以我基本上是两个不同的参数输入实验,得到目标函数,最终我的目标是找到最好的最小化目标函数的两个参数。有人有什么建议吗?
谢谢你!
4评论
沃尔特·罗伯森
沃尔特·罗伯森 2021年2月15日
优化是不可能在这种情况下描述,而不是在任何有意义的方式。
假设你给我一个好输入和相应的输出列表,每个写入精度有限,假设在一个函数,返回我可以给你 完美的 匹配值舍入误差范围之内。这是理论上的东西吗 可能的 吗? 是的 ——拉格朗日插值和Chebychev函数表明,它是可能的。所以你给我一些数据,我给你回一个函数,在数学上是完美的,所以它必须 正确的 函数,不是吗?
不。如果你给我输入1 5 17 x =(1、2、3),当然我可以给你一个二次函数符合他们完美:我也可以给你一个二次函数加上一个347 Hz正弦波的幅值342303。正弦波是0 2π的整数倍,所以正弦波贡献点测量你一无所有。因此,二次+正弦波 一个完美的组合。所以是346 Hz的变异。或-654321幅。或-654322…
过了一会儿,你会发现有一个文字 无限 完全适合任何有限数据的函数内舍入误差,,他们可以给 不同的结果点中间的你给明确的数据。
…和在任何情况下,有无限的解决方案,任何的可能万博 尤文图斯 一个 他们是“正确”的解决方案的场合就是0。1 /∞- - > 0。
因此,如果你有数据,而你不知道 形式 功能需要,你永远不能得到“正确”的功能,以优化在任何有意义的方式。
情况有很大的不同,如果你有一个有限的列表 形式 相关的函数,参数未知的:在这种情况下,你可以做拟合每个表单的数据到达潜在功能优化。
…遗憾的是,事实证明,即使你有一个有限的列表形式,很多时候你还不能决定,或者你甚至可以发现不同的人比功能更适合你 知道 是正确的。噪声对曲线拟合令人不快的事情。不过,好消息是,在安装形式的列表,你可以继续做 预测 和那些能帮助清除作物的可能性。

登录置评。

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!