Решение
Удалите все листы, кроме первого.
Сохраните файл под именем Транспортная задача.
Составьте модель задачи.
Заполните 1-ю строку и столбец A (рис. 11.11).
Запросы заводов на поставку молока занесите в диапазон ячеек C2:F2.
Возможный объем поставки молока объединениями фермеров занесите в диапазон ячеек B12:B16.
Общий объем молока, поставляемый каждым объединением фермеров, разместите в диапазоне ячеек B5:B9. Выделите ячейку B5 и введите формулу =СУММ(C5:F5). Скопируйте формулу в диапазон ячеек B6:B9.
В диапазон ячеек С12:F16 занесите стоимость перевозки тонны молока, используя данные из таблицы. Для ячеек указанного диапазона установите формат Денежный с двумя знаками после запятой.
Решение задачи (объем молока для перевозки) будет расположено в диапазоне ячеек C5:F9.
Рис. 11.11
Полная стоимость перевозки молока по маршруту Наро-Фоминск – Лужники вычисляется по формуле =C5*C12.
Общая стоимость перевозок на завод в Лужники составит =C5*C12+C6*C13+C7*C14+C8*C15+C9*C16. Введите эту формулу в ячейку С17.
Для подсчета общей стоимости перевозок на другие перерабатывающие заводы скопируйте формулу из ячейки С17 в диапазон ячеек D17:F17.
Для подсчета итоговой стоимости всех перевозок введите в ячейку B17 формулу =СУММ(C17:F17).
Выделите диапазон ячеек B17:F17 и установите для этих ячеек формат Денежный с двумя знаками после запятой.
Выполните команду Сервис/ Поиск решения…
В диалоговом окне Поиск решения установите значения (рис. 11.12).
Поле Установить целевую ячейку: служит для указания целевой ячейки, значение которой необходимо максимизировать, минимизировать или установить равным заданному числу. Эта ячейка должна содержать формулу. По условию задачи необходимо минимизировать расходы на перевозку, поэтому в поле Установить целевую ячейку: введите ячейку $B$17.
Поле Равной: служит для выбора варианта оптимизации значения целевой ячейки. Установите переключатель в режим минимальному значению.
Поле Изменяя ячейки: служит для указания ячеек, значения которых изменяются в процессе поиска решения до тех пор, пока не будут выполнены наложенные ограничения и условие оптимизации значения ячейки, указанной в поле Установить целевую ячейку. Установите диапазон ячеек $C$5:$F$9, так как необходимо определить, от какого производителя, на какой склад и сколько продукции следует перевезти.
Рис. 11.12
Кнопка Предположить используется для автоматического поиска ячеек, влияющих на формулу, ссылка на которую дана в поле Установить целевую ячейку. Результат поиска отображается в поле Изменяя ячейки.
Список Ограничения: служит для отображения списка граничных условий поставленной задачи. Добавьте ограничения.
Ограничение
Причина
B5:B9<=B12:B16
объем поставок не может превышать имеющиеся запасы
C4:F4>=C2:F2
запросы потребителей должны быть выполнены полностью
C5:F9=целое
количество перевозок не может быть дробным числом
Кнопка Параметры служит для отображения диалогового окна Параметры поиска решения (рис. 11.13), в котором можно загрузить или сохранить оптимизируемую модель и указать предусмотренные варианты поиска решения. Значения и состояния элементов управления окна, используемые по умолчанию, подходят для решения большинства задач.
Поле Максимальное время: служит для ограничения времени, отпускаемого на поиск решения задачи. В поле можно ввести время (в секундах), не превышающее число 32767.
Поле Предельное число итераций: служит для управления временем решения задачи путем ограничения числа промежуточных вычислений. В поле можно ввести время (в секундах), не превышающее число 32767.
Поле Относительная погрешность служит для задания точности, с которой определяется соответствие ячейки целевому значению или приближение к указанным границам. Поле должно содержать десятичную дробь от 0 (нуля) до 1. Чем больше десятичных знаков в задаваемом числе, тем выше точность. Например, число 0,0001 представлено с более высокой точностью, чем 0,01.
Рис. 11.13
Поле Допустимое отклонение служит для задания допуска на отклонение от оптимального решения, если множество значений влияющей ячейки ограничено множеством целых чисел. При указании большего допуска поиск решения заканчивается быстрее.
Когда относительное изменение значения в целевой ячейке за последние пять итераций становится меньше числа, указанного в поле Сходимость, поиск прекращается. Сходимость применяется только к нелинейным задачам, условием служит дробь из интервала от 0 (нуля) до 1. Лучшую сходимость характеризует большее количество десятичных знаков. Например, 0,0001 соответствует меньшему относительному изменению по сравнению с 0,01. Лучшая сходимость требует больше времени на поиск оптимального решения.
Элемент управления Линейная модель служит для ускорения поиска решения линейной задачи оптимизации.
Элемент управления Показывать результаты итераций служит для приостановки поиска решения для просмотра результатов отдельных итераций. Установите флажок Показывать результаты итераций.
Элемент управления Автоматическое масштабирование служит для включения автоматической нормализации входных и выходных значений, качественно различающихся по величине. Например, максимизация прибыли в процентах по отношению к вложениям, исчисляемым в миллионах рублей.
Элемент управления Неотрицательные значения позволяет установить нулевую нижнюю границу для тех влияющих ячеек, для которых она не была указана в поле Ограничение диалогового окна Добавить ограничение. Установите флажок Неотрицательные значения.
Кнопка Закрыть служит для выхода из окна диалога без запуска поиска решения поставленной задачи. При этом сохраняются установки, сделанные в окнах диалога, появлявшихся после нажатий на кнопки Параметры, Добавить, Изменить или Удалить.
Кнопка Восстановить служит для очистки полей окна диалога и восстановления значений параметров поиска решения, используемых по умолчанию.
Кнопка Выполнить служит для запуска поиска решения поставленной задачи. Щелкните по кнопке Выполнить.
Появится диалоговое окно Текущее состояние поиска решения (рис. 11.14). Щелкните по кнопке Продолжить.
Рис. 11.14
После каждой итерации на экране будет отображаться окно Текущее состояние поиска решения.
После окончания поиска решения на экране появится окно Результаты поиска решения (рис. 11.15), сообщающее о том, что решение найдено.
Рис. 11.15
Установите переключатель в значение Сохранить найденное решение.
Раздел Тип отчета служит для указания типов отчета, которые могут быть добавлены в книгу.
Результаты. Используется для создания отчета, состоящего из целевой ячейки и списка влияющих ячеек модели, их исходных и конечных значений, а также формул ограничений и дополнительных сведений о наложенных ограничениях.
Устойчивость. Используется для создания отчета, содержащего сведения о чувствительности решения к малым изменениям в формуле (поле Установить целевую ячейку, диалоговое окно Поиск решения) или в формулах ограничений. Такой отчет не создается для моделей, значения в которых ограничены множеством целых чисел. В случае нелинейных моделей отчет содержит данные для градиентов и множителей Лагранжа. В отчет по нелинейным моделям включаются ограниченные затраты, фиктивные цены, объективный коэффициент (с некоторым допуском), а также диапазоны ограничений справа.
Ограничения. Используется для создания отчета, состоящего из целевой ячейки и списка влияющих ячеек модели, их значений, а также нижних и верхних границ. Такой отчет не создается для моделей, значения в которых ограничены множеством целых чисел. Нижним пределом является наименьшее значение, которое может содержать влияющая ячейка, в то время как значения остальных влияющих ячеек фиксированы и удовлетворяют наложенным ограничениям. Соответственно, верхним пределом называется наибольшее значение.
Щелкните по кнопке OK.
Ответ
Минимальная сумма затрат на перевозки при соблюдении всех условий составит 2.795.450 рублей. Предлагается выполнять перевозки по следующим маршрутам:
Потребители:
Предприятия: |
Лужники |
Сокол |
Измайлово |
Юго-Запад |
Наро-Фоминск |
0 |
0 |
0 |
300 |
Солнечногорск |
20 |
115 |
0 |
0 |
Домодедово |
100 |
0 |
0 |
70 |
Балашиха |
120 |
0 |
0 |
0 |
Ногинск |
0 |
0 |
280 |
0 |