Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Задача 5. Максимальное число назначений
Далее рассмотрены задачи, возникающие при работе с кадрами. Это та область деятельности предприятия, которая попала под влияние логистики едва ли не самой последней. Однако в современных условиях, в силу доступности и обширности информации о свободных вакансиях, предлагаемых заработных платах и квалификации претендентов на рабочие места, многие кадровые вопросы, особенно при достаточном большом штате сотрудников, могут и должны решаться с использованием оптимизирующих алгоритмов. Оптимизировать в этом случае, как впрочем и в других логистических задачах, можно различные параметры, при сохранении как правило единой глобальной цели: минимизации итоговых издержек. Часто бывает так, что на предприятии имеется штат сотрудников, имеющих определенный набор знаний и навыков. В соответствии с этими знаниями каждому сотруднику может быть поручен один или несколько участков работы. Если при этом оговаривается, что одновременной выполнение работы на двух и более участках невозможно, то у специалиста из отдела кадров возникает резонный вопрос: как бы загрузить работой максимальное число сотрудников. Это и есть суть задачи о максимальном числе назначений.
ВВЕДЕНИЕ В ПРОБЛЕМУ
Стандартный способ формализации такого рода задач сводится к следующему. Обозначим возможные назначения матрицей A, где строки соответствуют сотрудникам, а столбцы – участкам работы. a [ i, j ] =1, если i -й сотрудник может выполнять j -ю работу a [ i, j ] =0, в противном случае Введем неизвестную величину x [ i, j ] =1, если i -му сотруднику поручена j -я работа x [ i, j ] =0, в противном случае Следуя соображениям логики, величина x [ i, j ] должна удовлетворяет еще двум условиям: сумма по i от 1 до M меньше или равна 1(любому сотруднику поручается не более чем одна работа) и сумма по j от 1 до N меньше или равна 1 (на любую работу назначен не более чем один сотрудник). Чтобы было как можно больше назначений, надо максимизировать функционал суммы по i и j произведения a [ i, j ]*x[ i, j ].
Т.о. запись задачи состоит из оптимизируемого линейного функционала и нескольких линейных условий, называемых ограничениями. Это типичная задача линейного программирования, которая в общем случае просто решается так называемым симплекс-методом. Однако, добавление условия целочисленности результата x [ i, j ] обычно делает задачу очень трудно решаемой. Как можно было убедиться на примере транспортной задачи, имеется подкласс целочисленных задач линейного программирования, которые решаются вне рамок линейного программирования весьма остроумными алгоритмами. Для рассматриваемой задачи такой алгоритм тоже есть, и основан он на теории графов.
Необходимая теоретическая информация Для того, чтобы сформулировать эту задачу в терминах теории графов, сотрудникам и участкам работы ставятся в соответствие вершины графа, а возможность i -го сотрудника выполнять j -ю работу отображается наличием в графе ребра u (ij ). Если M – множество сотрудников, N - множество участков работы, то граф G [ M, N ], отражающий возможные назначения сотрудников на эти работы, называется двудольным. Соответствующие вершины рисуются в два ряда, а ребра соединяют те вершины из разных рядов (долей), для которых возможно назначение. Паросочетанием в двудольном графе называется множество ребер, не имеющих общих вершин.
Введем понятие чередующихся цепей. Пусть M * - паросочетание в двудольном графе. Цепь, в которую поочередно входят ребра из M * (жирные) и из не- M * (тонкие) назовем чередующейся относительно М *. По определению, цепь, состоящая из одного ребра, тоже чередующаяся. Вершины, инцидентные ребрам из M *, назовем насыщенными, прочие - ненасыщенными. Очевидно, что если в графе существует чередующаяся относительно M * цепь с ненасыщенными концевыми вершинами (т.е. тонкими концевыми ребрами), то в ней тонких ребер на одно больше, чем жирных.
Если цепь "перекрасить", т. е. сделать все жирные ребра тонкими, а тонкие - жирными, то число жирных ребер, а, следовательно, и паросочетание, увеличатся на одно ребро. Чередующаяся относительно M * цепь с ненасыщенными концевыми вершинами называется увеличивающей относительно M * цепью. Утверждение 1. Паросочетание M является наибольшим тогда и только тогда, когда нет увеличивающих относительно M цепей. Заметим, что как на рис. П 5. 1, a, так и на рис. П 5. 2, б показаны наибольшие паросочетания для одного и того же двудольного графа, причем паросочетания различные. Постановка задачи Дан двудольный граф G M , N . Найти наибольшее паросочетание.
|
|||||
Последнее изменение этой страницы: 2021-12-15; просмотров: 23; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 13.59.9.236 (0.007 с.) |