1 Применение генетических алгоритмов для генерации автоматов при построении модели максимального правдоподобия и в задачах управления Выполнил: Бедный Юрий, группа 6538 Научный руководитель: Шалыто Анатолий Абрамович, докт.техн.наук, профессор, СПбГУ ИТМО
2 Генетические алгоритмы Оптимизационный метод, базирующийся на эволюции популяции «особей» Особь характеризуется приспособленностью – функцией ее генов Задача оптимизации – максимизация функции приспособленности СПбГУ ИТМО, 2008
3 Генетические алгоритмы и автоматы Теория игр (итерированная дилемма узника) Молекулярная биология (выбор праймера для ПЦР) Роботехника (движение человекоподобного робота) Зоология (искусственная этология) Теория клеточных автоматов (DCT) Регрессия (задача «о Флибах») Задача управления (задача об «Умном муравье») Задачи оптимизации Проектирование логических схем Распознавание изображений Распознавание языков СПбГУ ИТМО, 2008
4 В работе генетические алгоритмы и автоматы применяются для: 1.Построения моделей максимального правдоподобия одного класса.Задача: поиск ошибок в автоматах с помощью скрытых марковских моделей. 2.Решения нетривиальных задач оптимального управления. Задача: построение системы управления танком в игре Robocode. СПбГУ ИТМО, 2008
5 Модели максимального правдоподобия. Скрытые марковские модели: λ=(A, B, π ) Наблюдения: O=O 1 O 2 …O T Состояния: Q=q 1 q 2 …q T Три классические задачи: 1.Определить P(O|λ). Forward-Backward: O(TN 2 ) 2.Найти Q для max P(O|λ). Viterbi: O(TN 2 ) 3.Найти λ для max P(O|λ). Baum-Welch: как повезет СПбГУ ИТМО, 2008
6 Недостатки алгоритма Баума-Велша СПбГУ ИТМО, 2008 Успешно применяется для решения актуальных задач – распознавание речи, предсказание структуры белка,… Но имеются существенные недостатки: Поскольку алгоритм градиентного спуска – застревание в локальных экстремумах Как следствие – необходимость тщательного выбора начальных параметров
7 Поиск структуры графа – переходов с ненулевой вероятностью – с помощью генетических алгоритмов. Won K., Hamelryck T., Prugel-Bennett A., Krogh A. Evolving Hidden Markov Models for Protein Secondary Structure Prediction / Proceedings of the IEEE СПбГУ ИТМО, 2008 Генетические алгоритмы для выбора начальных параметров
8 Предлагается выяснить когда BW алгоритм не работает без ГА и на сколько эффективно применение ГА в этом случае. «Сильно детерминированные» модели СПбГУ ИТМО, 2008 «Детерминированная» монетка: Человек разумный: Алгоритм Баума-Велша: Для данного примера можно все поправить, но в общем случае не понятно, как это сделать.
9 «Сильно детерминированные» модели. Гипотеза и проверка СПбГУ ИТМО, 2008 Основное наблюдение, не отмеченное ранее – чем более «детерминирована» матрица переходов, тем хуже работает BW. Тем важнее использовать генетические алгоритмы.
10 Проверка гипотезы. Построение модели максимального правдоподобия СПбГУ ИТМО, 2008 Один переход с большой вероятностью и не более двух – с малой. Граф связен. N = 12, M = 3, чтобы задача была сложной: пространство поиска (N 2 /2) N 2·10 22 Набор из 10 входных последовательностей Длина каждой – 200 элементов Несколько десятков экспериментов
11 Типичный пример. Сравнение с алгоритмом случайного поиска СПбГУ ИТМО, 2008 Исходная модель: -690 Оптимизированная модель: -678 Рассматриваемый метод: -675 Может быть задача не сложна? Два алгоритма случайного поиска: -824
12 Ход эволюции СПбГУ ИТМО, 2008
13 Есть ли практическая польза? Поиск ошибок в автоматах с помощью скрытых марковских моделей Методы: Верификация Тестирование Преимущества предлагаемого метода: не требует изменения структуры автомата не требует добавления отладочной информации СПбГУ ИТМО, 2008
14 Тип ошибок – неучтенные переходы между состояниями x 1 x 1 x 2, при x 2 =1 СПбГУ ИТМО, 2008
15 Результаты по первой части 1.Эмпирически установлена неприменимость BW алгоритма при построении моделей максимального правдоподобия некоторого класса HMM 2.Для указанного класса показана эффективность метода построения модели максимального правдоподобия, основанного на использовании генетических алгоритмов 3.Предложена и решена задача поиска ошибок одного типа в автоматах СПбГУ ИТМО, 2008
16 Решение нетривиальных задач управления. Примеры и актуальность. Беспилотным летательным аппаратом Наземным средством передвижения Различными системами этих средств (двигателем, системой стабилизации) Бытовыми устройствами (лифтом, телевизором) Транспортными потоками Виртуальными объектами в играх и моделях (танком в игре Robocode, футболистами в виртуальном футболе) СПбГУ ИТМО, 2008
17 Описание задачи СПбГУ ИТМО, 2008 Параметры изменяются во времени – фазовая кривая. Функция оценки качества решения задачи управления по фазовой кривой возвращает вещественное число. Задача управления состоит в том, чтобы, изменяя значения контролируемых параметров, получить фазовую кривую с максимальным качеством решения.
18 Формальная постановка задачи СПбГУ ИТМО, 2008 Выделим n существенных для задачи управления вещественных параметров Множество значений, принимаемых данными параметрами – Q = R n Временной интервал разбит на T мин. интервалов Фазовая кривая φ – элемент Q T, на момент t: φ t Качество управления – функция g: Q T R Функция управления – Вспомогательная функция Начальные условия φ 0 – элемент R n Задача управления –
19 Проблемы, возникающие при решении задачи СПбГУ ИТМО, 2008 Зависимости между параметрами сложны. Задаются функцией h в неявном виде системой дифференциальный уравнений. Сложно решить аналитически. Cложно найти вектор, так как он содержит большое число координат. Двухчасовой полет с интервалом 1 секунда – 7200 координат. Каждая из координат вектора f – функция большого числа аргументов. Всего 10 параметров, на 85-ой минуте область определения – R 85·60·10
20 Автоматный подход СПбГУ ИТМО, 2008 При решении задачи управления часто можно выделить состояния, в которых может находиться объект управления Количество различных координат функции управления полагается равным количеству состояний автомата Координата функции управления управляет объектом исходя только из значений параметров в настоящий момент времени
21 Недостатки автоматного подхода СПбГУ ИТМО, 2008 Задача эвристического определения конечного множества воздействий трудна Сложность эвристического выбора компромисса между числом воздействий и размером пространства, на котором решается задача управления Сложность эвристического построения графа переходов автомата, в частности, задания условий на переходах
22 Предлагаемый метод. Основная идея – применение ГА для автоматического построения автомата СПбГУ ИТМО, 2008 Метод – программирование с экспрессией генов Решение задачи управления – автомат – особь генетического алгоритма. Необходимо выбрать способ кодирования Функция приспособленности ГА выражается через функцию g оценки качества решения. Определяется задачей Генетические операции (мутация, скрещивание, отбор) – стандартные для программирования с экспрессией генов
23 Представление решения задачи управления в виде хромосомы СПбГУ ИТМО, 2008 В состояниях: Хромосома – набор N·(N - 1) + m · N функций, отображающих из Q в R На переходах:
24 Построение функции, отображающей из R n в R СПбГУ ИТМО, 2008 Функция – композиция базовых функции Набор базовых функций: достаточно полный, но не слишком избыточный Арифметические Показательные Логарифмические Тригонометрические Условные Вероятностные
25 Апробация. Создание системы управления танком в игре Robocode СПбГУ ИТМО, 2008
26 Параметры СПбГУ ИТМО, 2008 x, y - координаты соперника относительно танка dr - расстояние, которое осталось «доехать» танку tr - угол, на который осталось повернуться танку w - расстояние от танка до края поля dh - угол между направлением на соперника и пушкой танка GH - угол поворота пушки танка h - направление движения соперника d - расстояние между танком и соперником e - энергия соперника E - энергия танка
27 Контролируемые параметры и базовые функции СПбГУ ИТМО, 2008 g – угол поворота пушки p – энергия снаряда d – длина перемещения h – угол поворота танка +(x, y)= x + y, ++(x, y, z) = x + y + z n (x) = -x, *(x, y) = xy **(x, y, z) = xyz, min (x, y) if> (x, y, z, w) = x > y ? z : w s (x) = (1 + e -x ) -1
28 Результаты поединков (100 раундов) СоперникСчет newCynic.Cynical : 8108 sample.Walls 9559 : 7240 sample.SpinBot : 8556 sample.MyFirstRobot : 5346 sample.Corners : 2971 sample.Crazy : 4278 sample.Fire : 5500 sample.Tracker : 4844 sample.TrackFire : 9851 sample.Target : 5 sample.RamFire : 3089 СПбГУ ИТМО, 2008
29 Заключение (результаты) 1.Эмпирически установлена неприменимость BW алгоритма при построении моделей максимального правдоподобия некоторого класса HMM 2.Для указанного класса показана эффективность метода построения модели максимального правдоподобия, основанного на использовании генетических алгоритмов 3.Предложена и решена задача поиска ошибок одного типа в автоматах 4.Предложен метод решения задач оптимального управления 5.Метод успешно опробован для построения системы управления танком в игре Robocode СПбГУ ИТМО, 2008
30 Публикации Государственный контракт: «Технология генетического программирования для генерации автоматов управления системами со сложным поведением» Труды V Межвузовской конференции молодых ученых, 2008 Труды XII Всероссийской конференции «Фундаментальные исследования и инновации в технических Университетах», 2008 IV международная конференции по проблемам управления, 2009 XI Международной конференции по мягким вычислениям и измерениям, 2008 Конкурс грантов 2008 года для студентов и аспирантов ВУЗов и академических институтов XV Всероссийская научно-методическая конференция «Телематика'2008» На рецензию в журнал «Известия РАН. Теория и системы управления» СПбГУ ИТМО, 2008
31 Спасибо за внимание! Вопросы…