У меня есть набор переменных X, Y, ..., Z
.Моя работа заключается в разработке функции, которая принимает этот набор переменных и выдает целое число.У меня есть функция пригодности, чтобы проверить это.
Моя первая попытка решить проблему - предположить, что я могу смоделировать f
как линейную функцию:
f(X, Y, ..., Z) -> aX + bY ... cZ
Моя первая идеябыло использовать либо PSO (Particle Swarm Optimization), либо генетические алгоритмы для решения f
для a, b, .., c
, и я уверен, что они обязательно дадут хорошие результаты.
С другой стороны, я чувствую, что, может быть, такэволюционные алгоритмы на самом деле не нужны.Прежде всего, я могу вспомнить пару хороших «отправных точек» для a,b, .., c
.Будучи f
линейной функцией, не должно ли быть проще просто опробовать пару точек и затем сделать что-то вроде линейной регрессии с ними?И после линейной регрессии, пробуя еще пару точек, на этот раз ближе к тому, что выглядит как хорошее «пятно», снова делая для них линейную регрессию?
Каковы ее недостатки?Кто-нибудь с опытом в подобных проблемах?Самое большое, о чем я могу подумать, это то, что, возможно, то, что я считаю хорошими начальными значениями для a,b, .., c
, может быть «локальной оптимой», а наличие какого-то эволюционного алгоритма дало бы мне глобальный.
f
Предполагается, что это функция приближения для алгоритма Minimax в шахматоподобной игре, если это имеет значение.
Спасибо