Задача поиска значения параметра, позволяющего достичь конкретной цели. Оптимизация расчетов в среде Mathcad

Страницы работы

Фрагмент текста работы

7.1. Решение уравнений

Часто при решении практических задач возникают ситуации, когда необходимо достичь какой-то конкретной цели. Например, необходимо чтобы себестоимость продукции составляла 20 грн.

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

Решение таких задач можно искать методом перебора. Однако в лучшем случае на это уходит много времени.

Можно предложить другие способы решения. В Excel они реализованы как поиск значения параметра формулы, удовлетворяющего ее конкретному значению.

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

Познакомимся с этой процедурой на примере составления штатного расписания.

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

Построим модель решения этой задачи. За основу возьмем оклад санитарки, а остальные оклады будем вычислять, исходя из него: во столько-то раз или на столько-то больше. Говоря математическим языком, каждый оклад является линейной функцией от оклада санитарки: Ai*С+Вi, где С - оклад санитарки; Аi и Вi - коэффициенты, которые для каждой должности определяют следующим образом:

  • медсестра получает в 1,5 раза больше санитарки (А2=1,5; В2=0);
  • врач - в 3 раза больше санитарки (В3=0; А3=3);
  • заведующий отделением - на 30 грн. больше, чем врач (А4=3; B4=30);
  • заведующий аптекой - в 2 раза больше санитарки (А5=2; В5=0);
  • заведующий хозяйством - на 40 грн. больше медсестры (А6=1,5; В6=40);
  • главный врач - в 4 раза больше санитарки (А7=4; В7=0);
  • заведующий больницей - на 20 грн. больше главного врача (А8=4; В8=20);

Зная количество человек на каждой должности, нашу модель можно записать как уравнение

N1*A1*C+N2*(A2*C+B2)+...+N8*(A8*C+B8) = 10000, где N1 - число санитарок, N2 - число медсестер и т.д.

В этом уравнении нам известны A1...A8, B1...B8 и N1... N8, а С неизвестно.

Анализ уравнения показывает, что задача составления расписания свелась к решению линейного уравнения относительно С. Решим его.

Введите исходные данные в рабочий лист электронной таблицы, как показано ниже.

В столбце D вычислите заработную плату для каждой должности. Например, для ячейки D4 формула расчета имеет вид =B4*$H$8+C4.

В столбце F вычислите заработную плату всех рабочих данной должности. Например, для ячейки F4 формула расчета имеет вид =D4*E4.

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

Определите оклад санитарки так, чтобы расчетный фонд был равен заданному:

    • активизируйте команду Подбор параметра из меню Сервис;
    • в поле "Установить в ячейке" появившегося окна введите ссылку на ячейку F12, содержащую формулу;
    • в поле "Значение" наберите искомый результат 10000;
    • в поле "изменяя значение ячейки" введите ссылку на изменяемую ячейку H8 и щелкните на кнопке ОК.

Сохраните таблицу в личном каталоге под именем hospital.xls.

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

Контрольное задание

7.1. Найти корень уравнения x2-sinx=0.

Указание В качестве начального приближения возьмите х=0,5. Обратите внимание, что уравнение имеет два корня: 0 и 0,87, однако Excel может находить только один.

7.2. Задачи оптимизации

В предыдущей главе мы рассмотрели задачу поиска значения параметра, позволяющего достичь конкретной цели.

Решаемые задачи могут быть более сложными. Например, поиск нескольких параметров, обеспечивающих некоторый наперед заданный результат.

Кроме того, иногда интересует не конкретный результат, а минимально

Похожие материалы

Информация о работе