美好的一天
我正在使用全局优化工具箱在MATLAB中使用遗传算法。我在这方面很有经验。我的问题如下:
如何指定不仅依赖于输入变量的约束。即约束可能是输出或中间变量的函数。
注意:此系统的输出是从“黑匣子”计算的(这是PSS SINCAL模拟)。
在这个阶段,我一直在使用一种解决方法 - 当输出不在约束范围内时,使适应度函数具有很高的值。寻找更优雅的解决方案。
谢谢
埃尔维斯
答案 0 :(得分:0)
您可以使用嵌套函数作为目标和约束函数。这将允许您拥有对目标和约束函数都可见的MATLAB变量(输入变量除外)。
This example使用嵌套函数来使用在目标函数和约束函数中运行模拟的结果。它还显示了如何检查模拟是否需要再次运行,如果使用输入变量的新值调用目标函数或约束函数,这是必要的。