Задача о назначениях — различия между версиями
Материал из ALL
(Новая страница: «[[Математическая модель ТЗ]] == Постановка задачи == Пусть имеется '''m''' п…») |
|||
Строка 1: | Строка 1: | ||
− | [[файл: | + | [[файл:ЗН01.JPG|thumb|300|[[Математическая модель]] ЗН]] |
== Постановка задачи == | == Постановка задачи == | ||
− | Пусть имеется ''' | + | Пусть имеется '''n''' работ '''(A1,A2,…,An)''' и '''n''' исполнителей '''(B1,B2,…,Bn)'''. Пусть известны доходы '''c<sub>ij</sub>''' от назначения '''i'''-ой работы '''j'''-ому исполнителю и необходимо определить назначения с наибольшей суммой доходов, при этом каждая работа назначается только одному исполнителю и каждый исполнитель назначается только на одну работу. |
+ | Тогда задача о назначениях (ЗН) формулируется следующим образом: | ||
− | [[файл: | + | [[файл:ЗН01.JPG]], |
− | где '''x<sub>ij</sub>''' | + | где '''x<sub>ij</sub>''' – '''1''' если есть назначение '''i'''-ой работы '''j'''-ому исполнителю, '''0''' - если нет назначения. |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
== Метод решения == | == Метод решения == | ||
− | + | Задача о назначениях решается венгерским методом. | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | == Пример ЗН == | |
+ | [[файл:ЗН10.JPG]] | ||
− | + | [[файл:ЗН11.JPG]] | |
− | + | === Подготовительный этап === | |
+ | [[файл:ЗН12.JPG]] | ||
− | + | [[файл:ЗН13.JPG]] | |
− | + | ||
− | + | [[файл:ЗН14.JPG]] | |
− | [[файл: | + | |
− | === | + | === Решение венгерским методом === |
− | [[файл: | + | [[файл:ЗН21.JPG]] |
− | [[файл: | + | [[файл:ЗН22.JPG]] |
− | [[файл: | + | [[файл:ЗН23.JPG]] |
− | + | ||
− | + | Оптимальное решение равно | |
− | [[файл: | + | [[файл:ЗН30.JPG]] |
− | + | ||
− | + | ||
== Другие задачи: == | == Другие задачи: == | ||
Строка 64: | Строка 36: | ||
*[[Общая прямая задача линейного программирования]]; | *[[Общая прямая задача линейного программирования]]; | ||
*[[Общая двойственная задача линейного программирования]]; | *[[Общая двойственная задача линейного программирования]]; | ||
+ | *[[Классическая транспортная задача]]; | ||
*[[Распределительная задача]]; | *[[Распределительная задача]]; | ||
− | |||
*[[Транспортная задача с промежуточными пунктами]]; | *[[Транспортная задача с промежуточными пунктами]]; | ||
*[[Трёхиндексная транспортная задача]]; | *[[Трёхиндексная транспортная задача]]; |
Версия 12:41, 15 ноября 2015
Содержание
Постановка задачи
Пусть имеется n работ (A1,A2,…,An) и n исполнителей (B1,B2,…,Bn). Пусть известны доходы cij от назначения i-ой работы j-ому исполнителю и необходимо определить назначения с наибольшей суммой доходов, при этом каждая работа назначается только одному исполнителю и каждый исполнитель назначается только на одну работу. Тогда задача о назначениях (ЗН) формулируется следующим образом:
где xij – 1 если есть назначение i-ой работы j-ому исполнителю, 0 - если нет назначения.
Метод решения
Задача о назначениях решается венгерским методом.
Пример ЗН
Подготовительный этап
Решение венгерским методом
Другие задачи:
- Каноническая задача;
- Производственная задача;
- Общая прямая задача линейного программирования;
- Общая двойственная задача линейного программирования;
- Классическая транспортная задача;
- Распределительная задача;
- Транспортная задача с промежуточными пунктами;
- Трёхиндексная транспортная задача;
- Задача целочисленного программирования;
- Задача о рюкзаке.
Ссылки
- Гольштейн Е. Г., Юдин Д. Б. Задачи линейного программирования транспортного типа, М.,1969.
- Участник:Logic-samara