Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Методы оптимизации и принятия решений. Курс лекций
.pdf
71
держки — 1000 р. В течение года может быть произведено 4500 шт.
товара при полной загрузке производственной линии.
Нарисуйте график изменения запасов, вычислите оптимальный
размер партии, продолжительность поставки, продолжительность
цикла и средний уровень запасов.
Задача 11. Фирма, выступающая в качестве посредника, обязу-
ется поставлять заводу по производству двигателей 5 коленчатых валов в день. Руководство фирмы решает доставлять коленчатые валы
на свой склад партиями, причем в каждой содержится 150 шт. и они
рассчитаны на 30-дневный срок. За один просроченный день в поставке коленчатого вала заводу фирма выплачивает штраф 200 р. Издержки хранения одного коленчатого вала были оценены в 250 р. за
неделю, организационными затратами можно пренебречь.
Найти оптимальный уровень запасов и продолжительность со-
ответствующего ему периода дефицита. Вычислите уменьшение затрат при оптимальной политике управления запасами по сравнению с
политикой, когда в начале каждого периода на склад поступает 150
коленчатых валов.
4.6 Математический диктант
1. Задача управления запасами состоит …
2. Различают издержки …
3. Величины, входящие в основную модель управления запасами
…
4. Для нахождения минимума издержек приравнивают …
5. График изменения запасов имеет вид …
6. График изменения отдельных составляющих величин издержек
имеет вид …
7. График изменения модели производственных запасов имеет вид…
8. График модели запасов, включающей штрафы, имеет вид… .
1. Перечислите существующие модели управления запасами?
Чем они отличаются.
Вопросы для самопроверки
2. Перечислите обозначения, необходимые для составления мо-
делей управления запасами.
3. Из какого уравнения находится оптимальный размер партии.
4. Графически изобразите отдельные составляющие величины
издержек и сделайте анализ в зависимости от изменения величины
партии.

72
Лекция 9
Ресурсы
Объекты
Критерии
эффективности
Рабочие
Рабочие места
Время
Грузовые автомобили
Маршруты
Затраты
Станки
Участки
Объем переработанной
продукции
Экипажи
Рейсы
Время простоя
Коммивояжер
Города
Товарооборот
n,1
4 7 0 С=(сij)=
0 3 8
6 0
9
(
0 0 1
)
Х=(хij)=
1 0 0
0 1
0
5. Задача о назначениях
5.1 Постановка задачи
Задача заключается в выборе такого распределения ресурсов по
объектам, при котором минимизируется стоимость назначений.
Предполагается, что каждый ресурс назначается ровно один раз и
каждому объекту приписывается ровно один ресурс.
Возможные применения задачи о назначениях представлены в
табл. 9.1.
Таблица 9.1
Матрица стоимостей С имеет вид
С = (сij),
где сij — затраты, связанные с назначением i-го ресурса на j-й
объект, i=j=
Обозначим:
1, если i-й ресурс назначается на j-й объект;
xij=
0 в противном случае.
Таким образом, решение задачи может быть записано в виде
X=(xij).
Допустимое решение называется назначением. Оно строится пу-
тем выбора ровно одного элемента в каждой строке матрицы X=(xij) и
ровно одного элемента в каждом столбце этой матрицы.
Элементы сij матрицы С, соответствующие элементам xij=1 мат-
рицы X, будем зачеркивать:
, где n — число объектов или ресурсов.

73
Математическая постановка задачи:
nin
j
ijij
xc
1 1
n
j
ij
x
1
n,1
n
i
ij
x
1
n,1
L(X)=
min
при ограничениях:
=1, i=
=1, j=
xij=0 или 1.
,
,
5.2 Алгоритм решения задачи
Задача о назначениях является частным случаем транспортной
задачи, в которой аi=bj=1. Поэтому ее можно решать алгоритмами
транспортной задачи. Рассмотрим другой метод, который является
более эффективным, учитывающим специфику математической модели. Этот метод называется венгерским алгоритмом. Он состоит из
следующих шагов:
1) преобразования строк и столбцов матрицы;
2) определение назначения;
3) модификация преобразованной матрицы.
1-й шаг. Цель данного шага — получение максимально воз-
можного числа нулевых элементов в матрице С. Для этого из всех
элементов каждой строки вычитаем минимальный элемент соответствующей строки, а из всех элементов каждого столбца вычитаем минимальный элемент соответствующего столбца.
2-й шаг. Если после выполнения 1-го шага в каждой строке и
каждом столбце матрицы С можно выбрать по одному нулевому элементу, то полученное решение будет оптимальным назначением.
3-й шаг. Если допустимое решение, состоящее из нулей, не
найдено, то проводим минимальное число прямых через некоторые
столбцы и строки так, чтобы все нули оказались вычеркнутыми. Выбираем наименьший невычеркнутый элемент. Этот элемент вычитаем
из каждого невычеркнутого элемента и прибавляем к каждому элементу, стоящему на пересечении проведенных прямых.
Если после проведения 3-го шага оптимальное решение не до-
стигнуто, то процедуру проведения прямых следует повторять до тех
пор, пока не будет получено допустимое решение.

74
Пример.
(
2
10 9 7
)
С=(сij)=
15 4 14 8 13
14
16
11
4 15
13
19
(
0 8 7
5
)
11 0 10
4
2 3 5
0
0
11 9 15
(
0 8 2
5
)
11 0 5
4
2 3 0
0
0
11 4 15
Распределить ресурсы по объектам.
РЕШЕНИЕ. 1-й шаг. Значения минимальных элементов строк 1,
2, 3 и 4 равны 2, 4, 11 и 4 соответственно. Вычитая из элементов каждой строки соответствующее минимальное значение, получим
Значения минимальных элементов столбцов 1, 2, 3 и 4 равны 0,
0, 5, 0 соответственно. Вычитая из элементов каждого столбца соответствующее минимальное значение, получим
2-й шаг. Ни одно полное назначение не получено, необходимо
провести модификацию матрицы стоимостей.
3-й шаг. Вычеркиваем столбец 1, строку 3, строку 2 (или стол-
бец 2). Значение минимального невычеркнутого элемента равно 2:

75
(
0 8 2
5
)
11 0 5
4
2 3 0
0
0
11 4 15
min=2
(
0 6 0
3
)
13 0 5
4
4 3 0
0
0 9 2
13
(
0 0 1
0
)
0 1 0 0 0 0 0
1
1 0 0
0
Итак, Х
опт
=
Вычитаем его из всех невычеркнутых элементов и, складывая
его со всеми элементами, расположенными на пересечении двух линий, получим
Ответ. Первый ресурс направляем на 3-й объект, второй — на 2-
й объект, четвертый — на 1-й объект, третий ресурс — на 4-й объект.
Стоимость назначения: 9+4+11+4 = 28.
Примечания. 1. Если исходная матрица не является квадратной,
то нужно ввести фиктивные ресурсы или фиктивные объекты, чтобы
матрица стала квадратной.
2. Если какой-либо ресурс не может быть назначен на какой-то
объект, то соответствующая стоимость полагается равной достаточно
большому числу М.
3. Если исходная задача является задачей максимизации, то все
элементы матрицы С следует умножить на (-1) и сложить их с достаточно большим числом так, чтобы матрица не содержала отрицательных элементов. Затем задачу следует решать как задачу минимизации.
4. Если число линий, необходимое для того, чтобы вычеркнуть
нулевые элементы, равно числу строк или столбцов (квадратной матрицы), то существует назначение нулевой стоимости.
5.3 Планирование загрузки оборудования с учетом макси-
мальной производительности станков
Рассмотрим следующую задачу.
На предприятии пять станков различных видов, каждый из
которых может выполнять пять различных операций по обработке

76
деталей. Известна производительность каждого станка при
55
52365
34343
66534
54626
76435
х
58745
76767
44576
56484
34675
14301
10101
00132
12040
01342
14301
10101
00132
12040
01342
выполнении каждой операции, заданная матрицей.
С=
Определить, какую операцию и за каким станком следует за-
крепить, чтобы суммарная производительность была максимальной
при условии, что за каждым станком закреплена только одна операция.
РЕШЕНИЕ. Так как в задаче требуется определить max, a алго-
ритм метода дан для задач на min, умножим матрицу С на (-1). Сложим полученную матрицу, имеющую отрицательные коэффициенты,
с положительным числом, например с числом 10. Получим
Минимальные элементы в строчках есть 3, 4, 4, 6, 4. Вычтем их
из соответствующих элементов матрицы, получим
Так как назначение не получено, вычеркиваем строку 2, столбцы
2, 4, 5:
Минимальный элемент равен 1. Вычитаем его из всех не-
вычеркнутых элементов и складываем со всеми элементами, расположенными на пересечении двух линий. Получаем

77
14200
10000
00031
23050
01241
00010
00100
01000
00001
10000
m,1
n,1
Оптимальное решение, соответствующее последней матрице,
равно
Х
опт
=
Суммарная производительность: 6 + 6 + 3 + 6 + 7 = 28.
Таким образом, на первом станке надо делать 5-ю операцию, на
втором — 1-ю операцию, на третьем — 4-ю операцию, на четвертом
— 3-ю операцию, на пятом станке — 2-ю операцию. Суммарная производительность: 28 деталей в единицу времени.
5.4 Задача коммивояжера
В коммерческой деятельности коммерсанты, торговые агенты
постоянно проводят работу по поиску партнеров или клиентов для заключения договоров на поставку и покупку товаров. Для решения
этих задач коммерсантам необходимо выезжать в командировки, выполнять вояж по целой сети городов как по нашей стране, так и за рубежом. Поскольку продолжительность командировки и транспортные
расходы следует сокращать, то необходимо перед поездкой составить
кратчайший маршрут, предусматривающий посещение каждого пункта только один раз, и возвращение обратно. Задача коммивояжера заключается в определении такой последовательности объезда городов,
которая обеспечит минимальное время переезда, или минимальную
стоимость проезда, или минимальное расстояние переезда.
Постановка задачи. Пусть имеется n городов. Расстояния между
любой парой городов (i, j) известны и составляют dij, где i=
, j=
Если прямого маршрута сообщения между городами не существует, а
также для всех i=j полагаем, что dij= . На этом основании расстояния
между городами удобно представить в виде матрицы D = (dij)
nxn
.
Если городам поставить в соответствие вершины графа (рис.
9.1), а соединяющим их дорогам ребра, то в терминах теории графов
.
задача заключается в определении гамильтонова цикла минимальной
длины. Гамильтонов цикл включает все вершины графа ровно один
раз, причем начальная вершина совпадает с конечной, а длина

78
определяется суммой длин всех ребер. Таким образом, необходимо
к
Мji
ij
d
),(
n,1
)1(,1 n
построить кольцевой маршрут проезда всех городов минимальной
длины, начиная с любого пункта и в любую сторону.
2
1 3
5 4
Рис. 9.1. Неориентированный граф задачи коммивояжера
Поскольку всего городов n, то коммивояжер, выехав из заданно-
го города, должен побывать в остальных (n - 1) городах только один
раз. Следовательно, всего существует (n - 1)! возможных маршрутов,
среди которых один или несколько — оптимальные. В большинстве
случаев можно предположить, что расстояние между городами i и j
является симметричным и равно расстоянию от города j до города i,
т.е. dij=dji. Расстояния между городами запишем в виде матрицы D.
Если в задаче n городов, то D является матрицей размером (nхn) с неотрицательными элементами dij0, которые отображают длины ребер
в сети городов. Так, при n = 5 количество возможных вариантов
маршрутов равно (5 - 1)! = 24. Расстояния между городами заданы
матрицей в табл. 9.2.
Решение задачи можно представить в виде замкнутого контура,
представляющего собой кольцевой маршрут, например, для графа,
изображенного на рис. 9.1 возможный вариант можно записать в виде
совокупности соответствующих пар дуг:
Мк={(1,2), (2, 4), (4, 5), (5,3), (3,1)}.
Длина F(Mk) маршрута равна сумме соответствующих длин ре-
бер матрицы расстояний, тогда целевую функцию можно записать
так:
F(Mk) =
min i=
; к=
.

79
Таблица 9.2
i
1 2 3 4 5
j
1 90
80
40
100
2
60 40
50
70 3 50
30 60
20
4
10
70
20 50 5 20
40
50
20
22213
11134
31354
12243
(
В
1
В2
В3
)
A1
1 2 3
A2
1 4 2
A3
3 1 5
Для любого допустимого маршрута каждая строка и каждый
столбец матрицы расстояний D содержат только по одному элементу.
Решением задачи является определение кольцевого маршрута минимальной длины.
5.5 Задачи для самостоятельного решения
Задача 1. Фирма имеет три механизма A1, А2, А3, каждый из ко-
торых может быть использован на каждом из трех видов работ В1, В2,
В3 с производительностью, заданной матрицей (в условных единицах)
Распределить механизмы по одному на каждую из работ так,
чтобы суммарная производительность всех механизмов была максимальной.
Задача 2. Пять человек должны выполнить четыре работы, при-
чем каждый из работников с разной производительностью может выполнить любую из этих работ. Предусматривается, что каждый работник в состоянии сделать только одну работу.
Производительности работников при выполнении работ заданы
матрицей

80
Распределить людей на работу так, чтобы выполнить ее с мак-
45404247
45354038
63586056
83757268
111012
101113
111215
74385
35356298
3515382320
симальной производительностью.
Задача 3. Фирма, имеющая четыре склада, получила четыре за-
каза, которые необходимо доставить различным потребителям.
Складские помещения каждой базы имеют вполне достаточное количество товара, чтобы выполнить любой один из этих заказов.
Расстояния между каждой базой и каждым потребителем приве-
дены в матрице
Как следует распределить заказы по базам, чтобы общая даль-
ность транспортировки была минимальной?
Задача 4. Фирма объединяет три предприятия, каждое из кото-
рых производит 3 вида изделий.
Себестоимости каждого изделия в усл. ед. при изготовлении на
каждом предприятии указаны в матрице
Учитывая необходимость специализации каждого предприятия
только по одному изделию, распределить производство изделий по
предприятиям так, чтобы изделия имели минимальную себестоимость.
Задача 5. Компания разрабатывает план выпуска трех новых
видов продукции. Она уже владеет пятью предприятиями, и теперь на
трех из них должны производиться новые виды продукции — по одному виду на одно предприятие.
Даны издержки производства единицы продукции, усл. ед.:
Предприятия
Вид продукции
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
