Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ГА / ГА / Метод скрещеных таблиц

.pdf
Скачиваний:
34
Добавлен:
26.04.2015
Размер:
5 Мб
Скачать
☆

41

Метод сокращенных таблиц для генерации конечных автоматов с большим числом входных воздействий на основе генетического программирования

Рис. 24. Клиентские связи, BON

2.4. ПРОТОТИП ПРОГРАММНОГО СРЕДСТВА, ОСНОВАННОГО НА

МЕТОДЕ СОКРАЩЕННЫХ ТАБЛИЦ ПЕРЕХОДОВ

Каркас AutoGen был реализован на языке программирования Eiffel. Экспериментальная проверка реализация была выполнена на примере задачи построения управляющего автомата разливочной линии (разд. 1.7). Для этого был разработан эмулятор разливочной линии, реализующий действия и предикаты объекта управления и оценочную функцию, а также построен вручную один из автоматов, решающих поставленную задачу (рис. 25). Автомат содержит пять состояний. Здесь и далее стартовым является первое состояние.

42

Метод сокращенных таблиц для генерации конечных автоматов с большим числом входных воздействий на основе генетического программирования

Рис. 25. Управляющий автомат разливочной линии, построенный вручную (|S| = 5, max(r) = 2)

После этого с помощью каркаса AutoGen были автоматически построены автоматы с представлением состояний в виде полных и сокращенных таблиц. Автомат, представленный полными таблицами, имеет по 32 перехода из каждого состояния, что делает бессмысленным его изображение и анализ.

Автомат, представленный сокращенными таблицами, оказался значительно проще. Один из результатов оптимизации изображен на рис. 26.

!x0/z2z4

 

 

 

 

 

 

 

!x3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

x0/z1z2z4

 

2

 

 

 

 

 

 

 

x3/z0z2

Рис. 26. Управляющий автомат разливочной линии, полученный в результате генетической оптимизации (|S| = 2, r = 1)

43

Метод сокращенных таблиц для генерации конечных автоматов с большим числом входных воздействий на основе генетического программирования

Анализ полученного автомата показал, что его работоспособность вызвана неявными зависимостями в эмуляторе разливочной линии. В частности, при реализации эмулятора пропускные способности верхнего и нижнего клапанов были заданы как постоянные, при этом, первая вдвое больше второй. Автомат в процессе работы использует этот факт. Таким образом, было установлено, что первоначальные реализации объекта управления и оценочной функции не полностью соответствует словесной формулировке задачи. Этот недостаток был впоследствии устранен путем внесения в параметры эмулятора (такие как скорость движения транспортера, пропускная способность клапанов) псевдослучайных отклонений. Результатом повторного применения генетической оптимизации стал автомат, граф переходов которого изображен на рис. 27.

x0x2/z0z2z3z5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x0!x2/z1z2z5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

!x0!x2/z2z3z5

 

 

 

 

 

 

 

x0=x3/z4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

x0!=x3/z4

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

!x0x2/z0z2z3z5 !x1!x3/z0z2z3z4

!x1x3/z0z2z3z4

3

 

x1!x3/z0z2z3z4z5

 

 

 

x1x3/z2z3z4

Рис. 27. Управляющий автомат «случайной» разливочной линии, полученный в результате генетической оптимизации (|S| = 3, r = 2)

ВЫВОДЫ ПО ГЛАВЕ 2

Из изложенного выше следует:

44

Метод сокращенных таблиц для генерации конечных автоматов с большим числом входных воздействий на основе генетического программирования

•предложенный метод сокращенных таблиц был реализован в виде универсального программного средства для генерации управляющих автоматов и протестирован на задаче заполнения бутылок;

•объем занимаемой памяти и время обработки поколения при использовании предложенного метода с ростом числа предикатов растут линейно, а при использовании известного метода — экспоненциально;

•предложенный метод на тестовой задаче превосходит по эффективности известный при числе входных воздействий больше восьми;

•построенные предложенным методом автоматы более понятны человеку;

•начиная с некоторого числа предикатов (для рассмотренной задачи и восьми гигабайт оперативной памяти — 14) применение известного метода практически невозможно, в то время как метод сокращенных таблиц остается достаточно эффективным и по времени и по памяти;

•предложенный метод эффективен для задач, характеризующихся локальной природой предикатов.

45

Метод сокращенных таблиц для генерации конечных автоматов с большим числом входных воздействий на основе генетического программирования

ГЛАВА 3. ПРИМЕНЕНИЕ МЕТОДА ДЛЯ АВТОМАТИЧЕСКОГО УПРАВЛЕНИЯ САМОЛЕТОМ

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

Перед тем, как поставить решаемую задачу, проанализируем текущий уровень развития техники в области автоматического управления стандартными самолетами.

3.1. СУЩЕСТВУЮЩИЕ АВТОПИЛОТЫ

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

•WLV (wing leveler) — удержание самолета в горизонтальном положении. Применяется для анализа ситуации пилотом;

HDG (heading hold) — следование заданным курсом. Отметим, что снос самолета ветром не компенсируется;

•LOC (localizer) — полет к (или от) маяку VOR (Very high frequency Omnidirectional Range, всенаправленный курсовой радиомаяк УКВ-диапазона),

ILS (Instrument Landing System, система инструментальной посадки), или заданной в GPS (Global Positioning System, глобальная система позициони-

46

Метод сокращенных таблиц для генерации конечных автоматов с большим числом входных воздействий на основе генетического программирования

рования) приемнике точке назначения. Эта функция отвечает за горизон-

тальное перемещение самолета;

•HOLD — удержание заданной высоты, поднимая и опуская нос самолета;

•V/S (vertical speed) — удержание постоянной вертикальной скорости, поднимая и опуская нос самолета;

•SPD (speed) — удержание заданной скорости воздушного потока за счет поднимания и опускания носа самолета. Автоматическое управление дросселем не используется;

•FLCH (flight level change) — аналогично SPD, за исключением того, что, при наличии механизации дросселя, подача топлива также регулируется автоматически;

•PTCH (pitch sync) — удержание постоянного тангажа;

•G/S (glide slope) — управление высотой при посадке на ILS;

•VNAV (vertical navigation) — автоматическая загрузка высот прохождения различных этапов полета из системы управления полетом (FMS, flight management system) в автопилот;

•BC (back course) — реверс управления для полета по ILS в противоположном направлении.

3.2. НЕРЕШЕННЫЕ ПРОБЛЕМЫ

Как следует из списка функций, современные автопилоты действительно способны управлять самолетом на различных этапах полета: наборе высоты при взлете, полете через опорные точки маршрута и снижении на полосу при посадке. Однако необходимое участие человека остается существенным.

Набор функций позволяет настроить автопилот только на некоторую часть полета. Так, автопилот может самостоятельно перейти из режима набора высоты в

47

Метод сокращенных таблиц для генерации конечных автоматов с большим числом входных воздействий на основе генетического программирования

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

Другим неавтоматизированным родом деятельности является управление всем кроме элеронов, руля высоты и руля направления, а также, в некоторых случаях, дросселя. Например, при взлете пилот не может поручить автоматике запуск двигателей, опускание закрылков, установку максимальной подачи топлива, включение дополнительного оборудования (светотехники, систем предупреждения обледенения), управление шасси. Подобные действия требуется производить в определенных условиях, отслеживание которых требует длительного внимания пилота. Так, если скорость набора высоты при взлете может контролировать автопилот, то скорость воздушного потока и высота должны оставаться в поле зрения пилота для обеспечения своевременного убирания закрылков и шасси.

Существуют версии автопилотов, лишенные указанных недостатков. Это, в первую очередь, системы управления, устанавливаемые на беспилотные летательные аппараты. Однако такие системы не совместимы со стандартным оборудованием самолетов и наземного сегмента. Примеры существующих беспилотных самолетов приведены на рис. 28, а стандартный самолет Piper PA 46 310P, модель которого будет использоваться в настоящей работе — на рис. 29.

48

Метод сокращенных таблиц для генерации конечных автоматов с большим числом входных воздействий на основе генетического программирования

Рис. 28. Беспилотные самолеты

49

Метод сокращенных таблиц для генерации конечных автоматов с большим числом входных воздействий на основе генетического программирования

Рис. 29. Piper PA 46 310P

3.3. ПОСТАНОВКА ЗАДАЧИ

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

50

Метод сокращенных таблиц для генерации конечных автоматов с большим числом входных воздействий на основе генетического программирования

3.4. ОБОСНОВАНИЕ ИСПОЛЬЗОВАНИЯ АВТОМАТОВ

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

3.4.1. Зависимость способа управления от естественного состояния (этапа полета)

Полет самолета, вне зависимости от системы управления, состоит из нескольких этапов, таких как ожидание разрешения на взлет, разбег, набор высоты. Эти этапы можно считать естественными состояниями, так как от этапа полета зависит адекватная реакция на внешние воздействия.

Наглядным примером может служить осуществление поворотов (изменение курса). В воздухе (естественные состояния, в сценарии полета расположенные между отрывом от земли и приземлением) более эффективно и комфортно для пассажиров осуществление поворота с помощью элеронов, наклоном самолета вбок. На земле же (в состояниях разбега и торможения после посадки) подобный поворот практически не осуществим, и вместо элеронов применяется руль направления. Таким образом, одному и тому же входному воздействию (горизонтальное отклонение от запланированной траектории) в одном состоянии соответствует выходное воздействие, управляющее элеронами, а в другом — рулем направления.

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