2014-12-04 141 views
0

我想用MATLAB中的patternsearch函数来优化多变量函数。该函数需要较低和较高的边界,并在连续域内的边界内查找。Patternsearch离散变量

但是我在excel文件中有一组离散的值,希望算法能够在这个离散域内进行搜索,而不是在连续域内进行搜索。

这可能与patternsearch

回答

0

对此的最佳优化工具是遗传算法。这个优化工具带有Matlab的全局优化工具箱,可以同时优化连续变量和离散变量。

在遗传算法中,作为整数的变量必须如此声明。未声明的变量默认为连续的。

查看全局优化工具箱指南了解它的工作原理:http://it.mathworks.com/help/pdf_doc/gads/gads_tb.pdf

0

也许我不明白你的问题,但如果你有一个(离散和有限)值的集合,为什么你不计算函数在这些点的价值并返回最小值?

0

总之,没有。这不是patternsearch的目的。离散和连续搜索空间的优化技术相当不同。

但是,如果您正在寻找近似答案,可以使用spline,polyfit等来为您的数据获得近似连续函数,然后在其上应用patternsearch

如果您提供了有关您的问题的更多详细信息,我或其他人可能会建议一种更适合您的数据处理方式。