Как изменить эволюционный алгоритм для работы с матрицей при соблюдении заданных ограничений - PullRequest
0 голосов
/ 31 марта 2020

Я недавно открыл genti c и эволюционные алгоритмы, и после небольшого исследования я смог написать небольшой полезный код, но моя проблема в том, что я не могу понять, как кодировать мой ввод в векторы, которые программа может работать с Вот что я пытаюсь выполнить sh:

Я пытаюсь оптимально назначить все свои продукты I на набор местоположений J, моя цель - снизить общую стоимость и назначить каждому продукту соответствующий расположение. Каждый продукт может относиться к одному из трех возможных типов и имеет указанную c степень важности V , в то время как каждое местоположение может принимать только один указанный c тип продуктов и к нему прилагается стоимость использования * 1005. *C.

Присвоение продукта i местоположению j представляется как двоичное матрица Xij , а функция стоимости является суммой (Xij x Vi x Cj) для i в I и j в J.

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

Любая помощь очень ценится.

...