QalOGUGtk0
.pdfщелкните Параметры Excel, а затем выберите категорию Надстройки. В
поле Доступные надстройки установите флажок рядом с пунктом Поиск решения и нажмите кнопу Ok.
Заполнить появившееся окно «Параметры поиска решения» следующими данными:
оптимизировать целевую функцию: B18;
равной: максимальному значению;
изменяя ячейки переменных: B9:B11;
В соответствии с ограничениями: B14<=B6; B15<=C6; B16<=D6; B9:B11=целое; B9:B11>=0;
Выберите метод решения: поиск решения линейных задач симплекс-
методом.
231
Введя все данные и нажав кнопку «Найти решение», получим оптимальное
решение.
232
zmax 894 при 18;48;0 .
233
Пышкина Т.В.
Решение транспортной задачи линейного программирования методом потенциалов и с использованием табличного редак-
тора Excel.
Дано условие транспортной задачи линейного программирования:
Фирма по прокату автомобилей «Золотое кольцо России» собирает заявки на аренду во всех городах центра России. Клиент имеет возможность по-
лучить автомобиль в любом удобном для него населенном пункте и оста-
вить его в любом месте, где он заканчивает путешествие, в том числе и в своем родном городе. Работники фирмы забирают оставленные автомоби-
ли и перегоняют их для передачи новым клиентам.
Сейчас 4 автомобиля компании оставлены вКлину, 3 — в Ростове Вели-
ком, 6—в Ярославле и 1 — в Серпухове.
Имеются заказы на 5 автомобилей во Владимире, на 3 автомобиля в Санкт-
Петербурге и на 6 автомобилей в Москве.
Расстояния между городами (в км) приведены в следующей таблице:
|
Владимир |
Санкт-Петербург |
Москва |
|
|
|
|
Клин |
300 |
550 |
100 |
|
|
|
|
Ростов Великий |
200 |
620 |
200 |
|
|
|
|
Ярославль |
350 |
570 |
250 |
|
|
|
|
Серпухов |
250 |
700 |
150 |
|
|
|
|
Составьте план, по которому следует перегонять автомобили новым кли-
ентам. Ориентируйтесь на минимизацию расстояния, которое пройдут все перегоняемые автомобили.
Рассмотрим сначала решение этой задачи методом потенциалов.
Построим опорное решение методом минимального элемента:
234
Число заполненных клеток равно шести, что соответствует значению
m n 1 4 3 1 6 .
Для заполненных клеток составляем систему уравнений:
v1 |
u2 |
200 |
||
v |
u |
|
350 |
|
1 |
|
3 |
|
|
v2 |
u3 |
570 |
||
|
|
u1 |
100 |
|
v3 |
||||
v |
|
u |
|
200 |
3 |
u |
2 |
150 |
|
v |
3 |
4 |
||
|
|
|
Пусть u2 |
0 , тогда v1 |
200, v3 200,u1 100,u4 |
50,u3 |
150, v2 |
420. |
|
|||
Для незаполненных |
клеток проверим |
неравенства |
v j ui |
Cij , где |
|||||
i 1,..,4; j |
1,..,3 : |
|
|
|
|
|
|
|
|
|
v1 u1 |
200 100 100 C11 300 |
верно |
|
|
||||
|
v2 u1 |
420 100 320 C12 550 |
верно |
|
|
||||
|
v2 |
u2 |
420 0 420 C22 620 |
верно |
|
|
|||
|
v3 |
u3 |
200 ( 150) 350 C33 |
250 |
не верно |
|
|||
|
v1 u4 |
200 50 150 C41 250 |
верно |
|
|
||||
|
v2 |
u4 |
420 50 370 C42 700 |
верно |
|
|
Строим цикл, соединяющий клетку 3;3 , в которой не выполняется нера-
венство, с заполненными клетками таблицы. Такой цикл определен един-
ственным образом. Минимальное число в клетках со знаком «-» равно 1,
поэтому сдвиг по циклу производится по числу 1.
Получаем новую транспортную таблицу.
235
|
|
|
v1 |
|
v2 |
|
v3 |
|
u1 |
|
300 |
|
550 |
4 |
100 |
4 |
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
u2 |
3 |
200 |
|
620 |
|
200 |
3 |
|
|
|
|
|
|
||||
u |
3 |
2 |
350 |
3 |
570 |
1 |
250 |
6 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
u4 |
|
250 |
|
700 |
1 |
150 |
1 |
|
|
|
|
|
|
||||
|
|
|
5 |
|
3 |
|
6 |
|
Для заполненных клеток составляем систему уравнений:
v1 |
u2 |
200 |
||
v |
|
u |
|
350 |
1 |
|
3 |
|
|
v2 |
u3 |
570 |
||
|
|
u1 |
100 |
|
v3 |
||||
v |
|
u |
|
250 |
3 |
u |
3 |
150 |
|
v |
3 |
4 |
||
|
|
|
Пусть u3 |
0 , тогда v1 350, v2 570, v3 250,u1 |
150,u2 |
150,u4 |
100. |
|
||||
Для незаполненных |
клеток |
проверим |
неравенства |
v j ui |
Cij , где |
||||
i 1,..,4; j |
1,..,3 : |
|
|
|
|
|
|
|
|
|
v1 u1 350 150 200 C11 300 |
верно |
|
|
|||||
|
v2 u1 |
570 |
150 420 C12 |
550 |
верно |
|
|||
|
v2 u2 |
570 |
150 420 |
C22 |
620 |
верно |
|
||
|
v3 u2 |
250 |
150 |
100 |
C23 |
200 |
верно |
|
|
|
v1 u4 |
350 100 250 |
C41 |
250 |
верно |
|
|||
|
v2 u4 |
570 |
100 |
670 |
C42 |
700 |
верно |
|
Все неравенства выполняются, следовательно, получили оптимальный план перегона автомобилей.
|
0 |
0 |
4 |
||
|
|
3 |
0 |
0 |
|
X опт |
|
|
|||
|
2 |
3 |
1 |
|
|
|
|
||||
|
|
|
|
|
|
|
|
0 |
0 |
1 |
|
|
|
|
Минимальное расстояние, которое должны пройти все автомобили равно:
4 100 3 200 2 350 3 570 1 250 1 150 3810 .
236
Рассмотрим теперь решение этой задачи с использованием табличного ре-
дактора Excel.
Запишем исходные данные задачи в таблице Excel.
Проверим, что количество заказанных машин совпадает с количеством свободных.
Получили одинаковое значение. Выделим область данных, по размерам совпадающее с размером данных условия (3x4 клетки).
В ячейку ограничения E11 введем формулу для вычисления суммы по строке: СУММ(B11:D11).
237
Аналогично введем остальные ограничения по строкам.
В ячейку ограничения B15 введем формулу для вычисления суммы по столбцу: СУММ(B11:B14).
Аналогично введем остальные ограничения по столбцам.
Введем формулу для вычисления целевой функции: СУММПРО-
ИЗВ(B2:D5;B11:D14).
238
Выделив ячейку F17 с формулой целевой функции, запустим Данные – Поиск решения.
Замечание. По умолчанию в Excel надстройка Поиск решения отключена.
Чтобы активизировать ее, щелкните значок «Кнопка MicrosoftOffice»,
щелкните Параметры Excel, а затем выберите категорию Надстройки. В
поле Доступные надстройки установите флажок рядом с пунктом Поиск решения и нажмите кнопу Ok.
Заполнить появившееся окно «Параметры поиска решения» следующими данными:
оптимизировать целевую функцию: F17;
равной: минимальному значению;
изменяя ячейки переменных: B11:D14;
в соответствии с ограничениями: B11:D14>=0; B15:D15=B16:D16; E11:E14=F11:F14;
Выберите метод решения: поиск решения линейных задач.
239
Введя все данные и нажав кнопку «Найти решение», получим оптимальное решение.
Оптимальный план перегона автомобилей.
|
0 |
0 |
4 |
||
|
|
3 |
0 |
0 |
|
X опт |
|
|
|||
|
2 |
3 |
1 |
|
|
|
|
||||
|
|
|
|
|
|
|
|
0 |
0 |
1 |
|
|
|
|
Минимальное расстояние, которое должны пройти все автомобили равно
3810.
240