Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Запуск и остановка поиска





Этим целям служит пункт меню Run рис. 2.41: когда все готово к оптимизации, нажмите Start, для остановки поиска — Stop (или кла­вишу Esc).

Процесс оптимизации (поиск решения)

В динамике процесса поиска в главном окне системы OptQuest отображается состояние этого процесса (см. рис. 2.44).


Рис. 2.44. Главное окно OptQuest в динамике поиска

Статус поиска (Status) отображается в левом верхнем углу окна (на рис. 2.44 статус определяет время до окончания поиска). Имя файла оптимизации (Optimization file) отображается в правом верхнем углу окна (в нашем случае TV.OPT).

На белой полосе в центре окна отображается текущее состояние процесса поиска. Ниже приводится перечень таких состояний.

Ready — исходное состояние готовности начать процесс оптими­зации.

Running a Test Simulation —■ OptQuest запускает тестовую имита­цию, чтобы установить параметры поиска.

Building Initial Population — OptQuest генерирует начальную попу­ляцию возможных решений.

Optimizing — идет поиск. Возможно, Micro Saint выполняет запуск имитационной модели или OptQuest решает, какие значения входных переменных сгенерировать следующими.

Neural Network Accelerator Engaged — если вы включили ускорение нейронной сети, OptQuest периодически обучает эту сеть.

Diversifying — OptQuest определил, что популяция решений полу­чит преимущество, если будет применена специальная диверсифика-ционная стратегия при создании новых решений. Диверсификацион-ная процедура включает новые решения в популяцию перед тем, как поиск будет продолжен.

Evaluating Diversified Population — OptQuest оценивает последнюю диверсифицированную популяцию.

Ниже белой полосы состояния поиска размещается таблица, ко­торая содержит:

• номер очередного запуска процесса имитации с новым вариан­том значений входных переменных (Simulation);



Часть 2. Имитационное моделирование


Оптимизация на имитационных моделях



 


                 
 
 
   
 
   
 
   
   
 


 

• значение целевой функции, полученной при этом запуске (ob­
jective);

• значения входных переменных, используемые при этом запуске
(в нашем случае это одна переменная — Nk).

Результаты поиска (значение целевой функции) располагаются в файле OPTQUEST.RES. Его можно просмотреть и проанализировать средствами системы Micro Saint как обычный файл результатов этой системы.

Результаты оптимизации


Simulation j_Objs-f-liv • • ' _ j_ 6.00616 \ 2 2I 0.673794Г 6

После завершения оптимизации главное окно OptQuest отобража­ет трассу просмотренных вариантов решения оптимизационной зада­чи (рис. 2.45) и выделяет лучший из них.

Рис. 2.45. Главное окно OptQuest после завершения оптимизации

Для просмотра результатов оптимизации в меню опций (Options) используются специальные средства интерпретации результатов в виде графика (Graph), просмотра переменных (View Variables) или данных времени исполнения (Run Data).

Для рассматриваемого примера использование формы графика приводит к выводу окна рис. 2.46.

По оси абсцисс отложена последовательность шагов процесса по­иска решения (Simulation) с запуском соответствующей MS-модели. График Current показывает текущие результаты, a Best — процесс улучшения текущих результатов.

По оси ординат откладываются значения целевой функции (objec­tive). Эта ось может использовать два типа разметки: линейную (Line­ar/Linear) и логарифмическую (Log/Linear). Первая удобна при значи-


Рис. 2.46. График результатов оптимизации

тельной разнице в результатах оптимизации, вторая — при небольших отличиях между результатами. Выбор типа разметки открывается в меню Туре.

Для рассматриваемого примера поиск начался со значения Nk = — 2, рекомендованного в таблице выбора (рис. 2.42) в качестве нача­льного значения. При этом по результатам первой попытки (Simulati­on = 1) целевая функция определилась значением 6,00616. Вторая по­пытка (Simulation = 2) определялась значением Nk = 6, предложен­ным алгоритмом поиска (нами был выбран алгоритм No Neural Network — без нейронной сети). Имитация системы на втором шаге поиска привела к определению objective значением 0,673794, что су­щественно улучшило результат. Третья попытка использовала в каче­стве пробного значения входной переменной Nk = 4, что опять-таки улучшило результат (objective = 0,510690). Четвертая попытка практи­чески не изменила результат третьей, пятая была связана (как легко догадаться) с дальнейшим снижением Nk (скорее всего Nk = 1), что привело к резкому возрастанию длины очереди перед контролем и со­ответственно к резкому возрастанию значения целевой функции (ob­jective «50). Это вызвало резкое ухудшение уже найденного приближе­ния к оптимуму, поэтому кривая Best не отреагировала на этот вари­ант, шестой и седьмой шаги были связаны с возвращением в окрестности уже использованных значений Nk = 4-5, что также не улучшило результата поиска.


Просмотр результатов в окне View Variables связан с использова­нием диаграммы соотношений между значениями входных изменяе­мых переменных. Поскольку в нашем примере такая переменная то­лько одна, окно для анализа результатов для рассмотренного примера оказывается малоинформаnивным (рис. 2.47).


144


Часть 2. Имитационное моделирование


Оптимизация на имитационных моделях


145


 


           
 
 
   
 
   
 
   

Рис. 2.47. Диаграмма сравнения переменных

Третья форма интерпретации результатов (Run Data) связана с выводом подробной информации о последовательности шагов про­цесса поиска, которые привели к наилучшему результату (последую­щие шаги не рассматриваются). В нашем примере к наилучшему резу­льтату привели три шага поиска и соответственно три запуска MS-mo-дели. Рис. 2.48 иллюстрирует вывод информации в форме (Run Data).

Оптимальный результат представлен первой записью.

 

Она включает в себя:

1) номер шага в процессе поиска (si­
mulation);

2) значения изменяемых переменных
(Values of Variables);

3) среднее значение целевой функции
(Average Objective). Это значение форми­
руется по нескольким прогонам модели в
случае, когда перед оптимизацией в уста­
новках (Edit —> Settings) указывается ко­
личество прогонов, большее 1. В нашем
примере Run = 1, поэтому усредненное
значение objective не отличается от обыч­
ного;

 

4) стандартное отклонение от среднего
(Standard Deviation). При количестве про­
гонов, равном 1 (Run=l в Edit —> Settings)
этот параметр равен 0;

5) индивидуальные значения целевой
функции по каждому из прогонов MS-mo-
дели (Individual Run Objective). В общем

случае это список, в нашем примере прогон один, поэтому в списке только одна запись: (Run 1: 0,51069).

После завершения оптимизации OptQuest предлагает внести изме­нения в MS-модель, связанные с установкой оптимальных значений изменяемых переменных. При согласии пользователя такое измене­ние вносится в календарь на момент системного времени clock = 0. При этом запуск MS- модели будет приводить к установке оптималь­ных значений изменяемых переменных. Рисунок 2.49 показывает со­держимое календаря с установленным OptQuest оптимальным значе­нием числа контролеров (Nk = 4).

Рис. 2.49. Содержимое календаря с установленным оптимальным значением числа

контролеров (Nk = 4)

Из сопоставления содержимого календарей MS-модели до и после оптимизации (рис. 2.49 и 2.40) становится понятным, почему мы установили оператор присваивания (Nck:=Nk) не в начальный мо­мент времени, а несколько позже.


Контрольные вопросы и предложения

1. Что определяет функция objective в системе поиска оптимального решения
на имитационной MS-модели?

2. В чем состоит принципиальное отличие целевой функции objective от целе­
вой ячейки электронной таблицы?

3. Чем отличаются входные изменяемые переменные от остальных перемен­
ных имитационной MS-модели?

4. Как учитываются при оптимизации границы значений изменяемых пере­
менных?

5. Какое значение получают обычно входные переменные на первом шаге
процесса поиска, если задано поле Suggested Value?

6. Какие переменные MS-модели могут использоваться при определении
ограничений на пространство поиска в окне (Edit —> Constraints)?

7. Охарактеризуйте основные опции «Ускорителя нейронных сетей» и ситуа­
ции, в которых их следует использовать.

 


146


Часть 2. Имитационное моделирование


I:"


 


8. В чем состоят отличия кривых Current и Best при представлении результа­
тов оптимизации в виде графика?

9. Как интерпретируется термин Simulation в разметке оси абсцисс графика
результатов имитации?

 

10. Как изменятся результаты оптимизации, если целевую функцию рассмат­
риваемого примера определить следующим образом: objective:=Q_max?

11. Как изменятся результаты оптимизации, если целевую функцию рассмат­
риваемого примера определить следующим образом: objective:=(l-KPD)?

12. Можно ли в качестве изменяемой переменной рассмотренной модели вы­
брать переменную Q_max? Переменную State? Почему?

13. В чем состоят основные отличия между поиском оптимальных решений на
электронных таблицах и имитационных моделях?








Date: 2015-07-23; view: 342; Нарушение авторских прав



mydocx.ru - 2015-2024 year. (0.014 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию