во рабочіхTextstringРешеніеAnswStringОтвет Int [,] aIntІсходная матріцаInt [,] TIntМатріца часу виполненіяInt [] rabsIntМассів з кількість работніковInt [] UIntМассів управленіяInt [] sost2, sost3, sost4, sost5, sost6IntСостояніяStepIntШагіInt [] difMas1, difMas1, difMas3IntВременние масиви для зберігання унікальних состоянійInt [,] temp21 temp22, temp31, temp32, temp41, temp42, temp51, temp52, temp61, temp62IntВременние матриці для певних кроків 1,2,3,4,5,6Int [,] tab2, tab3 , tab4, tab5 ,, tab6; intІтоговие табліциi=0, j=0, s=0, p=N, t=0; intПеременние, счетчікіPrint (int [,] mas) Public stringФункція виведення двовимірного массіваniz (ref int [,] temp1, int [,] a, int [,] tab) Public stringФункція заповнення матриці, відповідна значенням нижньої частіverh (int [,] temp1 , ref int [,] temp2, int [,] a, int [] difMas, int step) Public stringФункція заповнення матриці, відповідна значенням верхньої частіmax (int a, int b) public intФункція знаходження максимального елемента з двухmin (int a, int b) public intФункція знаходження мінімального елемента з двухcountDifEl (int [,] mas, int [,] mas2, int [] U, int [,] tab, ref int [] difMas1, ref int [] difMas2, ref int [] difMas3 , ref int [] sost) public voidФункція знаходження різних значень (кількостей працівників) у нижній частині клітини і мінімальних в верхнейsearch (int [,] mas, int [,] mas2, int a, int b, ref int f) public voidФункція пошуку стану (кількості працівників) для зворотного просмотраminTime (int step, int [,] tab, ref int [] answer, ref int t) public stringФункція знаходження мінімального часу виконання работprintAnswer (int [] answer) public stringФункція виведення відповіді
3.6 Структурна схема алгоритму сценарію діалогу і опис його програмної реалізації
Структурна схема алгоритму сценарію діалогу була розроблена за допомогою Microsoft Visio Studio 2007 і представлена ??на малюнку 2.7, опис її в таблиці 2.3
Малюнок 2.7 - Структурна схема алгоритму сценарію
Алгоритм сценарію діалогу заснований на перевірки повідомлень, що приходять в головний підпрограму про натискання того чи іншого пункту меню дій і в залежності від цього дії можуть йти по різних гілок
Таблиця 2.3 Опис блоків структурної схеми алгоритму сценарію
Номер блокаТіпНазначеніе1ПускЗапуск программи2РешеніеВибор методу рішення 3-самостійно заповнити дані 4 - по умолчанію3ДействіеЗаполненіе таблиці, вибір параметров4ДействіеАвтоматіческое заповнення всіх данних5ДействіеРешеніе задачі6РешеніеВивод відповіді на екран7РешеніеВивод рішення задачі
3.7 Структурна схема функціонального алгоритму розв'язання задачі
На малюнку 2.8 представлена ??структурна схема алгоритму розв'язання задачі. Опис блоків структурної схеми алгоритму розв'язання задачі наведено в таблиці 2.4
Таблиця 2.4
Номер блокаТіпНазначеніе1ПускЗапуск программи2Ввод даннихЗаполненіе матриці часу виконання работ3ДействіеФормірованіе остаточної таблиці для першого етапа4ДействіеНахожденіе проміжної таблиці i етапа5РешеніеФормірованіе остаточної таблиці i етапа6ДействіеПроверка досягли ми останнього етапу, якщо i=m, то йдемо до наступного етапу, інакше повертаємося на 4 етап. 7ДействіеРешеніе завдання відповідно до алгоритму зворотного прогону. 8ОкончаніеВиход з програми
Малюнок 2.8 - Структурна схема алгоритму розв'язання задачі
4. Чисельні експерименти
4.1 Ручна реалізація алгоритму розв'язання задачі
Крок 1:
Виробляється розподіл вантажників для виконання розвантажувально-навантажувальних робіт на 1 складі:
T 1 (2)=10//час виконання роботи 2-ма робочими на складі
T 1 (4)=6//час виконання роботи 4-ма робочими на складі
T 1 (5)=5//час виконання роботи 5-ма робочими на складі
T 1 (6)=3//час виконання роботи 6-ма робочими на складі
T 1 (8)=2//час виконання роботи 48-ма робочими на складі
Крок 2:
t (m ij) t 1 (M - m ij) 10 (2) 6 (4) 5 (5) 3 (6) 2 (8) 12 (2) 12 412 612 712 812 108 (4) 10 68 88 98 108 126 (5) 10 76 96 106 1118 13 4 (6) 10 86 105 114 1218 143 (8) 10 106 125 133 1418 16
З 12 виділених - 11 унікальних значень. На наступному кроці 11 стовпців.
Крок 3:
t (m ij) t 2 (M - m ij) 12 (4) 10 (6) 10 (7) 8 (8) 6 (9) 6 (10) 5 (11) 4 (12) 5 (13) 3 (14) 3 (16) 14 (2) 14 614 814 914 1014 1114 1214 1314 1414 1514 1614 189 (4) 12 810 1010 119 129 139 149 159 169 179 159 206 (5) 12 910 1110 128 136...