Решение задач оптимального управления в Excel

Excel позволяет решать задачи оптимального управления, общий вид которых представлен формулами 1-5.

Решение задач оптимального управления в Excel - student2.ru

где xj может принимать либо действительные, либо целочисленные, либо булевы значения.

Формула 1 определяет целевую функцию, формула 2 определяет ограничения, а формула 3 определяет граничные условия. В зависимости от вида функции f в формуле 1 задача может относиться либо к классу задач линейного или нелинейного программирования. В зависимости от того, являются ли xj целыми и булевыми или действительными величинами задача может относиться к задачам целочисленного программирования или нет.

Для решения таких задач в Excel предусмотрена надстройка «Поиск решения», которую можно вызвать из меню «Сервис». Если пункта меню «Поиск решения» нет, то нужно вернуться к установке Excel и установить эту надстройку.

Поиск решения (рацион)

Excel имеет несколько программ-надстроек, выполняющих решение различных задач. Одной из надстроек является "Поиск решения", позволяющая решать оптимизационные задачи в Excel. Чаще всего это задачи линейного программирования (ЛП).

Общая формулировка задачи ЛП: найти неотрицательное решение X системы линейных уравнений AX=B, при котором целевая функция f=CX принимает максимальное (минимальное) значение, где A — матрица коэффициентов; B — объемы ресурсов.

Экономический смысл системы AX=B заключается в задании ограничений на расходуемые ресурсы.

Экономический смысл целевой функции f=CX заключается в максимальной прибыли или минимальной себестоимости, получаемой от оптимального решения X. Например, если X — вектор объемов выпуска продукции, а С - вектор прибыли, получаемой от единицы каждого вида продукции, то f — суммарная прибыль от выпуска всей продукции.

Рассмотрим работу надстройки "Поиск решения" на примере задачи о рационе кормления животных. Требуется составить такой рацион кормления животных тремя видами корма, при котором они получат необходимое количество питательных веществ A и B и себестоимость кормов будет минимальна. Цены кормов, требуемое количество питательных веществ и их содержание в каждом корме показаны в таблице.



Питательные вещества Корм 1 Корм 2 Корм 3 Требуемое количество (ед. пит. вещества)
А (ед./кг)
Б (ед./кг)
Цена корма (руб/кг) 2,20 1,95 2,87  

Если обозначить X=(x1, x2, x3) — искомое количество кормов, то задача ЛП формулируется так:

Найти решение X системы

Решение задач оптимального управления в Excel - student2.ru

при котором целевая функция

Решение задач оптимального управления в Excel - student2.ru

принимает минимальное значение.

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

Решение задач оптимального управления в Excel - student2.ru

Ячейки таблицы имеют следующий смысл:

  • диапазон A1:C2 — содержит матрицу A;
  • диапазон D1:D2 — содержит вектор ресурсов В;
  • диапазон A6:C6 — содержит вектор цен С;
  • диапазон A4:C4 — содержит вектор решений X, начальные значения которого заданы нулю и который будет оптимизирован программой;
  • диапазон E1:E2 — содержит выражения, вычисляющие произведение AX;
  • ячейка E6 — содержит выражение, вычисляющее f=CX.

Вызов программы поиска решения выполняется через меню "Сервис\Поиск решения...". В открывшемся окне "Поиск решения" необходимо установить следующие параметры:

  • "Установить целевую ячейку" — E6;
  • установить переключатель "Равной минимальному значению";
  • в поле "изменяя ячейки" указать диапазон A4:C4;
  • в области "Ограничения" нажать кнопку "Добавить" и в окне "Добавление ограничений" ввести ограничения: E1>=D1 и E2>=D2;

Решение задач оптимального управления в Excel - student2.ru

  • нажать кнопку "Параметры..." и в открывшемся окне установить флажки "Линейная модель", "Неотрицательные значения" и выбрать переключатель "Оценка" — "Линейная".

Решение задач оптимального управления в Excel - student2.ru

Для запуска программы необходимо в окне "Поиск решения" нажать кнопку "Выполнить". Результаты вычислений будут записаны в изменяемые ячейки таблицы. В итоге таблица должна иметь следующий вид.

Решение задач оптимального управления в Excel - student2.ru

Таким образом, животных следует кормить первым кормом в количестве 0,38 кг, третьим — 3,85 кг и не использовать второй корм вообще. При таком рационе затраты на кормление одного животного составят 11,88 руб.


Наши рекомендации