Может ли PSO сходиться в точке с ненулевой производной? - PullRequest
0 голосов
/ 06 декабря 2018

Я использую эту библиотеку - https://pythonhosted.org/pyswarm/, чтобы найти глобальные минимумы выпуклой функции.Это только начало и работа над невыпуклой функцией.Я нашел глобальные минимумы с помощью линейной регрессии, но проблема в том, что PSO, кажется, сходится в разных точках в зависимости от значений омега и фи, которые я установил.Я могу подтвердить, что эти точки не являются глобальными минимумами, сравнивая стоимость с минимумами, данными линейной регрессией.
Возможно ли в PSO, что оно сходится (значение не меняется после 10 итераций) или я где-то ошибаюсь?

1 Ответ

0 голосов
/ 06 декабря 2018

Абсолютно возможно, что PSO сходится не в том месте.Суть метаэвристики в том, что им может потребоваться много времени для бега.Десять итераций в неправильном месте в высшей степени возможны.Кроме того, для достижения абсолютного глобального минимума потребуется очень много времени, и алгоритм никогда не сможет доказать, что он сходится к глобальному минимуму, а только достигнет критерия завершения.Ваши ожидания в отношении метаэвристики должны заключаться в том, что в конечном итоге вы получите хороший ответ, а не то, что он всегда сходится к глобальному минимуму.

В качестве компенсации этих недостатков - длительное время работы, отсутствие гарантии глобальной минимизации -Вы получаете алгоритм оптимизации, который может обрабатывать любые виды оценки функций или пригодности.

...