Здравствуйте, boot, Вы писали:
B>Здравствуйте, rita_mur, Вы писали:
B>>>Подобный можно увидеть здесь http://www.rsdn.ru/forum/alg/4367980.1.aspxАвтор: boot
Дата: 04.08.11
_>>Я не смогла совместить Ваше предложенное с моим вопросом. А если упростить мой вопрос "Есть ли какая-нибудь программа или метод, с помощью которого можно распределить N людей на M групп (каждая группа известной длины. Есть матрица, в которой прописано какой человек не может попасть в какие группы."
B>Ключевым моментом в этой задаче, как и в прежней, является отсутствующее, но подразумевающееся требование -- ОПТИМАЛЬНОСТЬ. Если оптимальность не нужна, распределяйте как угодно, это удовлетворит поставленные требования. Иначе необходимо применять алгоритмы оптимизации. ГА, по ссылке, которую я дал -- один из них.
Нам нужно разделить N людей на M групп разной длины и при этом учитывать совместимость людей — у нас есть матрица совместимости каждого человека с каждым, к примеру, если совместим то 1, если не совместим 0 и частично совместим какое-то число. Критерий — как можно меньше несовместимых людей в группе. Кроме того у нас есть матрица для каждого человека в какую группу он не может попасть никогда. Разве матрица по совместимости не может служить для оптимального поиска. Может быть подскажете алгоритм или программу распределения на группы и как можно поставить задачу для сведения ее к задаче линейного целочисленного программирования. Ваш предложенный алгритм ГА я честно говоря не поняла как можно прикрепить к нашему случаю. С уважением, Rita_Mur.