Смекни!
smekni.com

Постановка и решение транспортной параметрической задачи (стр. 3 из 4)

k1 = max(-aij/Bij) =

т.к. все Bij ≥ 0

k2 = min(-aij/Bij) = (-a41/B41; -a42/B42) = min(4;4) = 4. Все Bij > 0.

Так как по условию задачи k≥0, то оптимальное решение сохраняется при 0≥k≥4.

При этом минимальная стоимость транспортных расходов составляет:

F(X1)min = 20*(1+k) + 40*3 + 30*4 + 90*2 + 10*4 + 70*5 = 830 + 20k

Таким образом, при

, F(X1)min = 830 + 20k и

.

Чтобы получить оптимальное решение при k≥4 перераспределим поставки товаров в клетку (4,1), где k2=4. Вновь полученное распределение с учетом изменения стоимости перевозки в ячейке A4B3 (k=4) представлено на рисунке 4.3.2.

Рис. 4.3.2. Составление второго опорного решения задачи по методу Фогеля

Процесс выполнения получения опорного решения с последовательным назначением перевозок в ячейки: А4В1 - А3В3 - А3В1 - А1В1 - А1В2 - A2B2.

Проверка плана на вырожденность: m+n-1=6. План невырожденный.

Проверим опорное решение на оптимальность по методу потенциалов. Расчет потенциалов строк и столбцов для занятых из условия vi + uj = cijдля занятых клеток и проверка условия vi + uj ≤ cij для незанятых приведены в таблице 4.3.2.

Табл. 4.3.2 Проверка второго опорного решения на оптимальность методом потенциалов

заполненные незаполненные
vi + uj = cij значения vi + uj ≤ cij условие
А1В1 v1+u1=2 v1=0, u1=2 А1В3 v3+u1<=2 соблюдается
А1В2 v2+u1=4 v2=2 А2В1 v1+u2<=5 соблюдается
A2B2 v2+u2=5 u2=3 А2В3 v3+u2<=6 соблюдается
A3B1 v1+u3=4 u3=4 А3В2 v2+u3<=7 соблюдается
A3B3 v3+u3=3 v3= -1 A4B2 v2+u4<=8 соблюдается
A4B1 v1+u4=6 u4=6 A4B3 v3+u4<=1+k соблюдается

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

.

Из условия для свободных клеток найдем:

13 = a3 + b1 - C'13 = -1 + 2 - 2 = -1

21 = a1 + b2 - C'21 = 0 + 3 - 5 = -2

23 = a3 + b2 - C'23 = -1 + 3 - 6 = -4

32 = a2 + b3 - C'32 = 2 + 4 - 7 = -1

42 = a2 + b4 - C'42 = 2 + 6 - 8 = 0

43 = a3 + b4 - (C'43 + С''43) = -1 + 6 - (1+k) = 4-k

Определение значений k1 и k2

k1 = max(-aij/Bij) = -a43/B43 = 4. Все Bij < 0

k2 = min(-aij/Bij) =

т.к. все Bij ≤ 0

Так как по условию задачи k ≤ 9, то оптимальное решение сохраняется при 4≥k≥9.

При этом минимальная стоимость транспортных расходов составит:

F(X2)min = 20*6 + 60*3 + 10*4 + 90*2 + 10*4 + 70*5 = 910

Таким образом, при

F(X2)min = 910 и

.

4.4 Решение задачи средствами MsExcel

Создадим в окне программы MsExcel две матрицы «План перевозок» и «Стоимость перевозок», согласно вышеизложенным правилам (рис 4.4.1). Также нужно указать ячейку содержащую изменяемый параметр k. При этом в клетке A4B3 матрицы «Стоимость перевозок» устанавливаем формулу, отображающую зависимость данного тарифа от параметра k: L7=1+L9.

Рис. 4.4.1. Фрагмент окна программы MsExcel: Матрицы «План перевозок» и «Стоимость перевозок» с изменяемым тарифом C43.

В ячейки, которые должны отображать запасы поставщиков и потребности потребителей в матрице «План перевозок» вводим формулы суммирующие значения всех возможных поставок данных поставщиков и потребителей, например: B4=СУММ(C4:E4), C3=СУММ(С4:С7).

В ячейку целевой функции (N7) введем =СУММПРОИЗВ(C4:E7;J4:L7).

Метод решения параметрической транспортной задачи средствами Ms Excel заключается в нахождении оптимального решения при каждом значении параметра k, с сохранением сценария для каждой процедуры «Поиск решения». После этого необходимо из всего диапазона изменения параметра k выделить отдельные промежутки, на которых сохраняется оптимальное решение задачи и минимальная стоимость затрат.

В диалоговом окне «Поиск решения», согласно вышеуказанным правилам установим все необходимые ограничения и ссылки на необходимые ячейки (рис. 4.4.2). Также необходимо в ограничениях указать пределы изменения параметра k, т.е. 0≤k≤9.


Рис. 4.4.2. Диалоговое окно «Поиск решения»

В диалоговом окне «Параметры поиска решения» установить необходимые параметры (рис. 4.4.3).

Рис. 4.4.3. Диалоговое окно «Параметры поиска решения»

После нажатия на кнопку «Выполнить» в диалоговом окне «Результаты поиска решения» (рис. 4.4.5) нажать «Сохранить сценарий…» и в появившемся диалоговом окне «Сохранение сценария» задать имя данному сценарию и нажать «ОК» (рис. 4.4.4.).

Рис. 4.4.4. Диалоговое окно «Сохранение сценария»

После сохранения сценария в диалоговом окне «Результаты поиска решения» выделить необходимые типы отчетов и нажать «OK» (рис. 4.4.5.).

Рис. 4.4.5. Диалоговое окно «Результаты поиска решений

После выполнения всех операций в матрице «План перевозок» получим оптимальный план перевозок при k=0 (рис. 4.4.6.).

Рис. 4.4.6. Фрагмент окна программы MsExcel: Результат поиска решения при k=0.

Полученное значение целевой функции F(x1)min=830.

Теперь аналогичным способом найдем оптимальный план перевозок при k=1. Проведя повторный расчет, получим новый план перевозок и значение целевой функции (рис 4.4.7.).


Рис. 4.4.7. Фрагмент окна программы MsExcel: Результат поиска решения при k=1

Полученное значение целевой функции F(x2)min = 850.

Как видно из рисунков 4.4.5. и 4.4.6 планы перевозок в обоих случаях (k=0, k=1) одинаковы. После дальнейших расчетов при всех остальных значениях параметра kобнаружим, что при

план перевозок остается неизменным, изменяется лишь значение целевой функции. При значении параметра
«Поиск решения» выдает другой план перевозок, и значение целевой функции на данном промежутке остается неизменным F(x)min = 910. Полученный план перевозок при значении k=4 изображен на рисунке 4.4.8.

Рис. 4.4.8. Фрагмент окна программы MsExcel: Результат поиска решения при k=4

Значения целевой функции, соответствующие параметру k в каждой итерации представлены в таблице 4.4.1.

Из представленных в таблице 4.4.1 данных можно вывести определенную закономерность изменения значения целевой функции на промежутке

:

F(x1)min = 830, (k=0);

F(x2)min = F(x1)min +20 = 830+20, (k=1);

F(x3)min = F(x2)min +20 = 830 + 20*2 = 870, (k=2).

Следуя по той же цепочке, найдем:

F(x4)min = 830 + 20*3, (k=3).

F(x5)min = 830 + 20*4, (k=4).

Исходя из подобной логики можно представить F(x1)min = 830 + 20*0.

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

:

.

Для значений

значение функции постоянно F(x)=910.

Таблица 4.4.1. Значения целевой функции в каждой итерации

номер итерации i значение параметра ki значение функции F(xi)min
1 0 830
2 1 850
3 2 870
4 3 890
5 4 910
6 5 910
7 6 910
8 7 910
9 8 910
10 9 910

Команда «Сервис → Сценарии» открывает диалоговое окно «Диспетчер сценариев», которое отображает сохраненные сценарии каждой итерации нахождения оптимального плана перевозок (рис 4.4.9.).