Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лаб_работа_4

.pdf
Скачиваний:
59
Добавлен:
16.03.2016
Размер:
633.77 Кб
Скачать

ЛАБОРАТОРНАЯ РАБОТА 4. ЗАДАЧА О НАЗНАЧЕНИЯХ

Общая постановка задачи: требуется распределить n работ между n рабочими так, чтобы затраты на выполнение работ были минимальными или эффективность использования рабочей силы была максимальной.

Модель задачи в случае минимизации затрат о назначениях выглядит

так:

n n

 

cij xij min

j 1i 1

 

n

 

xij

1, j 1,..., n

i 1

(1)

n

 

xij

1,i 1,..., n

j 1

 

xij 0,i 1,..., n, j 1,..., n,

где: сij – затраты на выполнение i-м рабочим j-й работы;

xij – переменная модели: xij=1, если i-й рабочий назначен на работу j, xij=0, если i-й рабочий не назначен на работу j.

В случае максимизации эффективности использования рабочей силы за сij обозначают коэффициент, показывающий эффективность выполнения i-м рабочим j-й работы, и задача решается на максимизацию целевой функции.

Если количество рабочих не равно количеству работ, задача является открытой или несбалансированной и требует приведения к замкнутому виду путем введения недостающих рабочих или работ в необходимом количестве, для которых все сij = 0.

Пример:

Фирма получила заказ на разработку пяти программных продуктов.

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

 

Программа

Программа

Программа

Программа

Программа

 

1

2

3

4

5

Галкин

46

59

24

62

67

Палкин

47

56

32

55

70

Малкин

44

52

19

61

60

 

 

 

 

 

 

Чалкин

47

59

17

64

73

Залкин

43

 

65

 

20

60

 

75

д

 

 

 

 

 

 

 

 

Как

распределить

работы

между программистами,

чтобы общее

количество человеко-дней, затраченное на выполнение заказа, было минимальным?

Составим модель линейного программирования, отражающую условие:

46x11 59x12 24x13 62x14 67x15 47x21 56x22

32x23 55x24 70x25 44x31 52x32 19x33 61x34

60x35 47x41 59x42 17x43 64x44 73x45

43x51 65x52 20x53 60x54 75x55 min

5

xij 1, j 1,...,5 (2)

i 1 5

xij 1, i 1,...,5

j 1

 

 

1

 

xij

, i 1,...5; j 1,...,5

0

 

Решим задачу при помощи Microsoft Excel:

Рис. 1

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

Рис. 2

Проведенные расчеты показывают, что минимальное количество человеко-дней для выполнения заказа составляет 234. Назначение программиста для создания программы определяется наличием на пересечении строки и столбца значения 1.

Рис. 3

Результатом вычислений являются следующие значения переменных:

x12 1 x24 1 x35 1 x43 1

x51 1

Значения остальных переменных равны нулю.

Полученное решение означает, что Галкину будет поручено выполнение программы 2, Палкину – программы 4, Малкину – программы 5, Чалкину – программы 3, Залкинду – программы 1.

ЗАДАНИЯ ДЛЯ САМОСТОЯТЕЛЬНОЙ РАБОТЫ

Задача 1

В Центральном административном округе города Москвы открываются 4 магазина торговли по предварительным заказам - в районах Басманный, Замоскворечье, Мещанский и Таганский. Идея проекта состоит в том, что товары хранятся на четырех централизованных складах, находящихся в Северном, Северо-Восточном, Южном и Западном административных округах, и несколько раз в день по мере поступления заказов доставляются в магазины небольшими партиями.

Время, затрачиваемое на доставку продукции со складов в магазины, приведено в таблице (в минутах):

 

Басманный

Замоскворечье

Мещанский

Таганский

Северный

20

30

15

30

Северо-Восточный

15

25

20

20

Южный

35

15

30

20

Западный

30

20

20

30

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

Задача 2

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

 

Книга 1

Книга 2

Книга 3

Книга 4

Иванов

10

25

14

25

Петров

8

12

16

28

Сидоров

12

18

17

33

Андреев

14

23

15

30

Васильев

11

20

18

28

Фирма использует повременную оплату труда. Переводчики имеют разную квалификацию, поэтому за день работы фирма платит Иванову 700 рублей в день, Петрову - 800 рублей в день, Сидорову - 600, Андрееву - 500, Васильеву - 550.

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

Задача 3

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

Каждый автобус обслуживают 2 водителя. Компанией приглашены 8 водителей, в различной степени знакомых с дорогами европейских стран (в % от экскурсионного маршрута):

 

Франция

Италия

Чехия

Испания

Александр

56

43

85

68

Алексей

56

38

99

70

Валентин

63

94

54

84

Василий

96

89

65

24

Николай

44

62

63

72

Виктор

74

85

42

68

Андрей

23

59

37

92

Юрий

89

45

53

78

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]