Методы генетического алгоритма выделения электромобилей - PullRequest
0 голосов
/ 25 июня 2018

Проблема, которую я пытаюсь решить, касается лучшего распределения электрических транспортных средств в электрической сети.Моя сетка имеет 20 возможных позиций (шин), позволяющих получать по одному EV каждый.Каждая хромосома имеет длину 20, и ее гены могут быть 0 или 1, где 0 означает отсутствие EV, а 1 означает, что EV находится в этом положении (сборная шина).

Я начинаю свою популяцию (100 человек) с фиксированного количества EV (например, 5), распределенных случайным образом.И пусть они развиваются через мою ГА.GA использует выбор турнира, кроссовер с 2 пунктами и мутацию щелчка.Каждая хромосома / индивидуум оценивается с помощью функции пригодности, которая рассчитывает потери мощности между столбцами (сумма RI ^ 2).Лучшая хромосома - это та, которая имеет наименьшие потери мощности.

Проблема в том, что использование 2-точечного кроссовера и мутации с изменяющимся битом изменяет фиксированное количество электромобилей, которые должны быть в сетке.Я хотел бы знать, каковы лучшие методы для моих операций GA.Кроме того, я получаю эту странно выглядящую графику наиболее пригодной для жизни хромосомы на протяжении поколений 1

Буду признателен за любую помощь / предложения.Спасибо.

Ответы [ 2 ]

0 голосов
/ 26 июня 2018

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

0 голосов
/ 25 июня 2018

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

Это, вероятно, не очень подходит для генетического алгоритма.Если вы хотите выбрать 5 из 20, есть ~ 15k возможностей.Тестирование популяции из 100 на 50 поколений уже дает вам достаточно вычислений, чтобы выполнить 1/3 работы методом грубой силы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...