Лабораторая работа №1. РассмотримиспользованиянадстройкиПоиск решенияна
![]()
|
РассмотримиспользованиянадстройкиПоиск решениянапримере. Пример (см. Лаб1.xlsx). Решим с помощью надстройкиПоискрешениязадачу, математическая модель которой имеет вид: Целевая функция F(X) 3 X1 2 X2 max при ограничениях: X1 2 X2 6 1 2 X X 8 2 X1 0,8X2 5 1 X X 1 2 X1 0, X2 0 Составим шаблон задачи в редакторе Excel, по образцу: ![]() Теперь занесем данную числовую информацию в таблицу. ![]() В выделенные пустые ячейки (значения целевой функции и левых частей неравенств) необходимо занести формулы, отображающие связи и отношения между числами на рабочем листе. Ячейки B4–C4 называются в Excel изменяемыми, т.е. изменяя их Поиск решения будет находить оптимальное значение целевой функции. Значения, которые первоначально вводят в эти ячейки, обычно нули (незаполненные клетки трактуются по умолчанию как содержащие ненулевые значения). Далее необходимо ввести формулы. В нашей математической модели целевая функция представляет собой произведение вектора коэффициентов на вектор неизвестных. Действительно, выражение 3 X1 2 X2 можно рассматривать как произведение вектора (3;2) на вектор (X1, X2 ). Используем функцию СУММПРОИЗВ для нахождения скалярного произведения векторов. В ячейку Е4 необходимо вызвать данную функцию, а в качестве перемножаемых векторов задать адреса ячеек, содержащих коэффициенты уравнений (в данном случае это B5:C5) и ячеек, которые в результате решения будут помещены значения X1 и X2 (ячейки B4 : C4 ). ![]() Каждая левая часть ограничения тоже представляет собой произведение двух векторов: соответствующей строки матрицы затрат и вектора неизвестных, т.е. рассматривать как произведение вектора коэффициентов (1,2) и вектора пока переменных (X1, X2 ) . В ячейке, отведенной для формулы левой части первого ограничения (D4), вызовем функцию СУММПРОИЗВ. В качества адресов перемножаемых ![]() В четыре оставшиеся ячейки графы «Левая часть» вводим аналогичные формулы, используя соответствующую строку матрицы затрат. Фрагмент результата действий с введенными формулами представлен на рис. ![]() Обратите внимание, что перед вызовом сервиса «Поиск решения» на рабочем листе с задачей должны быть занесены формулы для левых частей ограничений и формула для значения целевой функции. В окне Поиск решения задаем следующую информацию: в качестве целевой ячейки устанавливаем адрес ячейки для значения целевой функции E4; «флажок» устанавливаем на вариант «максимальному значению», т.к. в данном случае целевая функция подлежит максимизации; в качестве изменяемых переменных заносится адрес строки значений переменных B4:C4; справа от окна, предназначенного для занесения ограничений, нажимаем кнопку Добавить, появится форма для занесения ограничения; ![]() ![]() аналогично заносятся все ограничения задачи, после чего нажимается кнопка «ОК». Таким образом, окно «Поиск решения» с занесенной информацией выглядит следующим образом (рис.) ![]() Далее необходимо нажать кнопку Параметры, установит «флажки» «Линейная модель» и «Неотрицательные значения», т.к. в данном случае задача является ЗЛП, а ограничения требуют неотрицательности переменных. Затем следует нажать кнопку «ОК», «Выполнить», после чего появится окно результатов решения. ![]() Если в результате всех действий получено окно с сообщением «Решение найдено», то можно получить три типа отчетов, которые полезны при анализе модели на чувствительность. В данном примере достаточно сохранить найденное решение, нажав «ОК». В результате получено решение задачи. ![]() Если в результате решения задачи выдано окно с сообщением о невозможности нахождения решения, это означает, что при оформлении задачи была допущена ошибка (например, не заполнены формулы для ограничений, неправильно установлен «флажок» максимизации/минимизации и т.д.) |