Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Коросов А.В. 2002. Имитационное моделирование в...doc
Скачиваний:
26
Добавлен:
12.09.2019
Размер:
3.07 Mб
Скачать

Параметры макроса «Поиск решения»

Справочная информация о порядке пользования и смене настроек макроса «Поиск решения» представлена в нескольких вкладках «Справочной системы» пакета MS Excel (знак вопроса на главной панели меню). В «Содержании» – это пункт «Выборка и анализ данных/ Нелинейная множественная оптимизация», в «Предметном указателе» – рубрика «поиск решений». На вкладке «Поиск» новую информацию можно найти по ключевым словам «поиск решен...», «solver». Основные же подсказки дает кнопка «Справка» на панелях окна макроса.

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

«Выполнить» – кнопка запуска макроса. Казалось бы, объяснять ее назначение излишне, после нажатия начинается оптимизация модели. Хитрость заключается в том, что иногда для настройки требуется неоднократно запускать эту программу! При этом каждая новая попытка улучшает модель, иногда возникает два устойчивых набора параметров, один из которых все же лучше другого. Причина этого «явления» состоит в том, что при каждом новом запуске заново переопределяется величина приращения параметра (Da), служащая для расчета новых «поисковых» значений целевой функции. Значение Da рассчитывается автоматически и определяется стартовой «атмосферой» модели. Изменение исходных значений параметров (после каждой новой настройки) влечет за собой изменение величины приращения и самого характера оптимизации. По этой причине результаты поочередных актов настройки могут отличаться. Правда отличия сохраняются всего лишь на протяжении 3–5 итераций. Впрочем, так происходит далеко не всегда, а только в случае с моделями, имеющими «мягкий» каркас, несколько скрытых переменных или плохо структурированные данные.

«Ограничения» – диалог ввода, удаления и изменения граничных условий изменения переменных и параметров. В рамках имитационной системы это свойство макроса используется просто как выходной фильтр. Фактически же программа позволяет решать задачи математического программирования. Условия могут накладываться как на отдельные значения, так и на блоки ячеек, как на значения параметров, так и на модельные значения. Использовать ограничения следует в двух случаях. Во-первых, это теоретические соображения о биологически правдоподобном диапазоне возможных значений параметров и переменных. Например, многие природные характеристики не могут быть отрицательными (численность, размеры, масса, концентрация), хотя модельные уравнения могут вычислять такие значения. Во-вторых, для исправления вычислительных ошибок, если во время настройки модельный блок заполнится значками диеза (##, за ними прячутся сообщения об ошибках: #ДЕЛ/0!, #ЧИСЛО!) и появится окно «Результаты поиска решения» с текстом, предупреждающим об обнаружении ошибки (рис. 4.2).

Рис.4.2. Сообщение об ошибке

Источники ошибок в арифметических моделях почти всегда одинаковы: деление на нуль, попытка вычислить логарифм или извлечь корень из отрицательного числа. Выход из ситуации один – отменить результаты настройки и задать условия, ограничивающие область изменения значений, которые вызвали ошибку. Для этого нужно нажать кнопку «Добавить» и, выделив мышью ячейки (или ячейку), задать им граничные значения (например, «больше или равно нулю», >= 0).

«Параметр» – вызов окна (рис. 4.3) для изменения характера работы макроса. Рассмотрим важнейших из них.

«Предельное число итераций» – ограничение длительности настройки. Одна итерация состоит в двукратном пересчете функции невязки (с базовыми и измененными значениями параметров), в вычислении направления и величины изменения базовых параметров, в расчете новых значений базовых параметров. Каждая итерация улучшает модель. Хорошо структурированные модели сходятся менее чем за 10 шагов, плохо структурированные – пытаются преодолеть барьер в 100 итераций. Если появляется окно «Текущее состояние поиска решения» с вопросом «Продолжить?», значит, скорее всего, модель считает «что-то не то» и требует критического пересмотра.

Рис. 4.3. Окно настройки параметров макроса

«Сходимость» – предельная минимальная величина разности между значениями целевой функции, полученными в смежных итерациях, . По ее достижении (когда F(Ai) – F(Ai+1) < ) процедура настройки модели прекращается. Чем больше величина , тем быстрее закончится настройка, тем грубее будет модельное описание. Этот параметр относительный, он контролирует скорость изменения целевой функции. Для рассмотренных биоэкологических моделей достаточна уже величина  = 0.1, однако по умолчанию назначается величина  = 0.001, которая дает немного более точные результаты, почти не сказываясь на времени выполнения процедуры. Этот параметр можно никогда не изменять. Для большей обоснованности прекращения настройки берут усредненное значение по пяти последним итерациям.

«Относительная погрешность» (или точность) – предел округления величин F(Ai) и F(Ai+1) при расчетах разности между ними. Этот параметр, как и предыдущий, также существенно определяет ход процесса настройки, но это абсолютный показатель, он устанавливает не предельную скорость, но предельное отклонение целевой функции от заданного уровня.

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

Рис. 4.4. Сообщение об успешной настройке параметров модели

Когда же отклонение больше допустимого, текст в окне «Результаты поиска решения» меняется: «Поиск не может найти подходящего решения» и доступа к выбору отчета нет. Поскольку при имитационном моделировании обычно «запланировано» значение целевой функции, равное 0 (которое, понятное дело, никогда не достигается), то и настройщик модели всегда видит только такое окно.

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

«Линейная модель» – способ быстрой и грубой предварительной оценки параметров модели. На наш взгляд, гораздо продуктивнее «метод биологического правдоподобия», первичное назначение параметров, исходя из знания предмета и теоретических соображений.

«Метод Ньютона» – процедура вычисления направлений поиска оптимума, рассмотренная выше. Характеризуется большим объемом вычислительной работы, но более высокой скоростью поиска решения. Приемлем для большинства задач, но может пропустить глобальный экстремум, имеющий узкое основание на условном ландшафте целевой функции.

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

«Оценка», «Производные» – варианты методики оптимизации, мало влияющие на результаты настройки рассмотренных моделей.