ПОИСК Статьи Рисунки Таблицы Разработка методики решения задачи из "Инженерные задачи в нефтепереработке и нефтехимии" Методика решения задачи считается разработанной, когда установлены зависимости всех искомых результатов от исходных данных и указаны такие методы получения искомых результатов, которые могут быть реализованы на ЦВМ. В некоторых случаях пригодность (или непригодность) избранных методов может быть установлена только на последующих этапах в процессе разработки алгоритма решения и даже в процессе решения задачи на ЦВМ. При непригодности выбранных методов приходится возвращаться к этапу разработки методики. [c.27] Почти во всех задачах встречаются действия (дифференцирование, оптимизация и т. д.), не выраженные через обычные арифметические операции. Разработка методов арифметизации задач, или численные методы, относится к вычислительной математике. [c.27] В большинстве своем численные методы дают приближенное решение задачи. Тем не менее применение приближенных численных методов иногда оказывается предпочтительным даже, когда известен точный способ решения задачи это объясняется обеспечением достаточной точности и небольшими затратами времени (при применении ЦВМ), позволяющими получить удовлетворительные результаты, не прибегая к громоздким выкладкам. [c.27] Как правило, для каждой задачи можно применить несколько численных методов решения. И каждый из них в принципе гарантирует решение задачи. Однако, на самом деле оказывается, что принципиальная возможность использования того или иного метода еще не означает, что результат будет удовлетворительным. Проиллюстрируем это на примере решения задач оптимизации. [c.28] Пожалуй, самым очевидным методом оптимизации является метод Гаусса — Зейделя. Сущность его сводится к следующему. [c.28] Из исходной точки с координатами Хо, уо (рис. 1-8) вьшолняется движение вдоль оси х (при зафиксированном у) с заданным шагом. В каждой новой точке вычисляется значение функции. Движение продолжается до тех пор, пока значение функции в новой точке будет меньшим, чем в предыдущей (дс1). [c.28] Из точки (лгь Уо) выполняется движение вдоль оси у (л-] фиксировано) с заданным шагом. И так далее, приближаясь к оптимуму путем покоординатного спуска. [c.28] Метод Гаусса — Зейделя хорош лишь для оптимизации простых функций. В более сложных ситуациях (рис. 1-9) он не работает. [c.29] Двигаясь из исходной точки (л о, уо) по методу Гаусса —Зейделя, мы попадаем в область А и зацикливаемся . Движение к оптимуму будет осуществляться настолько медленно, что применение метода становится нецелесообразным. [c.29] В данной ситуации эффективным будет метод градиента, в соответствии с которым в исходной точке (лго, Уо) определяется направление максимального возрастания функции и делается шаг (точка /). Затем снова определяется направление максимального возрастания функции и делается шаг (точка 2) и т.д. [c.29] Однако и этот метод может оказаться неэффективным. Рассмотрим ситуацию (рис. 1-10), при которой профиль функции имеет вид крутого оврага с очень полого опускающимся дном. [c.29] Градиентный метод приводит к зацикливанию в овраге. В данной ситуации эффективным оказывается метод оврагов. Из двух исходных точек (д о, Уо) и (дгь уг) определяются два локальных минимума I и 2, т. е. точки, в которых градиентные методы привели к зацикливанию. На прямой, соединяющей локальные минимумы I и 2 на расстоянии, равном расстоянию между ними, определяется точка (л 2, Уг), из нее градиентным методом определяется новый локальный минимум 3. Затем определяется точка (л з, уз) и локальный минимум и т. д. [c.29] ХОТЯ бы большинство задач. Но такая программа была бы очень громоздкой и неудобной для пользования. Простые задачи не имеет смысла решать сложными методами. С помощью же простых методов иногда удается решать очень сложные задачи. [c.29] Рассмотрим случай, когда оптимизируемая функция имеет очень сложное аналитическое выражение и существует много громоздких ограничений. Однако оптимизировать необходимо лишь по трем переменным, кроме того, очень большой точности вычисления оптимальных значений переменных не требуется. В этом случае эффективным может оказаться самый тривиальный метод, который часто называют перебором. По этому методу область изменения переменных, по которым выполняется оптимизация, просматривается с заданным шагом и выбирается точка, в которой удовлетворяются все ограничения, а функция принимает оптимальное значение. Если оптимизировать необходимо по пяти и более переменным или требуется высокая точность вычисления оптимальных значений переменных, метод перебора не применяют, так как для вычислений потребуются слишком большие затраты машинного времени. [c.30] Таким образом, выбор того или иного метода для решения задачи на цВм связан, с одной стороны, с требованиями, предъявляемыми постановкой задачи (точность решения, быстрота получения результата, трудоемкость подготовки программы решения задачи), с другой стороны, с требованиями, предъявляемыми ЦВМ и программой к численному методу при машинной реализации. [c.30] Выбранный чпсленный метод должен обеспечить рациональное время, затрачиваемое на решение задачи и на подготовку программы, а также выполнить решение задачи с заданной точностью. Так, например, для вычисления определенного интеграла по формуле (1.8) точность вычисления пропорциональна шагу интегрирования к = Ах, следовательно, к увеличению точности в два раза приводит уменьшение в два раза шага к = /г/2 и увеличение в два раза числа элементарных отрезков пи времени интегрирования. [c.30] Меньшую зависимость точности от шага интегрирования обеспечивает метод парабол, при котором вычисления выполняются по более сложным формулам. Для этого метода увеличение точности в два раза достигается уже при уменьшении к в /2 раза. Метод парабол более распространен в вычислительной практике. [c.30] Вернуться к основной статье