Графические модели (курс лекций)/2012/Задание 2
Материал из MachineLearning.
Строка 1: | Строка 1: | ||
- | |||
- | |||
{{stop|Внимание! Страница задания находится в стадии формирования. Убедительная просьба не приступать к выполнению задания до тех пор, пока это предупреждение не будет удалено.}} | {{stop|Внимание! Страница задания находится в стадии формирования. Убедительная просьба не приступать к выполнению задания до тех пор, пока это предупреждение не будет удалено.}} | ||
{{Main|Графические модели (курс лекций)}} | {{Main|Графические модели (курс лекций)}} | ||
+ | |||
+ | __TOC__ | ||
'''Начало выполнения задания''': 9 марта 2012 | '''Начало выполнения задания''': 9 марта 2012 | ||
Строка 169: | Строка 169: | ||
!''Генерация траектории объекта в двухмерном пространстве'' | !''Генерация траектории объекта в двухмерном пространстве'' | ||
|- | |- | ||
- | |X = | + | |X = trajectory_generate(N) |
|- | |- | ||
|ВХОД | |ВХОД | ||
Строка 266: | Строка 266: | ||
=== Рекомендации по выполнению задания === | === Рекомендации по выполнению задания === | ||
- | + | * Простейшим способом генерации траектории объекта является генерация по скорости и ускорению, где ускорение иногда меняет величину и направление; | |
- | * Простейшим способом генерации траектории объекта является генерация по скорости и ускорению, где ускорение иногда меняет величину и направление | + | |
* Один из вариантов тестирования реализованных алгоритмов на основе ЛДС следующий: | * Один из вариантов тестирования реализованных алгоритмов на основе ЛДС следующий: | ||
- | ** Сгенерировать траекторию движения объекта | + | ** Сгенерировать траекторию движения объекта; |
- | ** Добавить к траектории случайный нормальный шум | + | ** Добавить к траектории случайный нормальный шум; |
- | ** Отфильтровать зашумленную траекторию с помощью фильтра Калмана; убедиться, что отфильтрованный сигнал ближе к истинной траектории, чем входной зашумленный сигнал | + | ** Отфильтровать зашумленную траекторию с помощью фильтра Калмана; убедиться, что отфильтрованный сигнал ближе к истинной траектории, чем входной зашумленный сигнал; |
- | + | * При тестировании генерации из модели ЛДС рекомендуется эксперимент с двухмерным сигналом, чтобы убедиться в корректности задаваемых корреляций. | |
- | * При тестировании генерации из модели ЛДС рекомендуется эксперимент с двухмерным сигналом, чтобы убедиться в корректности задаваемых корреляций | + | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
=== Оформление задания === | === Оформление задания === | ||
Строка 289: | Строка 283: | ||
*LDS_train.m | *LDS_train.m | ||
*trajectory_generate.m | *trajectory_generate.m | ||
+ | *EKF_generate.m | ||
+ | *EKF_filter.m | ||
*Набор вспомогательных файлов при необходимости | *Набор вспомогательных файлов при необходимости | ||
[[Категория:Учебные курсы]] | [[Категория:Учебные курсы]] | ||
[[Категория:Байесовские методы]] | [[Категория:Байесовские методы]] |
Версия 11:57, 8 марта 2012
Внимание! Страница задания находится в стадии формирования. Убедительная просьба не приступать к выполнению задания до тех пор, пока это предупреждение не будет удалено. |
Содержание |
Начало выполнения задания: 9 марта 2012
Срок сдачи: 21 марта 2012, 23:59
Среда реализации задания – MATLAB. Неэффективная реализация кода может негативно отразиться на оценке.
Формулировка задания
Рассматривается линейная динамическая система (ЛДС), в которой полное правдоподобие задается как:
Все переменные модели являются непрерывными, т.е. . Параметры модели .
Данную ЛДС нужно протестировать на модельной задаче сопровождения (трекинга) объекта в пространстве.
Рассматривается также нелинейная динамическая система с нормальным шумом, в которой вероятности переходов задаются как:
Здесь и — известные вектор-функции.
Для этой системы нужно реализовать расширенный фильтр Калмана и протестировать его работу на модельных данных.
Для выполнения задания необходимо:
- Реализовать алгоритм генерации выборки из вероятностной модели ЛДС и нелинейной ДС;
- Реализовать алгоритм онлайн фильтрации сигнала с помощью фильтра Калмана и с помощью расширенного фильтра Калмана;
- Реализовать обучение параметров ЛДС с учителем. При этом часть параметров ЛДС может быть задана пользователем;
- Реализовать алгоритм генерации траектории движения абстрактного объекта в двухмерном пространстве. Способ генерации такой траектории отдается на выбор студента;
- Протестировать реализованные алгоритмы на модельных данных;
- Написать отчет в формате PDF с описанием всех проведенных исследований. Данный отчет должен, в частности, включать в себя графики фильтрации сгенерированных траекторий.
Спецификация реализуемых функций
Генерация выборки для ЛДС | |||||||
---|---|---|---|---|---|---|---|
[X, T] = LDS_generate(N, A, C, G, S, mu0, V0) | |||||||
ВХОД | |||||||
| |||||||
ВЫХОД | |||||||
|
Обратите внимание: в процедуре LDS_generate параметры D и d определяются неявно по размеру соответствующих элементов.
Фильтр Калмана для ЛДС | |||||||
---|---|---|---|---|---|---|---|
[M, V] = LDS_filter(X, A, C, G, S, mu0, V0) | |||||||
ВХОД | |||||||
| |||||||
ВЫХОД | |||||||
|
Обучение с учителем для ЛДС | |||||||
---|---|---|---|---|---|---|---|
[A, C, G, S] = LDS_train(X, T, ParameterName1, ParameterValue1, ParameterName2, ParameterValue2, ...) | |||||||
ВХОД | |||||||
| |||||||
ВЫХОД | |||||||
|
Генерация траектории объекта в двухмерном пространстве | |
---|---|
X = trajectory_generate(N) | |
ВХОД | |
| |
ВЫХОД | |
|
Генерация выборки для нелинейной динамической системы | |||||||
---|---|---|---|---|---|---|---|
[X, T] = EKF_generate(N, func_horiz, func_vert, G, S, mu0, V0) | |||||||
ВХОД | |||||||
| |||||||
ВЫХОД | |||||||
|
Обратите внимание: в процедуре EKF_generate параметры D и d определяются неявно по размеру соответствующих элементов.
Расширенный фильтр Калмана для нелинейной динамической системы | |||||||
---|---|---|---|---|---|---|---|
[M, V] = EKF_filter(X, func_horiz, func_vert, G, S, mu0, V0) | |||||||
ВХОД | |||||||
| |||||||
ВЫХОД | |||||||
|
Рекомендации по выполнению задания
- Простейшим способом генерации траектории объекта является генерация по скорости и ускорению, где ускорение иногда меняет величину и направление;
- Один из вариантов тестирования реализованных алгоритмов на основе ЛДС следующий:
- Сгенерировать траекторию движения объекта;
- Добавить к траектории случайный нормальный шум;
- Отфильтровать зашумленную траекторию с помощью фильтра Калмана; убедиться, что отфильтрованный сигнал ближе к истинной траектории, чем входной зашумленный сигнал;
- При тестировании генерации из модели ЛДС рекомендуется эксперимент с двухмерным сигналом, чтобы убедиться в корректности задаваемых корреляций.
Оформление задания
Выполненный вариант задания необходимо прислать письмом по адресу bayesml@gmail.com с темой «Задание 2. ФИО». Убедительная просьба присылать выполненное задание только один раз с окончательным вариантом. Новые версии будут рассматриваться только в самом крайнем случае. Также убедительная просьба строго придерживаться заданной выше спецификации реализуемых функций. Очень трудно проверять большое количество заданий, если у каждого будет свой формат реализации.
Письмо должно содержать:
- PDF-файл с описанием проведенных исследований
- LDS_generate.m
- LDS_filter.m
- LDS_train.m
- trajectory_generate.m
- EKF_generate.m
- EKF_filter.m
- Набор вспомогательных файлов при необходимости