Методы исследования операций
В моделях исследования операций переменные, от которых зависят ограничения и целевая функция, могут быть дискретными (чаще всего целочисленными) и непрерывными. В свою очередь, ограничения и целевая функция делятся на линейные и нелинейные. Задачи оптимизации, представленные линейными моделями, решаются методами линейного программирования, когда целевая функция и все ограничения линейны. Задачи оптимизации, представленные нелинейными моделями, решаются методами нелинейного программирования, когда либо целевая функция, либо одно или несколько ограничений нелинейны, либо и целевая функция, и все ограничения нелинейны. Для решения математических моделей других типов предназначены методы динамического программирования, целочисленного программирования, нелинейного программирования, многокритериальной оптимизации и методы сетевых моделей. Практически все методы исследования операций порождают вычислительные алгоритмы, которые являются итерационными по своей природе. Это подразумевает, что задача решается последовательно (итерационно), когда на каждом шаге (на каждой итерации) получаем решения, постепенно сходящиеся к оптимальному решению. Итерационная природа алгоритмов обычно приводит к объемным однотипным вычислениям. В этом и заключается причина того, что алгоритмы разрабатываются в основном для реализации с помощью вычислительной техники. Однако применение ЭВМ порождает вычислительные трудности, связанные с ошибками машинного округления, которые становятся особенно заметными при увеличении числа итераций. Проблема ошибок усугубляется, если переменные модели ИО должны принимать только целочисленные значения. Поскольку компьютер выполняет все вычисления в арифметике с плавающей запятой, точное представление некоторых целочисленных значений становится невозможным; в этом случае о решении говорят, что оно принадлежит определенной области значений. Некоторые математические модели могут быть такими сложными, что их невозможно решить никакими доступными методами оптимизации и исследования операций. В этом случае остается только эвристический подход: поиск подходящего «хорошего» решения вместо оптимального. Эвристический подход предполагает наличие эмпирических правил, в соответствии с которыми ведется поиск подходящего решения. Обычно эвристические алгоритмы выполняются значительно быстрее, чем алгоритмы нахождения точного решения.
|