
- •В.М. Панченко а.В. Панов
- •Учебное пособие
- •Введение
- •1. Основные свойства и модели линейного программирования
- •Граф-схема решения задачи линейного программирования
- •1.2. Алгебраическая модель решения задачи линейного программирования
- •1.3. Геометрическая форма представления процесса решения
- •1.4. Свойства задач линейного программирования
- •Симплекс-метод решения задачи линейного программирования
- •2.1. Иллюстрация процесса поиска решения
- •2.2. Алгебраическое решение
- •2.3. Табличный вариант замены переменных
- •2.4. Система «тренажер»
- •2.5. Система правил замены переменных
- •3.2. Формирование конкретной системы данных задачи линейного программирования
- •3.3. Программа Random (Windows-версия)
- •3.4. Экономическое содержание двойственности
- •4.2. Составление опорного плана тз по методу минимума стоимостей перевозки
- •4.3. Сравнение планов по критерию стоимости
- •4.4. Проверка лучшего опорного плана на оптимальность
- •4.5. Улучшение плана по методу циклических перестановок
- •Заключение
- •Библиографический список
- •117454, Москва, пр-кт Вернадского, 78
3.2. Формирование конкретной системы данных задачи линейного программирования
Конкретная система представляет собой таблицу числовых данных. В табл. 3.2 приведена транспортная таблица для задачи линейного программирования на примере конкретного описания системы данных Jk.
Таблица 3.2
Система данных
|
|
Инвестиционные проекты |
Запасы |
||||||||||||||||||||
|
|
B1 |
B2 |
B3 |
B4 |
B5 |
B6 |
Ai |
|||||||||||||||
Активы |
A1 |
|
7 |
|
1 |
|
8 |
|
1 |
|
5 |
|
3 |
25 |
|||||||||
|
|
|
|
|
|
||||||||||||||||||
A2 |
|
7 |
|
1 |
|
8 |
|
5 |
|
7 |
|
4 |
32 |
||||||||||
|
|
|
|
|
|
||||||||||||||||||
A3 |
|
3 |
|
7 |
|
4 |
|
5 |
|
7 |
|
5 |
31 |
||||||||||
|
|
|
|
|
|
||||||||||||||||||
A4 |
|
1 |
|
2 |
|
4 |
|
9 |
|
9 |
|
9 |
34 |
||||||||||
|
|
|
|
|
|
||||||||||||||||||
Заявки |
bj |
18 |
11 |
24 |
20 |
28 |
21 |
122 |
Остановимся на процедуре формирования конкретной матрицы чисел IK в учебной системе, реализуемой, например, в виде алгоритма адресного наложения маски на таблицу случайных чисел [4, с.122]:
|
|
1 2 |
3 4 |
5 6 |
|
|||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
A1 |
A2 |
A3 |
|
1 |
8 |
5 |
7 |
4 |
5 |
4 |
33 |
|
|
|||||
IK = |
|
Б1 |
Б2 |
Б3 |
|
2 |
4 |
5 |
7 |
5 |
6 |
2 |
29 |
|
||||||
|
|
В1 |
В2 |
В3 |
|
3 |
4 |
9 |
9 |
9 |
8 |
8 |
47 |
|
||||||
|
|
Г1 |
Г2 |
Г3 |
|
4 |
7 |
6 |
2 |
7 |
6 |
|
28 |
+ 1 |
|
|||||
Маска М |
Маска М |
|
23 |
25 |
25 |
25 |
25 |
14 |
137 |
|
|
|||||||||
|
|
|
|
|
|
|
|
+ 1 |
|
138 |
|
Вместо «0» в ячейку (46) добавляется значащая цифра оценки эффективности, например, 1.
Получим выборку по маске (при замене нуля на единицу) путем адресного наложения маски на поле случайных чисел. Представим результат в виде системы блочных матриц:
|
|
|
|
|
|
|
|
Aj |
|
|
|||||||||||||||
|
8 |
5 |
7 |
4 |
5 |
4 |
|
33 |
|
|
|||||||||||||||
|
4 |
5 |
7 |
5 |
6 |
2 |
|
29 |
|
||||||||||||||||
A=[aij] |
4 |
9 |
9 |
9 |
8 |
8 |
|
47 |
|
||||||||||||||||
|
7 |
6 |
2 |
7 |
6 |
1 |
|
28 |
+ 1 |
29 |
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
Ai |
23 |
25 |
25 |
25 |
25 |
14 |
|
137 |
|
|
|||||||||||||||
|
|
+ 1 |
|
|
138 |
|
|||||||||||||||||||
|
|
|
|
|
|
15 |
|
|
|
|
Рассмотрев пример, можно приступить к описанию учебной системы объекта IC , свойства которого позволят конструировать множество непересекающихся или частично непересекающихся наборов вариантов выборок для индивидуальных заданий по таблице случайных чисел, что важно для потока обучаемых в условиях ВУЗа. Маска выборок для IK представляет собой часть адресной системы фрагмента таблицы двухразрядных случайных чисел размерности 20х20 с общим числом чисел 400:
|
|
n |
n + 1 |
n + 2 |
|
|
m |
r1 |
r2 |
r3 |
|
Маска
|
m + 1 |
r4 |
r5 |
r6 |
= M . |
|
m + 2 |
r7 |
r8 |
r9 |
|
|
m + 3 |
r10 |
r11 |
r12 |
|
Алгоритм выборки. Маска М, описанная в системе собственных координат упорядоченным числом {rij}, своей ячейкой r1 накладывается на ячейку таблицы случайных чисел. Для преодоления краевого эффекта используется правило вычетов по модулю m = 20, причем m N20 = { А, Б, В, …, Ф}, т.е. от А и до Ф, где |{А;…Ф}|=20.
Например, для строки номер 21: 21 = 21 mod 20 = 1;
для строки номер 22: 22 = 22 mod 20 = 2.
т.е. n = n mod 20; m = m mod 20.
.
Здесь m N20 = {1, 2, …, 20} — числа перенумерованного алфавита по полной системе соответствий:
А |
1 |
Е |
6 |
Л |
11 |
Р |
16 |
Б |
2 |
Ж |
7 |
М |
12 |
С |
17 |
В |
3 |
З |
8 |
Н |
13 |
Т |
18 |
Г |
4 |
И |
9 |
О |
14 |
У |
19 |
Д |
5 |
К |
10 |
П |
15 |
Ф |
20 |
Система вычетов по модулю 20 позволяет замкнуть таблицу из 20 20 = 400 случайных чисел и сформировать 400 вариантов заданий при первом проходе таблицы случайных чисел, отличающихся адресно хотя бы в одном столбце своих наборов чисел в выборках по маскам. При этом наложение маски базируется по адресу числа r1, т.е. задается начало выборки с любого адреса (m, n):
{ (m, n) } = { (A, 1); … ; (A, 20); (Б, 1); … ; (Б, 20); … … ; (Ф, 1); … ; (Ф, 20) } = 400.
Другими словами, один проход таблицы с выборкой по маске М позволяет получить порядка 400 вариантов индивидуальных заданий, отличающихся в одном столбцовом наборе чисел.