Главная страница
Навигация по странице:

  • Ключевые слова

  • Алгоритм рыбьей стаи

  • Эксперимент

  • Заключение

  • ЛИТЕРАТУРА

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


    Скачать 120.05 Kb.
    НазваниеП. В. Христенко ты лучше шаришь, что тут целью проекта является развитие и коммерциализация технологии нечеткого моделирования и идентификации. Ключевые слова алгоритм рыбьей стаи, метаэвристика, задача
    АнкорАлгоритм рыбьей стаи
    Дата21.06.2022
    Размер120.05 Kb.
    Формат файлаodt
    Имя файлаarticle.odt
    ТипЗадача
    #609143

    Применение алгоритма РЫБЬЕЙ СТАИ для решения задач оптимизации

    П.В. Христенко
    ТЫ ЛУЧШЕ ШАРИШЬ, ЧТО ТУТ
    Целью проекта является развитие и коммерциализация технологии нечеткого моделирования и идентификации.

    Ключевые слова: алгоритм рыбьей стаи, метаэвристика, задача оптимизации.
    Постановка задачи:

    Множество практических задач зачастую сводятся к решению общей задачи оптимизации. Формально, проблема минимизации целевой функции может быть записана следующим образом:





    Здесь за обозначено множество допустимых значений переменных, также называемое пространством поиска, в подавляющем большинстве случаев являющееся подмножеством некоторого множества действительных чисел.

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

    Для решения более общей задачи, в случае невозможности наложения на целевую функцию столь жестких условий существуют различные эвристические методы, основанные на поведении различных сущностей из реального мира, таких как стаи животных или атомы в затвердевающем кристалле. В данной работе рассматривается алгоритм искусственной рыбьей стаи, в оригинале называющийся «Artifisial fish swarm».
    Алгоритм рыбьей стаи:

    Поведение стаи основано на соблюдении баланса между желанием каждой рыбки переместиться в позицию с наилучшей концентрацией пищи в пределах области зрения вокруг, необходимостью всех рыбок не расходиться слишком далеко от центра стаи, и желанием не успешных рыбок отделиться на значительное удаление от центра. Поведение стаи описывается следующими константами: - радиус зрения единичной рыбки, - максимальная длина шага в выбираемом направлении, - предельная допустимая плотность соседей для каждой рыбки, - длина шага при смене пространства поиска, - число попыток на стадии охоты.
    1. (Prey): Для каждой рыбки, расположенной в позиции выбирается произвольная точка в в радиусе зрения рыбки . В случае, если значение целевой функции в новой точке более выгодно, чем в текущей , то есть выполняется перемещение и переход к пункту 2. Попытка совершения шага совершается раз, после всех неудач выполняется единственный шаг в произвольную точку в области видимости: и переход к пункту 2.

    2. (Swarm): Вычисляется центр стаи как среднее арифметическое координат ее членов , после чего для каждой рыбки выполняется перемещение на случайный шаг в сторону центра: .

    3. (Follow): Для каждой рыбки вычисляется - локальная плотность стаи как отношение числа членов стаи, находящихся в области зрения к общему размеру стаи. В случае, если выполняется шаг охоты (1, Prey), Иначе находится сосед из области зрения с наилучшим значением целевой функции и выполняется шаг в его сторону:

    4. (Move): Каждая рыбка произвольно перемещается в области своего зрения:
    5. (Leap): В случае, если за последние несколько шагов найденное наилучшее значение целевой функции изменилось менее чем на (или в возможной реализации вообще не изменилось) то выбирается произвольная рыбка и выполняется ее перемещение .
    Шаги 1-5 выполняются по количеству итераций алгоритма.
    В приведенной реализации функция возвращает случайную величину из равномерного распределения на , а функция - точку из равномерного распределения на шаре единичного радиуса в пространстве той размерности, в котором выполняется оптимизация.
    Эксперимент:

    Первый эксперимент проводился в двумерном пространстве, поиск производился на квадрате , в качестве гиперпараметров выбраны , число итераций равно 200

    Функция

    Формула

    Минимум

    Результат

    Sphere



    0

    2.93E-05

    Step



    0

    1.64E-03

    Rastrigin



    0

    0.18

    Rosenbrock



    0

    6.14034e-05



    Таблица 1 – Результаты эксперимента для пространства размерности 2

    Второй эксперимент проводился в десятимерном пространстве, поиск производился на квадрате в качестве гиперпараметров выбраны , число итераций равно 200 и 2000

    Функция

    Формула

    Минимум

    Рез. 200

    Рез. 2000

    Sphere



    0

    5,42E-03

    2.25E-03

    Step



    0

    2,08E-01

    1,17E-01

    Rastrigin



    0

    2,86E+01

    2,82E+01

    Rosenbrock



    0

    9,27E+00

    5,50E-01

    Таблица 1 – Результаты эксперимента для пространства размерности 10
    Как можно видеть, алгоритм начинает испытывать значительные трудности при увеличении размерности пространства поиска.


    Заключение:

    В результате эксперимента было выявлено, что алгоритм в некоторых случаях позволяет находить значения, близкие к минимуму, но качество работы зависит от многих внешних факторов, таких как выбор гиперпараметров или размерность целевого пространства
    ЛИТЕРАТУРА:

      ВСТАВЬ ПО ГОСТУ


    написать администратору сайта