Справочная информация: Я только начал изучать скрытые марковские модели (HMM). Я пытаюсь предсказать маршрут водителя с помощью HMM, и у меня есть 22 набора данных GPS, которые соответствуют 22 маршрутам, все из которых имеют одинаковую начальную и конечную точку. Большинство маршрутов отличаются от других, и некоторые из них одинаковы. Пытаясь создать модель HMM, я реализовал ориентированный граф на C ++, используя список смежности и динамические массивы. Этот ориентированный граф имеет узлы, которые представляют пересечения дорог, и направленные ребра / связи, которые представляют дороги, пройденные в одном направлении. По сути, я пытаюсь предсказать следующую ссылку, по которой драйвер будет go давать текущую ссылку. Это все сделано в автономном режиме.
Примечание о моем 5-кортеже HMM: скрытое состояние - это следующая ссылка, наблюдение - это текущая ссылка, на которой включен драйвер, функция наблюдения определена c (что означает, что сопоставление карты является идеальным), начальное состояние - известно, что действия являются нулевыми (не определены явно), и функция перехода, T = T (link_i, link_j) = p (link_i | link_j), где link_j - текущая ссылка, а link_i - следующая возможная ссылка
ниже Я нарисовал ориентированный граф, который содержит 22 маршрута. Все маршруты вождения начинаются в правом верхнем углу, и вождение может быть только go влево или вниз (отсюда и прямые ссылки), в конечном итоге достигая пункта назначения.
На другом изображении я вычислил вероятности перехода используя 22 маршрута. Как вы можете видеть, каждое состояние (ребро / ссылка) соединяется не более чем с двумя другими состояниями. Так, например, я только что отметил, сколько маршрутов go из состояния A в следующее состояние B и сколько маршрутов go из состояния A в состояние C. И вероятности перехода равны (# маршрутов в состоянии B) / (# маршрутов в состоянии A) и (# маршрутов в состоянии C) / (# маршрутов в состоянии A) соответственно. И я сделал то же самое для остальных ссылок.
Теперь мои вопросы: это «нормальный» способ вычисления вероятностей перехода? Это правильно? Кажется, это просто очень просто c Кроме того, я запутался в том, что делать дальше после вычисления вероятностей перехода, используя некоторые обучающие данные. Что мне делать со всеми этими вероятностями перехода? Я ввел данные тестирования сейчас? По сути, моя цель - создать систему навигации по маршруту, которая не требует внешнего вмешательства водителя.
![Graph containing 22 driving routes](https://i.stack.imgur.com/2NZmM.jpg)
![Hidden Markov model with transition probabilities](https://i.stack.imgur.com/RYVCV.jpg)