Могу ли я иметь хромосому переменной длины в JGAP?
Я использую JGAP для генерации тестовых векторов для схемы. Я получил максимальный охват одного тестового вектора, установив гены хромосомы в биты. Теперь мне нужно получить 100% покрытие с минимальным количеством тестовых векторов.
Если я спроектирую каждый ген в качестве тестового вектора, id необходимо рассчитать фитнес-функцию на основе количества генов и общего охвата, а также идентифицировать идентификатор, чтобы определить как длину хромосомы, так и биты каждого тестового вектора (гена).
возможно ли даже иметь хромосому переменной длины?
Существуют ли стандартные проекты для этого типа задач?
1 ответ
Звучит немного похоже на проблему маршрутизации транспортных средств (VRP). Там решение часто кодируется как список списков. Каждый список представляет маршрут для транспортного средства, и все вместе они представляют решение проблемы.
Я полагаю, вы могли бы закодировать его подобным образом. Рассмотрите каждый момент, который вы хотите охватить как клиента, которого вы хотите посетить, и рассмотрите каждый автомобиль как "тест-вектор". Вы хотите охватить все точки (как обычно в решении VRP, которое вы хотите посетить для всех клиентов), но вы хотите покрыть их минимальным количеством транспортных средств (= тестовые векторы).
Каковы конкретные ограничения вашей проблемы? Я предполагаю, что у вас есть какой-то предел, по которому вы можете покрывать очки в определенном тестовом векторе.