Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабы по ОМО 2025 / Baraeva_Elizaveta_lb5.docx
Скачиваний:
0
Добавлен:
09.09.2026
Размер:
202 Кб
Скачать
☆
  1. Построить график зависимости лучшей и средней приспособленности в зависимости от поколения.

Сначала из логов алгоритма извлекаются данные о поколениях, среднем и минимальном значениях функции приспособленности. Затем строится график, где отображается, как изменялась средняя и лучшая приспособленность от поколения к поколению. Это позволяет наглядно проследить, как алгоритм улучшал решения в процессе эволюции. Реализация представлена в Листинге 2.4.1. Результат представлен на Рисунке 2.4.2.

Листинг 2.4.1 – Построение графика приспособленности

def plot_fitness_stats(log):

gen = [entry["gen"] for entry in log]

avg = [entry["avg"] for entry in log]

min_ = [entry["min"] for entry in log]

plt.figure(figsize=(10, 6))

plt.plot(gen, avg, label="Средняя приспособленность", color="blue")

plt.plot(gen, min_, label="Лучшая приспособленность", color="green")

plt.xlabel("Поколение")

plt.ylabel("Значение функции приспособленности")

plt.title("Эволюция приспособленности")

plt.legend()

plt.grid(True)

plt.tight_layout()

plt.show()

plot_fitness_stats(log)

Рисунок 2.4.2 – График приспособленности

Как можно заметить, у начального поколения (0-25) идет резкое снижение значений функции. Это означает, что генетический алгоритм быстро находит хорошие начальные решения, улучшая маршрут и снижая число длинных перелетов. У среднего поколения (25–75) улучшения становятся более плавными. Алгоритм находит все более оптимальные маршруты, но прирост качества замедляется. У позднего поколения (после ~75) зеленая линия (лучшее решение) стабилизируется – достигается локальный минимум, который сохраняется до конца. Синяя линия (среднее по популяции) продолжает колебаться, что говорит о сохраняющемся разнообразии в популяции.

Вывод.

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

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

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

7

Соседние файлы в папке Лабы по ОМО 2025