我想用MATLAB中的patternsearch
函数来优化多变量函数。该函数需要较低和较高的边界,并在连续域内的边界内查找。Patternsearch离散变量
但是我在excel文件中有一组离散的值,希望算法能够在这个离散域内进行搜索,而不是在连续域内进行搜索。
这可能与patternsearch
?
我想用MATLAB中的patternsearch
函数来优化多变量函数。该函数需要较低和较高的边界,并在连续域内的边界内查找。Patternsearch离散变量
但是我在excel文件中有一组离散的值,希望算法能够在这个离散域内进行搜索,而不是在连续域内进行搜索。
这可能与patternsearch
?
对此的最佳优化工具是遗传算法。这个优化工具带有Matlab的全局优化工具箱,可以同时优化连续变量和离散变量。
在遗传算法中,作为整数的变量必须如此声明。未声明的变量默认为连续的。
查看全局优化工具箱指南了解它的工作原理:http://it.mathworks.com/help/pdf_doc/gads/gads_tb.pdf。
也许我不明白你的问题,但如果你有一个(离散和有限)值的集合,为什么你不计算函数在这些点的价值并返回最小值?
总之,没有。这不是patternsearch
的目的。离散和连续搜索空间的优化技术相当不同。
但是,如果您正在寻找近似答案,可以使用spline
,polyfit
等来为您的数据获得近似连续函数,然后在其上应用patternsearch
。
如果您提供了有关您的问题的更多详细信息,我或其他人可能会建议一种更适合您的数据处理方式。