Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
YasinskyyI.S.AVT-172.Variant8.docx
Скачиваний:
34
Добавлен:
25.05.2021
Размер:
1.21 Mб
Скачать

Лабораторная работа №5

Решение задач линейного программирования «Задача о назначениях»

Цель работы: Получить навыки в решении задач линейного программирования «Задачи о назначениях»

Задание для лабораторной работы

Вариант 1

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

Четверо рабочих могут выполнить пять видов работ. Стоимость cij выполнения i-м рабочим j-ой работы приведена в таблице.

Таблица 5.1 – Исходные данные

Виды работ

1

2

3

4

5

Рабочие

1

3

6

2

5

11

2

1

2

7

11

3

3

5

12

11

9

1

4

2

4

2

10

5

Выполнение

Составляем математическую модель задачи.

Предположим, что имеется n различных работ, каждую которых может выполнить любой из m привлеченных исполнителей. Стоимость (либо эффективность) выполнения i-й работы j-м исполнителем известна и равна cij. Необходимо распределить исполнителей по работам (назначить одного исполнителя на каждую работу) так, чтобы минимизировать суммарные затраты, связанные с выполнением (либо достичь максимальной эффективности) всего комплекса работ.

Введем переменные xij, принимающие значение 1 в случае, когда i-ю ра- боту выполняет j-й исполнитель и значение 0 во всех остальных случаях, i,j = 1, n.

Целевая функция

Ограничения имеют вид

а) что каждый работник назначается только на одну работу

б) один работник выполняет только одну работу

Заполняем таблицу Excel исходными данными (рисунок 5.1).

Блок ячеек G20:K24 содержит оптимальное решение, значение этих ячеек будет получено в результате решения задачи.

Блок ячеек G26:K26 содержит значения затрат времени на выполнение операций каждого рабочего для каждой операции.

Рисунок 5.1 – Внесение исходных данных

Для вычисления целевой функции в ячейке G28 используем функцию =СУММПРОИЗВ(G20:K24; G9:K13) (рисунок 5.2).

Рисунок 5.2 – Ввод целевой функции

Вводим ограничения (рисунок 5.3): по виду работ (каждый работник назначается только на одну работу) в ячейки G26 (=СУММ(G20:G24)) и растягиваем до ячейки K26 и по выполнению (один работник выполняет только одну работу) в ячейки M20 (=СУММ(G20:K20)) и растягиваем до ячейки M24.

Рисунок 5.3 – Ввод ограничений

На вкладке Данные в группе Анализ выберем команду Поиск решения. На экране отобразится ДО Параметры поиска решения, в котором установим следующие параметры (рисунок 5.4):

 в поле Оптимизировать целевую функцию указываем адрес ячейки со значением целевой функции – G28;

 переключатель До устанавливаем на минимум целевой функции;

 в поле Изменяя ячейки переменных указываем адреса ячеек со значениями искомых переменных G20:K24;

 в области В соответствии с ограничениями с помощью кнопки Добавить размещаем все ограничения задачи;

 нажимаем кнопку Найти решение.

Рисунок 5.4 – Заполнение ДО Поиск решения

Результат выполнения Поиска решений представлен на рисунке 5.5.

Рисунок 5.5 – Результаты расчета

Вывод

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

 рабочего 1 на выполнение операции 3;

 рабочего 2 на выполнение операции 2;

 рабочего 3 на выполнение операции 5;

 рабочего 4 на выполнение операции 1;

 рабочего 5 на выполнение фиктивной операции 4;

Рабочий 5, назначен на выполнение фиктивной операций, фактически не работает. Суммарное стоимость за выполнение всех операций составит 7 ден. ед.

Соседние файлы в предмете Использование вычислительной техники на автомобильном транспорте