Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Краткий экскурс в теорию
Формулировка любой оптимизационной задачи требует использования некоторой базовой системы понятий. Любая переменная (изменяемая ячейка в ЭТ) обычно интерпретируется как некоторый ресурс (например, ресурс времени, материала, продукта, валюты), выраженный в количественном измерении (минуты, тонны, штуки, рубли). Задача оптимизации состоит в том, чтобы подобрать такие значения переменных, при которых целевая функция (целевая ячейка ЭТ) принимает максимальное, минимальное или заданное значение (оптимальное значение), при этом найденные значения переменных в совокупности составляют оптимальное решение задачи. В классическом исследовании операций [1, 4—6] задачи математического программирования делятся на несколько различных типов в зависимости от вида целевой функции и ограничений. К основным типам относятся задачи линейного и нелинейного программирования. Для первого типа характерна целевая функция, линейно зависящая от переменных (ресурсов) исследуемой системы, и такие же линейные ограничения. Если же целевая функция или хотя бы одно из ограничений нелинейно зависит от переменной (хотя бы одной), задача относится к типу нелинейного программирования. В качестве примеров нелинейностей можно привести зависимости видов Xi*Xj, Xi/Xj, log(Xi) (вычисление логарифма от Xi), MIN(Xi,Xj,Xk), Xj2 (квадрат Xj) и т. д. Здесь Xi, Xj — переменные задачи. Если оптимизационная задача должна решаться в целых числах, когда хотя бы одна из переменных модели должна измеряться в штуках (станках, автобусах и т. п.), говорят о целочисленном программировании. Наконец, если хотя бы одна из переменных может принимать только одно из двух значений (0 или 1), говорят о булевском программировании. Вычислительные алгоритмы поиска решения для разных классов задач характеризуются разной степенью сложности, наиболее сложными являются задачи целочисленного программирования, к наиболее простым относятся задачи линейного программирования. Класс задач линейного программирования весьма широк, эти задачи имеют наиболее эффективную реализацию и характеризуются наглядной экономической интерпретацией результатов. Поэтому любую иссле-дуемую систему желательно привести к линейной модели. К сожалению, это не всегда возможно. Любой вычислительный алгоритм решения оптимизационной задачи имеет характер итерационного процесса, постепенно (шаг за шагом) приближающегося к оптимальному решению. Такие процессы поиска решения характеризуются точностью вычислений, количеством итераций и временем поиска решения. Все эти характеристики определяются в разделе Параметры окна Поиск решения. Итерационные процессы поиска должны обладать свойством сходимости вычислений. Это свойство заключается в том, что разность результатов, получаемых на л-ом и (л + 1)-ом шаге вычислений, должна с ростом л стремиться к нулю: limn->~(Xn+1-Xn) = 0. Здесь Хп+1, Хп— значения изменяемых ячеек на л-ой и (л + 1)-ой итерации. Практически л ограничивается конкретным значением N — количеством итераций. Количество итераций определяет число шагов d последовательности приближений текущего решения задачи к оптимальному, при этом время, затраченное на реализацию такой последовательности, определяет время поиска оптимального решения. По умолчанию в программе Solver: N = 100. Точность вычислений оптимального решения задачи определяется количеством значащих цифр в представлении значений изменяемых ячеек Х„. Понятие точности тесно связано с понятием отклонения \XN+1 — Хn, которое может задаваться в процентах от абсолютной величины XN. Итерационные процессы могут отличаться также методами реали-зации вычислений. Для линейных моделей используется главным образом так называемый симплекс-метод, для нелинейных — метод Ньютона и метод сопряженных градиентов. Они кратко комментируются в разделе «Поиск решения». Контрольные вопросы
1. Какое предположение целесообразно сделать перед разработкой структуры ЭТ для решения оптимизационной задачи? 2. Что такое размерность оптимизационной задай? 3. Что такое целевая ячейка? 4. Что такое изменяемые ячейки?. 5. Чем отличаются зависимые ячейки от ячеек исходных данных? \ 18 Часть 1. Поиск решений на электронных таблицах Поиск решения 19
6. Чем отличаются изменяемые ячейки от ячеек исходных данных? 7. Перечислите и охарактеризуйте отношения в списке ограничений (ниспа 8. Какие ограничения относятся к естественным? 9. Чем полезна структура графа зависимостей для ЭТ, связанной с решением 10. В каких ячейках ЭТ программа поиска размещает оптимальное решение 11. В какой ячейке размещается оптимальное значение целевой функции? 12. Назовите и охарактеризуйте основные виды задач математического про 13. Какие задачи математического программирования имеют наиболее эффек 14. Чем характеризуется итерационный процесс решения задачи? 15. Можно ли рассматривать целевую ячейку как разновидность зависимой? Date: 2015-07-23; view: 418; Нарушение авторских прав |