Вычисления в Excel

Как Вы уже знаете, формулы в Microsoft Excel позволяют определить значение функции по ее аргументам. Однако может возникнуть ситуация, когда значение функции известно, а аргумент требуется найти (т.е. решить уравнение). Для решения подобных проблем предназначена специальная функция Goal Seek (Подбор параметра) .

Поиск параметра.

Специальная функция Goal Seek (Подбор параметра) позволяет определить параметр (аргумент) функции если известно ее значение. При подборе параметра значение влияющей ячейки (параметра) изменяется до тех пор, пока формула, зависящая от этой ячейки, не возвратит заданное значение.


Рассмотрим процедуру поиска параметра на простом примере: решим уравнение 10 * x - 10 / x = 15 . Здесь параметр (аргумент) - x . Пусть это будет ячейка A3 . Введем в эту ячейку любое число, лежащее в области определения функции (в нашем примере это число не может быть равно нулю). Это значение будет использовано в качестве начального. Пусть это будет 3 . Введем формулу =10*A3-10/A3 , по которой должно быть получено требуемое значение, в какую-либо ячейку, например, B3 . Теперь можно запустить функцию поиска параметра, выбрав команду Goal Seek (Подбор параметра) в меню Tools (Сервис) . Введите параметры поиска:

  • В поле Set cell (Установить в ячейке) введите ссылку на ячейку, содержащую необходимую формулу.
  • Введите искомый результат в поле To value (Значение) .
  • В поле By changing cell (Изменяя значение ячейки) введите ссылку на ячейку, содержащую подбираемое значение.
  • Кликните на клавише OK .

По окончании работы функции на экране появится окно, в котором будут отображены результаты поиска. Найденный параметр появится в ячейке, которая была для него зарезервирована. Обратите внимание на тот факт, что в нашем примере уравнение имеет два решения, а параметр подобран только один - это происходит потому, что параметр изменяется только до тех пор, пока требуемое значение не будет возвращено. Первый найденный таким образом аргумент и возвращается к нам в качестве результата поиска. Если в качестве начального значения в нашем примере указать -3 , тогда будет найдено второе решение уравнения: -0,5 .


Достаточно сложно правильно определить наиболее подходящее начальное значение. Чаще мы можем сделать какие-либо предположения об искомом параметре, например, параметр должен быть целым (тогда мы получим первое решение нашего уравнения) или неположительным (второе решение).

Задачу поиска параметра при налагаемых граничных условиях поможет решить специальная надстройка Microsoft Excel Solver (Поиск решения) .

Поиcк решения.

Надстройка Microsoft Excel Solver (Поиск решения) не устанавливается автоматически при обычной установке:

  • В меню Tools (Сервис) выберите команду Add-Ins (Надстройки) . Если диалоговое окно Add-Ins (Надстройки) не содержит команды Solver (Поиск решения) , нажмите кнопку Browse (Обзор) и укажите диск и папку, в которой содержится файл надстройки Solver.xla (как правило, это папка Library\Solver ) или запустите программу установки Microsoft Office, если найти файл не удается.
  • В диалоговом окне Add-Ins (Надстройки) установите флажок Solver (Поиск решения) .

Процедура поиска решения позволяет найти оптимальное значение формулы, содержащейся в ячейке, которая называется целевой. Эта процедура работает с группой ячеек, связанных с формулой в целевой ячейке. Процедура изменяет значения во влияющих ячейках до тех пор, пока не получит оптимальный результат по формуле, содержащейся в целевой ячейке. Чтобы сузить множество значений, применяются ограничения, которые могут иметь ссылки на другие влияющие ячейки. Процедуру поиска решения можно также использовать для определения значения влияющей ячейки, которое соответствует экстремуму целевой ячейки, например, количество учебных занятий, обеспечивающее максимальную успеваемость.


В диалоговом окне Solver (Поиск решения) так же, как и в диалоговом окне Goal Seek (Подбор параметра) , необходимо указать целевую ячейку, ее значение и ячейки, которые следует изменять для достижения цели. Для решения задач оптимизации целевую ячейку следует указать равной максимальному или минимальному значению.

Если Вы щелкните на кнопке Guess (Предположить) , Excel сам попытается найти все ячейки, влиящие на формулу.

Вы можете добавить граничные условия, кликнув на клавише Add (Добавить) .

Кликнув на кнопке Options (Параметры) , можно изменить условия поиска решения: максимальное время поиска решения, количество итераций, точность решения, допуск на отклонение от оптимального решения, метод экстраполяции (линейная или квадратичная), алгоритм оптимизации и т.д.

Вернемся к предыдущему примеру: для того, чтобы получить второе (неположительное) решение, достаточно добавить граничное условие A3 . Так же как и при подборе параметра, на экране появится окно, в котором будет отображен отчет о результатах поиска требуемого решения. Само решение будет показано в предназначенных для него ячейках (в ячейке A3 отобразится значение -0.50 ).



Надстройка Microsoft Excel Solver (Поиск решения) позволяет, также, решать системы уравнений или неравенств. Рассмотрим простой пример: попробуем решить систему уравнений
x + y = 2
x - y = 0

Одной из самых интересных функций в программе Microsoft Excel является Поиск решения. Вместе с тем, следует отметить, что данный инструмент нельзя отнести к самым популярным среди пользователей в данном приложении. А зря. Ведь эта функция, используя исходные данные, путем перебора, находит наиболее оптимальное решение из всех имеющихся. Давайте выясним, как использовать функцию Поиск решения в программе Microsoft Excel.

Можно долго искать на ленте, где находится Поиск решения, но так и не найти данный инструмент. Просто, для активации данной функции, нужно её включить в настройках программы.

Для того, чтобы произвести активацию Поиска решений в программе Microsoft Excel 2010 года, и более поздних версий, переходим во вкладку «Файл». Для версии 2007 года, следует нажать на кнопку Microsoft Office в левом верхнем углу окна. В открывшемся окне, переходим в раздел «Параметры».


В окне параметров кликаем по пункту «Надстройки». После перехода, в нижней части окна, напротив параметра «Управление» выбираем значение «Надстройки Excel», и кликаем по кнопке «Перейти».


Открывается окно с надстройками. Ставим галочку напротив наименования нужной нам надстройки – «Поиск решения». Жмем на кнопку «OK».


После этого, кнопка для запуска функции Поиска решений появится на ленте Excel во вкладке «Данные».


Подготовка таблицы

Теперь, после того, как мы активировали функцию, давайте разберемся, как она работает. Легче всего это представить на конкретном примере. Итак, у нас есть таблица заработной платы работников предприятия. Нам следует рассчитать премию каждого работника, которая является произведением заработной платы, указанной в отдельном столбце, на определенный коэффициент. При этом, общая сумма денежных средств, выделяемых на премию, равна 30000 рублей. Ячейка, в которой находится данная сумма, имеет название целевой, так как наша цель подобрать данные именно под это число.


Коэффициент, который применяется для расчета суммы премии, нам предстоит вычислить с помощью функции Поиска решений. Ячейка, в которой он располагается, называется искомой.


Целевая и искомая ячейка должны быть связанны друг с другом с помощью формулы. В нашем конкретном случае, формула располагается в целевой ячейке, и имеет следующий вид: «=C10*$G$3», где $G$3 – абсолютный адрес искомой ячейки, а «C10» — общая сумма заработной платы, от которой производится расчет премии работникам предприятия.


Запуск инструмента Поиск решения

После того, как таблица подготовлена, находясь во вкладке «Данные», жмем на кнопку «Поиск решения», которая расположена на ленте в блоке инструментов «Анализ».


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


После этого, окно параметров свернется, а вы сможете выделить нужную ячейку таблицы. Затем, требуется опять нажать по той же кнопке слева от формы с введенными данными, чтобы развернуть окно параметров снова.


Под окном с адресом целевой ячейки, нужно установить параметры значений, которые будут находиться в ней. Это может быть максимум, минимум, или конкретное значение. В нашем случае, это будет последний вариант. Поэтому, ставим переключатель в позицию «Значения», и в поле слева от него прописываем число 30000. Как мы помним, именно это число по условиям составляет общую сумму премии для всех работников предприятия.


Ниже расположено поле «Изменяя ячейки переменных». Тут нужно указать адрес искомой ячейки, где, как мы помним, находится коэффициент, умножением на который основной заработной платы будет рассчитана величина премии. Адрес можно прописать теми же способами, как мы это делали для целевой ячейки.


В поле «В соответствии с ограничениями» можно выставить определенные ограничения для данных, например, сделать значения целыми или неотрицательными. Для этого, жмем на кнопку «Добавить».


После этого, открывается окно добавления ограничения. В поле «Ссылка на ячейки» прописываем адрес ячеек, относительно которых вводится ограничение. В нашем случае, это искомая ячейка с коэффициентом. Далее проставляем нужный знак: «меньше или равно», «больше или равно», «равно», «целое число», «бинарное», и т.д. В нашем случае, мы выберем знак «больше или равно», чтобы сделать коэффициент положительным числом. Соответственно, в поле «Ограничение» указываем число 0. Если мы хотим настроить ещё одно ограничение, то жмем на кнопку «Добавить». В обратном случае, жмем на кнопку «OK», чтобы сохранить введенные ограничения.


Как видим, после этого, ограничение появляется в соответствующем поле окна параметров поиска решения. Также, сделать переменные неотрицательными, можно установив галочку около соответствующего параметра чуть ниже. Желательно, чтобы установленный тут параметр не противоречил тем, которые вы прописали в ограничениях, иначе, может возникнуть конфликт.


Дополнительные настройки можно задать, кликнув по кнопке «Параметры».


Здесь можно установить точность ограничения и пределы решения. Когда нужные данные введены, жмите на кнопку «OK». Но, для нашего случая, изменять эти параметры не нужно.


После того, как все настройки установлены, жмем на кнопку «Найти решение».


Далее, программа Эксель в ячейках выполняет необходимые расчеты. Одновременно с выдачей результатов, открывается окно, в котором вы можете либо сохранить найденное решение, либо восстановить исходные значения, переставив переключатель в соответствующую позицию. Независимо от выбранного варианта, установив галочку «Вернутся в диалоговое окно параметров», вы можете опять перейти к настройкам поиска решения. После того, как выставлены галочки и переключатели, жмем на кнопку «OK».


Если по какой-либо причине результаты поиска решений вас не удовлетворяют, или при их подсчете программа выдаёт ошибку, то, в таком случае, возвращаемся, описанным выше способом, в диалоговое окно параметров. Пересматриваем все введенные данные, так как возможно где-то была допущена ошибка. В случае, если ошибка найдена не была, то переходим к параметру «Выберите метод решения». Тут предоставляется возможность выбора одного из трех способов расчета: «Поиск решения нелинейных задач методом ОПГ», «Поиск решения линейных задач симплекс-методом», и «Эволюционный поиск решения». По умолчанию, используется первый метод. Пробуем решить поставленную задачу, выбрав любой другой метод. В случае неудачи, повторяем попытку, с использованием последнего метода. Алгоритм действий всё тот же, который мы описывали выше.


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

Если в ячейку Excel введена формула, содержащая ссылку на эту же самую ячейку (может быть и не напрямую, а опосредованно - через цепочку других ссылок), то говорят, что имеет место циклическая ссылка (цикл). На практике к циклическим ссылкам прибегают, когда речь идет о реализации итерационного процесса, вычислениях по рекуррентным соотношениям. В обычном режиме Excel обнаруживает цикл и выдает сообщение о возникшей ситуации, требуя ее устранения. Excel не может провести вычисления, так как циклические ссылки порождают бесконечное количество вычислений. Есть два выхода из этой ситуации: устранить циклические ссылки или допустить вычисления по формулам с циклическими ссылками (в последнем случае число повторений цикла должно быть конечным).

Рассмотрим задачу нахождения корня уравнения методом Ньютона с использованием циклических ссылок. Возьмем для примера квадратное уравнение: х 2 - 5х + 6=0 , графическое представление которого приведено на . Найти корень этого (и любого другого) уравнения можно, используя всего одну ячейку Excel.

Для включения режима циклических вычислений в меню Сервис/Параметры/вкладка Вычисления включаем флажок Итерации , при необходимости изменяем число повторений цикла в поле Предельное число итераций и точность вычислений в поле Относительная погрешность (по умолчанию их значения равны 100 и 0,0001 соответственно). Кроме этих установок выбираем вариант ведения вычислений: автоматически или вручную . При автоматическом вычислении Excel выдает сразу конечный результат, при вычислениях, производимых вручную , можно наблюдать результат каждой итерации.

Рис. 8. График функции

Выберем произвольную ячейку, присвоим ей новое имя, скажем - Х , и введем в нее рекуррентную формулу, задающую вычисления по методу Ньютона:

,

где F и F1 задают соответственно выражения для вычисления значений функции и ее производной. Для нашего квадратного уравнения после ввода формулы в ячейке появится значение 2 , соответствующее одному из корней уравнения (). В нашем случае начальное приближение не задавалось, итерационный вычислительный процесс начинался со значения, по умолчанию хранимого в ячейке Х и равного нулю. А как получить второй корень? Обычно это можно сделать изменением начального приближения. Решать проблему задания начальных установок в каждом случае можно по-разному. Мы продемонстрируем один прием, основанный на использовании функции ЕСЛИ. С целью повышения наглядности вычислений ячейкам были присвоены содержательные имена ().

2.2. Подбор параметра

Когда желаемый результат вычислений по формуле известен, но неизвестны значения, необходимые для получения этого результата, можно воспользоваться средством Подбор параметра , выбрав команду Подбор параметра в меню Сервис . При подборе параметра Excel изменяет значение в одной конкретной ячейке до тех пор, пока вычисления по формуле, ссылающейся на эту ячейку, не дадут нужного результата.

Возьмем в качестве примера все то же квадратное уравнение х 2 -5х+6=0 . Для нахождения корней уравнения выполним следующие действия:

При подборе параметра Excel использует итерационный (циклический) процесс. Количество итераций и точность устанавливаются в меню Сервис/Параметры/вкладка Вычисления . Если Excel выполняет сложную задачу подбора параметра, можно нажать кнопку Пауза в окне диалога Результат подбора параметра и прервать вычисление, а затем нажать кнопку Шаг , чтобы выполнить очередную итерацию и просмотреть результат. При решении задачи в пошаговом режиме появляется кнопка Продолжить - для возврата в обычный режим подбора параметра.

Вернемся к примеру. Опять возникает вопрос: как получить второй корень? Как и в предыдущем случае необходимо задать начальное приближение. Это можно сделать следующим образом ():

а
б
Рис. 11. Поиск второго корня

Однако все это можно сделать и несколько проще. Для того чтобы найти второй корень, достаточно в качестве начального приближения () в ячейку C2 поместить константу 5 и после этого запустить процесс Подбор параметра .

2.3. Поиск решения

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

Задачи, которые можно решать с помощью Поиска решения , в общей постановке формулируются так:

Найти:
х 1 , х 2 , … , х n
такие, что:
F(х 1 , х 2 , … , х n) > {Max; Min; = Value}
при ограничениях:
G(х 1 , х 2 , … , х n) > {Ј Value; і Value; = Value}

Искомые переменные - ячейки рабочего листа Excel - называются регулируемыми ячейками. Целевая функция F(х 1 , х 2 , … , х n) , называемая иногда просто целью, должна задаваться в виде формулы в ячейке рабочего листа. Эта формула может содержать функции, определенные пользователем, и должна зависеть (ссылаться) от регулируемых ячеек. В момент постановки задачи определяется, что делать с целевой функцией. Возможен выбор одного из вариантов:

  • найти максимум целевой функции F(х 1 , х 2 , … , х n) ;
  • найти минимум целевой функции F(х 1 , х 2 , … , х n) ;
  • добиться того, чтобы целевая функция F(х 1 , х 2 , … , х n) имела фиксированное значение: F(х 1 , х 2 , … , х n) = a .

Функции G(х 1 , х 2 , … , х n) называются ограничениями. Их можно задать как в виде равенств, так и неравенств. На регулируемые ячейки можно наложить дополнительные ограничения: неотрицательности и/или целочисленности, тогда искомое решение ищется в области положительных и/или целых чисел.

Под эту постановку попадает самый широкий круг задач оптимизации, в том числе решение различных уравнений и систем уравнений, задачи линейного и нелинейного программирования. Такие задачи обычно проще сформулировать, чем решать. И тогда для решения конкретной оптимизационной задачи требуется специально для нее сконструированный метод. Решатель имеет в своем арсенале мощные средства решения подобных задач: метод обобщенного градиента, симплекс-метод, метод ветвей и границ.

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

После открытия диалога Поиск решения () необходимо выполнить следующие действия:
  1. в поле Установить целевую ячейку ввести адрес ячейки, содержащей формулу для вычисления значений оптимизируемой функции, в нашем примере целевая ячейка - это С4, а формула в ней имеет вид: = C3^2 - 5*C3 + 6 ;
  2. для максимизации значения целевой ячейки, установить переключатель максимальному значению в положение 8 , для минимизации используется переключатель минимальному значению , в нашем случае устанавливаем переключатель в положение значению и вводим значение 0 ;
  3. в поле Изменяя ячейки ввести адреса изменяемых ячеек, т.е. аргументов целевой функции (С3), разделяя их знаком ";" (или щелкая мышью при нажатой клавише Сtrl на соответствующих ячейках), для автоматического поиска всех влияющих на решение ячеек используется кнопка Предположить ;
  4. в поле Ограничения с помощью кнопки Добавить ввести все ограничения, которым должен отвечать результат поиска: для нашего примера ограничений задавать не нужно;
  5. для запуска процесса поиска решения нажать кнопку Выполнить .

Для сохранения полученного решения необходимо использовать переключатель Сохранить найденное решение в открывшемся окне диалога Результаты поиска решения . После чего рабочий лист примет вид, представленный на . Полученное решение зависит от выбора начального приближения, которое задается в ячейке С4 (аргумент функции). Если в качестве начального приближения в ячейку С4 ввести значение, равное 1,0 , то с помощью Поиска решения найдем второй корень, равный 2,0 .

Опции, управляющие работой Поиска решения , задаваемые в окне Параметры (окно появляется, если нажать на кнопку Параметры окна Поиск решения ), следующие ():

  • Максимальное время - ограничивает время, отведенное на процесс поиска решения (по умолчанию задано 100 секунд, что достаточно для задач, имеющих около 10 ограничений, если задача большой размерности, то время необходимо увеличить).
  • Предельное число итераций - еще один способ ограничения времени поиска путем задания максимального числа итераций. По умолчанию задано 100, и, чаще всего, если решение не получено за 100 итераций, то при увеличении их количества (в поле можно ввести время, не превышающее 32767 секунд) вероятность получить результат мала. Лучше попытаться изменить начальное приближение и запустить процесс поиска заново.
  • Относительная погрешность - задает точность, с которой определяется соответствие ячейки целевому значению или приближение к указанным ограничениям (десятичная дробь от 0 до 1).
  • Допустимое отклонение - задается в % только для задач с целочисленными ограничениями. Поиск решения в таких задачах сначала находит оптимальное нецелочисленное решение, а потом пытается найти ближайшую целочисленную точку, решение в которой отличалось бы от оптимального не более, чем на указанное данным параметром количество процентов.
  • Сходимость - когда относительное изменение значения в целевой ячейке за последние пять итераций становится меньше числа (дробь из интервала от 0 до 1), указанного в данном параметре, поиск прекращается.
  • Линейная модель - этот флажок следует включать, когда целевая функция и ограничения - линейные функции. Это ускоряет процесс поиска решения.
  • Неотрицательные значения - этим флажком можно задать ограничения на переменные, что позволит искать решения в положительной области значений, не задавая специальных ограничений на их нижнюю границу.
  • Автоматическое масштабирование - этот флажок следует включать, когда масштаб значений входных переменных и целевой функции и ограничений отличается, возможно, на порядки. Например, переменные задаются в штуках, а целевая функция, определяющая максимальную прибыль, измеряется в миллиардах рублей.
  • Показывать результаты итераций - этот флажок позволяет включить пошаговый процесс поиска, показывая на экране результаты каждой итерации.
  • Оценки - эта группа служит для указания метода экстраполяции - линейная или квадратичная, - используемого для получения исходных оценок значений переменных в каждом одномерном поиске. Линейная служит для использования линейной экстраполяции вдоль касательного вектора. Квадратичная служит для использования квадратичной экстраполяции, которая дает лучшие результаты при решении нелинейных задач.
  • Разности (производные) - эта группа служит для указания метода численного дифференцирования, который используется для вычисления частных производных целевых и ограничивающих функций. Параметр Прямые используется в большинстве задач, где скорость изменения ограничений относительно невысока. Параметр Центральные используется для функций, имеющих разрывную производную. Данный способ требует больше вычислений, однако его применение может быть оправданным, если выдается сообщение о том, что получить более точное решение не удается.
  • Метод поиска - служит для выбора алгоритма оптимизации. Метод Ньютона был рассмотрен ранее. В Методе сопряженных градиентов запрашивается меньше памяти, но выполняется больше итераций, чем в методе Ньютона. Данный метод следует использовать, если задача достаточно велика и необходимо экономить память, а также если итерации дают слишком малое отличие в последовательных приближениях.
  1. при сохранении книги Excel после поиска решения все значения, введенные в окнах диалога Поиск решения , сохраняются вместе с данными рабочего листа. С каждым рабочим листом в рабочей книге можно сохранить один набор значений параметров Поиска решения ;
  2. если в пределах одного рабочего листа Excel необходимо рассмотреть несколько моделей оптимизации (например найти максимум и минимум одной функции, или максимальные значения нескольких функций), то удобнее сохранить эти модели, используя кнопку Параметры/Сохранить модель окна Поиск решения . Диапазон для сохраняемой модели содержит информацию о целевой ячейке, об изменяемых ячейках, о каждом из ограничений и все значения диалога Параметры . Выбор модели для решения конкретной оптимизационной задачи осуществляется с помощью кнопки Параметры/Загрузить модель диалога Поиск решения ;
  3. еще один способ сохранения параметров поиска - сохранение их в виде именованных сценариев. Для этого необходимо нажать на кнопку Сохранить сценарий диалогового окна Результаты поиска решений .

Кроме вставки оптимальных значений в изменяемые ячейки Поиск решения позволяет представлять результаты в виде трех отчетов: Результаты , Устойчивость и Пределы . Для генерации одного или нескольких отчетов необходимо выделить их названия в окне диалога Результаты поиска решения . Рассмотрим более подробно каждый из них.



Рис. 15. Отчет по устойчивости
) содержит информацию о том, насколько целевая ячейка чувствительна к изменениям ограничений и переменных. Этот отчет имеет два раздела: один для изменяемых ячеек, а второй для ограничений. Правый столбец в каждом разделе содержит информацию о чувствительности. Каждая изменяемая ячейка и ограничения приводятся в отдельной строке. Раздел для изменяемых ячеек содержит значение нормированного градиента, которое показывает, как целая ячейка реагирует на увеличение значения в соответствующей изменяемой ячейке на одну единицу. Подобным образом, множитель Лагранжа в разделе для ограничений показывает, как целевая ячейка реагирует на увеличение соответствующего значения ограничения на одну единицу. При использовании целочисленных ограничений Excel выводит сообщение Отчеты устойчивость и Пределы не применимы для задач с целочисленными ограничениями . Если в окне диалога Параметры поиска решения установлен флажок Линейная модель , то отчет по устойчивости содержит несколько дополнительных столбцов информации.) содержит три таблицы: в первой приведены сведения о целевой функции до начала вычисления, во второй - значения искомых переменных, полученные в результате решения задачи, в третьей - результаты оптимального решения для ограничений. Этот отчет также содержит информацию о таких параметрах каждого ограничения, как статус и разница. Статус может принимать три состояния: связанное, несвязанное или невыполненное. Значение разницы - это разность между значением, выводимым в ячейке ограничения при получении решения, и числом, заданным в правой части формулы ограничения. Связанное ограничение - это ограничение, для которого значение разницы равно нулю. Несвязанное ограничение - это ограничение, которое было выполнено с ненулевым значением разницы.

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

Решение нелинейных уравнений и систем»

Цель работы : Изучение возможностей пакета Ms Excel 2007 при решении нелинейных уравнений и систем. Приобретение навыков решения нелинейных уравнений и систем средствами пакета.

Задание1. Найти корни полинома x 3 - 0,01x 2 - 0,7044x + 0,139104 = 0.

Для начала решим уравнение графически. Известно, что графическим решением уравнения f(x)=0 является точка пересечения графика функции f(x) с осью абсцисс, т.е. такое значение x, при котором функция обращается в ноль.

Проведем табулирование нашего полинома на интервале от -1 до 1 с шагом 0,2. Результаты вычислений приведены на ри., где в ячейку В2 была введена формула: = A2^3 - 0,01*A2^2 - 0,7044*A2 + 0,139104. На графике видно, что функция три раза пересекает ось Оx, а так как полином третьей степени имеется не более трех вещественных корней, то графическое решение поставленной задачи найдено. Иначе говоря, была проведена локализация корней, т.е. определены интервалы, на которых находятся корни данного полинома: [-1,-0.8], и .

Теперь можно найти корни полинома методом последовательных приближений с помощью команды Данные→Работа с данными→Анализ «Что-Если» →Подбор параметра .

После ввода начальных приближений и значений функции можно обратиться к команде Данные→Работа с данными→Анализ «Что-Если» →Подбор параметра и заполнить диалоговое окно следующим образом.

В поле Установить в ячейке дается ссылка на ячейку, в которую введена формула, вычисляющая значение левой части уравнения (уравнение должно быть записано так, чтобы его правая часть не содержала переменную). В поле Значение вводим правую часть уравнения, а в поле Изменяя значения ячейки дается ссылка на ячейку, отведенную под переменную. Заметим, что вводить ссылки на ячейки в поля диалогового окна Подбор параметров удобнее не с клавиатуры, а щелчком на соответствующей ячейке.

После нажатия кнопки ОК появится диалоговое окно Результат подбора параметра с сообщением об успешном завершении поиска решения, приближенное значение корня будет помещено в ячейку А14.


Два оставшихся корня находим аналогично. Результаты вычислений будут помещены в ячейки А15 и А16.

Задание 2. Решить уравнение e x - (2x - 1) 2 = 0.

Проведем локализацию корней нелинейного уравнения.

Для этого представим его в виде f(x) = g(x) , т.е. e x = (2x - 1) 2 или f(x) = e x , g(x) = (2x - 1) 2 , и решим графически.

Графическим решением уравнения f(x) = g(x) будет точка пересечения линий f(x) и g(x).

Построим графики f(x) и g(x). Для этого в диапазон А3:А18 введем значения аргумента. В ячейку В3 введем формулу для вычисления значений функции f(x): = EXP(A3), а в С3 для вычисления g(x): = (2*A3-1)^2.

Результаты вычислений и построение графиков f(x) и g(x):


На графике видно, что линии f(x) и g(x) пересекаются дважды, т.е. данное уравнение имеет два решения. Одно из них тривиальное и может быть вычислено точно:

Для второго можно определить интервал изоляции корня: 1,5 < x < 2.

Теперь можно найти корень уравнения на отрезке методом последовательных приближений.

Введём начальное приближение в ячейку Н17 = 1,5, и само уравнение, со ссылкой на начальное приближение, в ячейку I17 = EXP(H17) - (2*H17-1)^2.

и заполним диалоговое окно Подбор параметра .

Результат поиска решения будет выведен в ячейку Н17.

Задание 3 . Решить систему уравнений:

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

Для первого уравнения системы имеем:

Выясним ОДЗ полученной функции:

Второе уравнение данной системы описывает окружность.

Фрагмент рабочего листа MS Excel с формулами, которые необходимо ввести в ячейки для построения линий, описанных уравнениями системы. Точки пересечения линий изображенных являются графическим решением системы нелинейных уравнений.


Не трудно заметить, что заданная система имеет два решения. Поэтому процедуру поиска решений системы необходимо выполнить дважды, предварительно определив интервал изоляции корней по осям Оx и Oy . В нашем случае первый корень лежит в интервалах (-0.5;0) x и (0.5;1) y , а второй - (0;0.5) x и (-0.5;-1) y . Далее поступим следующим образом. Введем начальные значения переменных x и y, формулы отображающие уравнения системы и функцию цели.

Теперь дважды воспользуемся командой Данные→Анализ→Поиск решений, заполняя появляющиеся диалоговые окна.



Сравнив полученное решение системы с графическим, убеждаемся, что система решена верно.

Задания для самостоятельного решения

Задание 1 . Найти корни полинома

Задание 2 . Найдите решение нелинейного уравнения.



Задание 3 . Найдите решение системы нелинейных уравнений.