Хочу попробовать заюзать ГА для генерации бинарных выражений, на выходе которые будут давать true/false.
Есть сами функции с параметрами (параметры НЕ бинарные) которые будут использоваться в выражениях:
getFunctions = () => [
{ func: Function1, value: 14, min: 1, max: 30 },
{ func: Function1, value: 14, min: 1, max: 30 },
{ func: Function2, value: 10, min: 1, max: 5 }
....
]
И есть, собственно, бинарное выражение, которое должно генерится в постфиксной форме, типа вот так:
getCondition = () => [
FUNC_IDX_0
FUNC_IDX_1
AND
FUNC_IDX_2
OR
]
Я не очень понимаю, как свести это к бинарному вектору, который будет представлять собой геном особи? И кол-во функций, и их параметры, и, собственно, длина выражения (пример в getCondition) по задумке должны меняться.
Возможно, стоит вообще отказаться от использования бинарного вектора в качестве генома, если не получается закодировать все это дело в сабж?