Научная статья на тему 'НЕКОТОРЫЕ МЕТОДИЧЕСКИЕ АСПЕКТЫ ИЗЛОЖЕНИЯ ТЕМЫ: "РЕШЕНИЕ ЗАДАЧИ О НАЗНАЧЕНИЯХ"'

НЕКОТОРЫЕ МЕТОДИЧЕСКИЕ АСПЕКТЫ ИЗЛОЖЕНИЯ ТЕМЫ: "РЕШЕНИЕ ЗАДАЧИ О НАЗНАЧЕНИЯХ" Текст научной статьи по специальности «Математика»

CC BY
121
10
i Надоели баннеры? Вы всегда можете отключить рекламу.
Журнал
Modern European Researches
Область наук
Ключевые слова
ПУНКТ ОТПРАВЛЕНИЯ / ПУНКТ НАЗНАЧЕНИЯ / КАНДИДАТ / ВИД РАБОТЫ / ВЕНГЕРСКИЙ МЕТОД / ОТМЕЧЕННЫЕ НУЛИ

Аннотация научной статьи по математике, автор научной работы — Бахтиярова Ольга Николаевна, Птицына Инга Вячеславовна, Подзорова Марина Ивановна

Одной из тем при изучении дисциплины «Теория игр и исследование операций» является «Задача о назначениях». В статье рассматривается постановка задачи о назначениях, ее математическая модель, изложен венгерский метод решения задачи. Цель работы: проиллюстрировать особенности метода решения задачи о назначениях в случае минимизации и максимизации целевой функции.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по математике , автор научной работы — Бахтиярова Ольга Николаевна, Птицына Инга Вячеславовна, Подзорова Марина Ивановна

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «НЕКОТОРЫЕ МЕТОДИЧЕСКИЕ АСПЕКТЫ ИЗЛОЖЕНИЯ ТЕМЫ: "РЕШЕНИЕ ЗАДАЧИ О НАЗНАЧЕНИЯХ"»

НЕКОТОРЫЕ МЕТОДИЧЕСКИЕ АСПЕКТЫ ИЗЛОЖЕНИЯ ТЕМЫ: «РЕШЕНИЕ ЗАДАЧИ О НАЗНАЧЕНИЯХ»

Аннотация

Одной из тем при изучении дисциплины «Теория игр и исследование операций» является «Задача о назначениях». В статье рассматривается постановка задачи о назначениях, ее математическая модель, изложен венгерский метод решения задачи. Цель работы: проиллюстрировать особенности метода решения задачи о назначениях в случае минимизации и максимизации целевой функции.

Ключевые слова

пункт отправления, пункт назначения, кандидат, вид работы, венгерский метод, отмеченные нули

АВТОРЫ

Бахтиярова Ольга Николаевна,

кандидат физико-математических наук, доцент ФГБОУ ВО «Московский государственный технический университет им. Н. Э. Баумана», г. Москва olga-bakh06@mail.ru

Птицына Инга Вячеславовна,

кандидат физико-математических наук, доцент ФГБОУ ВО «Московский государственный технический университет им. Н.Э. Баумана», г. Москва inpt@mail.ru

Подзорова Марина Ивановна,

кандидат педагогических наук, доцент ФГБОУ ВО «Московский государственный технический университет им. Н.Э. Баумана», г. Москва marinatichomirova@hotmail.com

Введение

Задача о назначениях является частным случаем транспортной задачи и относится к классу задач транспортного типа. Ее особенность состоит в том, что в ней количество пунктов отправления (или кандидатов) равно количеству пунктов назначения (или видов работ), а мощность каждого пункта отправления (или кандидата) и пункта назначения (или вида работ) равна единице.

Актуальность решения задачи о назначениях обусловлена тем, что для повышения экономической эффективности работы предприятий математическая модель задачи позволяет формально описать и провести количественный анализ при подборе персонала на вакантные должности, прикреплении пунктов отправления к пунктам назначения, транспорта к одному из маршрутов движения, определении руководителей проектов и научно-исследовательских работ, победителей конкурсных торгов и т. п.

19 Modern European Researches No 3 (Т.1) / 2021 Методология и результаты исследования

Постановка транспортной задачи

Пусть имеется n видов работ и n кандидатов для их выполнения.

Затраты /-го кандидата на выполнение j-го вида работ равны c i j, i = 1, 2,..., n; j = 1, 2,.., n.

Каждый кандидат может быть назначен только на один вид работ, и каждый вид работ может быть выполнен только одним кандидатом. Требуется распределить кандидатов на виды работ, при котором суммарные затраты на выполнение работ будут минимальными [1].

Математическая постановка задачи

Пусть x i j, i = 1, 2,..., n; j = 1, 2,..., n - переменная, значение которой равно 1, если i-й кандидат выполняет j-й вид работы, и 0 - в противном случае.

Среди переменных x i j, i = 1, 2,..., n; j = 1, 2,..., n найти такие, которые доставляют минимум целевой функции [2]

m n

Z = I I cij ■ X/J (1)

i=1 j=1

и удовлетворяют системе ограничений

n

I xJ =1, i = 1, 2, ..., n ; (2)

J=1

n

I x J =1, j = 1, 2, ..., n , (3)

i=1

x ij s { 0 , 1}, i = 1, 2,..., n; j = 1, 2,..., n. (4)

Условие (2) означает, что каждый i-й кандидат выполняет только одну работу.

Условие (3) означает, что каждая j-я работа может выполняться только одним кандидатом.

Условие (4) означает, что переменные x i j принимают значения 0 или 1.

В целевую функцию (1) входят только те значения c i j , i = 1,..., n; j = 1, ..., n, для которых переменные x/ j отличны от 0, т. е. входят затраты, соответствующие назначенным работам.

Затраты кандидатов на выполнение работ запишем с помощью матрицы

C =

ii

v Cn1

12

С21 с22

С

n 2

1 n

С

2 n

С

n n J

Строки матрицы С соответствуют кандидатам, а столбцы матрицы - видам работ.

Примечание. Если в задаче о назначениях необходимо найти переменные х i^, / = 1, 2, ..., п; ] = 1, 2, ..., п, которые доставляют максимум целевой функции, то элементы матрицы С умножают на коэффициент - 1.

Для решения поставленной задачи о назначениях можно использовать венгерский метод, алгоритм которого включает следующие шаги [3, 4].

1. В каждой строке матрицы С находят минимальный элемент и вычитают его из всех элементов строки.

2. В каждом столбце полученной матрицы находят минимальный элемент и вычитают его из всех элементов столбца.

3. Находят строку с одним нулем. Этот нуль заключают в квадрат и называют отмеченным. В столбце, в котором находится отмеченный нуль, все остальные нули зачеркивают и в дальнейшем не рассматривают. Этот шаг продолжают, пока возможно.

4. Находят столбец с одним нулем и отмечают этот нуль. В строке, в которой находится отмеченный нуль, все остальные нули зачеркивают. Этот шаг продолжают, пока возможно.

5. Если после шагов 3 и 4 еще есть неотмеченные нули, то отмечают любой из них, а в строке или столбце, где находится этот отмеченный нуль, все остальные нули зачеркивают.

6. Если в каждой строке и в каждом столбце находится только один отмеченный нуль, то получено оптимальное решение. При этом каждый отмеченный нуль указывает на назначение кандидата на соответствующий вид работ.

В противном случае проводят минимальное количество пересекающихся горизонтальных и вертикальных прямых через все нули матрицы С.

7. Среди незачеркнутых прямыми элементов матрицы С находят минимальный. Этот минимальный элемент вычитают из всех незачеркнутых элементов матрицы С и прибавляют ко всем элементам этой матрицы, находящимся на пересечении прямых.

К полученной матрице применяют описанный алгоритм решения задачи, начиная в шага 3.

Рассмотрим примеры решения задач о назначениях. Пример 1.

Пусть имеются четыре торговые базы А1, Аг , Аз, А 4 и четыре магазина В1, В2, Вз

1, 2, 3, 4 до каждого

8 10 12 6

9 5 4 7

11 8 3 2

3 6 5 10

, В 4

Известны расстояния с / ^ от каждой торговой базы А / , / магазина В^ , ] = 1, 2, 3, 4, записанные в матрице

С =

Расстояние задано в км.

Необходимо прикрепить торговые базы к магазинам так, чтобы суммарное расстояние между ними было минимальным.

Решение.

Согласно приведенному алгоритму решения задачи находим минимальный элемент в первой строке матрицы С (этот элемент равен 6) и вычитаем его из всех элементов этой строки. Затем находим минимальный элемент во второй строке матрицы С (этот элемент равен 4) и вычитаем его из всех элементов этой строки. В третьей строке матрицы С минимальный элемент равен 2, в четвертой строке - 3. Вычитаем эти элементы из всех элементов соответствующих строк.

В результате получаем матрицу С1

С =

8 10 12 6 1 6

9 5 4 7 4

1 8 3 2 2

3 6 5 10 ) 3

^ С =

2 4 6 0

5 1 0 3

9 6 1 0

0 3 2 7

В полученной матрице С1 находим минимальные элементы в каждом столбце (это элементы 0, 1, 0, 0 соответственно) и вычитаем их из всех элементов соответствующих столбцов.

Получаем матрицу Сг

C =

( 2 4 6 0 Л Г 2 3 6 0 Л

5 1 0 3 N 5 0 0 3

9 6 1 0 9 5 1 0

1 0 3 2 7, 1 0 2 2 7,

0 1 0 0

В первой строке матрицы Сг расположен только один нуль. Отмечаем его. Он находится в четвертом столбце, поэтому вычеркиваем все остальные нули в этом столбце.

C2 =

2 3 6 0

5 0 0 3

9 5 1 0

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

0 2 2 7

В четвертой строке матрицы Сг расположен только один нуль. Отмечаем его.

C2 =

2 3 6 0

5 0 0 3

9 5 1 0

0 2 2 7

Больше строк с одним нулем в матрицы Сг нет, но есть только один нуль во втором столбце. Отмечаем его. Он находится во второй строке, поэтому вычеркиваем все остальные нули в этой строке.

C2 =

г 2 5 9

0

3

0

5 2

6

0

1 2

0

3 О 7

Больше нулей в матрице Сг нет. Полученное распределение отмеченных нулей не является оптимальным, т. к. в третьей строке нет отмеченного нуля.

Поэтому проведем минимальное количество пересекающихся горизонтальных и вертикальных прямых через все нули матрицы Сг . Таких прямых будет три

C2 =

Среди незачеркнутых прямыми линиями элементов матрицы Сг находим минимальный: min { 2, 3, 6, 9, 5, 1} = 1.

Этот минимальный элемент вычитаем из всех незачеркнутых элементов и прибавляем ко всем элементам, находящимся на пересечении прямых, т. е. к элементам 3 и 7.

В результате получаем матрицу Сз

С3 =

1 2 5 0

5 0 0 4

8 4 0 0

0 2 2 8

В первой строке матрицы Сз расположен только один нуль. Отмечаем его. Он находится в четвертом столбце, поэтому вычеркиваем все остальные нули в этом столбце.

Сз =

1 2 5 0

5 0 0 4

8 4 0 0

0 2 2 8

В четвертой строке матрицы Сз расположен только один нуль. Отмечаем его. В третьей строке матрицы Сз расположен только один нуль. Отмечаем его. Он находится в третьем столбце, поэтому вычеркиваем все остальные нули в этом столбце.

Сз =

12 5 0

5 0 0 4

8 4 0 0

0 2 2 8

Теперь во второй строке матрицы Сз расположен один нуль. Отмечаем его.

Сз =

12 5 0

5 0 0 4

8 4 0 0

0 2 2 8

Поскольку в матрице Сз в каждой строке и в каждом столбце находится только один отмеченный нуль, то получено оптимальное решение задачи:

торговую базу А1 следует прикрепить к магазину В4 , торговую базу Аг - к магазину Вг , торговую базу Аз - к магазину Вз , торговую базу А4 - к магазину В1 .

При этом для определения суммарного расстояния между прикрепленными торговыми базами и магазинами складываем элементы исходной матрицы С, расположенные на месте отмеченных нулей в матрице Сз :

с = с 14 + с гг + с зз + с 41 = 6 + 5 + з + з = 17 км. Примечание. Возможно, полученное оптимальное решение не является единственным.

Пример 2.

Пусть имеются четыре кандидата A1, A2, A3, A 4 на четыре вакантные должности

B1, B2, B3, B4 .

Эффективность работы каждого кандидата на каждой должности, зависящая от его знания и опыта, задана в матрице С

C =

f 8 2 3 7 Л

3 5 6 10

6 7 8 3

1 5 10 12 8 J

где c i j - эффективность работы / - го кандидата на j-й должности.

Необходимо распределить кандидатов на вакантные должности так, чтобы суммарная эффективность их работы была максимальной. Решение.

Поскольку в задаче необходимо максимизировать целевую функцию, то для решения задачи умножаем элементы матрицы С на - 1

C =

f -8 - 2 -3 -7 Л

-3 -5 -6 -10

-6 -7 -8 -3

I-5 -10 -12 -8 J

Минимальный элемент в первой строке матрицы С1 равен - 8, во второй строке равен - 10, в третьей строке равен - 8, в четвертой строке равен - 12. Вычитаем эти элементы из всех элементов соответствующих строк. В результате получаем матрицу С2

C =

f-8 - 2 -3 -7 Л -8 f 0 6 5 1Л

-3 -5 -6 -10 -10 ^ Cn = 7 5 4 0

-6 -7 -8 -3 -8 2 2 1 0 5

I-5 -10 -12 -8 J -12 I 7 2 0 4J

Минимальный элемент в первом столбце матрицы С2 равен 0, во втором столбце - 1, в третьем столбце - 0, в четвертом столбце - 0. Вычитаем эти элементы из всех элементов соответствующих столбцов. В результате получаем матрицу Сз

C =

0 6 5 1 л

7 5 4 0

2 1 0 5

7 2 0 4J

0 1 0 0

^ C3 =

0 5 5 1Л

7 4 4 0

2 0 0 5

7 1 0 4J

В первой и второй строках матрицы Сз находятся по одному нулю. Отмечаем их.

В четвертой строке матрицы С3 имеется только один нуль. Он находится в третьем столбце, поэтому вычеркиваем все остальные нули в этом столбце.

C =

( 0 5 5 11

7 4 4 0

2 0 0 5

1 7 1 0 4)

Теперь в третьей строке матрицы Сз расположен один нуль. Отмечаем его.

5

C3 =

( 0

5 11

7 4 4 0

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

2 0 О 5 7

1 О 4

Поскольку в матрице С3 в каждой строке и в каждом столбце находится только один отмеченный нуль, то получено оптимальное распределение кандидатов по должностям:

кандидата А1 следует назначить на вакантную должность В1 , кандидата А2 - на вакантную должность В4, кандидата A3 - на вакантную должность В2 , кандидата A4 -на вакантную должность В3 .

При этом суммарная эффективность кандидатов будет равна с = с 11 + с 24 + с 32 + с 43 = 8 + 10 + 7 + 12 = 37.

Заключение

Задача о назначениях широко используется в прикладной деятельности и имеет множество интерпретаций.

Рассмотрены особенности постановки задачи о назначении и ее математической модели.

Приведенный метод решения позволяет найти оптимальное решение задачи, как в случае минимизации целевой функции, так и в случае ее максимизации.

ССЫЛКИ НА ИСТОЧНИКИ

1. Таха Х.А. Введение в исследование операций. - М.: Издательский дом «Вильямс», 2005. - 916 с.

2. Там же.

3. Там же.

4. Вентцель Е.С. Исследование операций. - М.: Советское радио, 1972. - 552 с.

Olga N. Bakhtiyarova,

Candidate of Physical and Mathematical Sciences, Associate Professor, Moscow State Technical University named after N.E. Bauman, Moscow olga-bakhQ6@mail.ru Inga V. Ptitsyna,

Candidate of Physical and Mathematical Sciences, Associate Professor, Moscow State Technical University named after N.E. Bauman, Moscow inpt@mail.ru Marina I. Podzorova,

Candidate of Pedagogical Sciences, Associate Professor, Moscow State Technical University named after

N.E. Bauman, Moscow

marinatichomirova@hotmail.com

Some methodological aspects of the presentation of the topic: "Solving the assignment problem". Abstract. One of the topics in the study of the discipline "Game Theory and Operations Research" is the "Assignment problem". The article considers the formulation of the assignment problem, its mathematical model, and describes the Hungarian method for solving the problem. The purpose of the work: to illustrate the features of the method for solving the assignment problem in the case of minimizing and maximizing the objective function.

Key words: departure point, destination point, candidate, type of work, the Hungarian method, marked zeros.

i Надоели баннеры? Вы всегда можете отключить рекламу.