Максимальное число возможных сочетаний NK для данной задачи определяется на основе следующей формулы:
где К— число альтернатив в i-й комбинации, принимающее значение в диапазоне [0,М];
М — максимальное число рассматриваемых альтернатив.
Определим множество комбинаций с различными числом и составом альтернатив.
Допустим, имеется множество из М альтернатив и каждой альтернативе соответствует ее уникальный порядковый номер.
Требуется из заданного множества получить комбинации всех возможных альтернатив, которые должны удовлетворять следующим условиям: 1) в каждой i-й комбинации не должно присутствовать одинаковых альтернатив;
2) каждая i-я комбинация должна отличаться от других не менее чем одной альтернативой;
3) комбинации альтернатив должны содержать в общем случае все единичные, парные, тернарные и другие М-1 и М сочетания альтернатив.
Каждой альтернативе в процессе генерации комбинаций присваиваются два типа признаков: "истина" (И) и "ложь" (Л).
В начальном состоянии всем альтернативам присваивается признак "ложь". В этом случае сгенерированная комбинация содержит нуль альтернатив. Далее осуществляется циклическое изменение признаков альтернатив и генерация из них новых комбинаций по следующим правилам.
Правило 1.
Если альтернатива А1 множества А имеет признак "Л", то изменяем его на признак "И" и заканчиваем изменение признаков у альтернатив. В противном случае, если альтернатива A1 множества А имеет признак "И", осуществляем переход к альтернативе А2.