• No se han encontrado resultados

Aplicación del algoritmo de Viterbi sobre modelos ocultos de Markov para la estimación de tráfico vehicular

N/A
N/A
Protected

Academic year: 2020

Share "Aplicación del algoritmo de Viterbi sobre modelos ocultos de Markov para la estimación de tráfico vehicular"

Copied!
102
0
0

Texto completo

(1)

APLICACIÓN DELALGORITMO DEVITERBI SOBREMODELOSOCULTOS DEMARKOV PARA LA ESTIMACIÓN DE TRÁFICO VEHICULAR

SR. ALEJANDRO JULIÁNPÉREZ

TRABAJOFINAL - INGENIERÍA DE SISTEMAS FACULTAD DECIENCIAS EXACTAS

UNIVERSIDAD NACIONAL DEL CENTRO DE LAPROVINCIA DE BUENOS AIRES

Director: DR. ALDORUBIALES Codirector: DR. PABLOLOTITO

(2)
(3)

R

ESUMEN

(4)
(5)

D

EDICATORIAS Y RECONOCIMIENTOS

Dedico especialmente a mi hermano Pablo y mis viejos, Silvia y Guillermo. Por ellos soy lo que soy y les estoy eternamente agradecidos.

A mi familia que siempre estuvo presente, los quiero a todos. Lau, gracias por hacer todo tan hermoso.

A mis amigos. Es un gusto haberme cruzado con ustedes, hermanos de la vida. Gracias por tantas risas, momentos y lugares compartidos.

A mis directores, Aldo y Pablo, excelentes profesionales, gracias a ellos por mostrarme el intrigante mundo de la ciencia.

A todos los miembros del Instituto Pladema, siempre han sabido destacarse en muchas cosas pero, sobre todo, lo hacen en lo humano.

(6)
(7)

Í

NDICE DE

C

ONTENIDOS

Página

Índice de Tablas ix

Índice de Figuras xi

Índice de Códigos xv

1 Introducción 1

1.1 Motivación . . . 1

1.2 Trabajos relacionados . . . 3

1.3 Sistemas de comunicación inalámbricos . . . 4

1.4 Objetivo . . . 7

1.5 Organización del documento . . . 8

2 Marco Teórico 11 2.1 Cadenas de Markov . . . 11

2.1.1 Reseña . . . 11

2.1.2 Definición . . . 12

2.1.3 Propiedad de Markov . . . 12

2.1.4 Aplicación . . . 13

2.2 Modelos Ocultos de Markov . . . 14

2.2.1 Reseña . . . 14

2.2.2 Definición . . . 14

2.2.3 Problemas en HMM . . . 17

2.2.4 Aplicación . . . 17

2.3 Algoritmo de Viterbi . . . 18

2.3.1 Reseña . . . 19

2.3.2 Algoritmo . . . 19

2.3.3 Ejemplo: El casino deshonesto . . . 20

(8)

ÍNDICE DE CONTENIDOS

3.1.1 Solución trivial . . . 24

3.1.2 Algoritmo básico de estimación de trayectoria . . . 24

3.1.3 Modelos ocultos: Segmentos de calles . . . 25

3.1.4 Probabilidades de transición . . . 26

3.1.5 Probabilidades de emisión . . . 26

3.1.5.1 Método 1 . . . 26

3.1.5.2 Método 2 . . . 27

3.1.6 Algoritmo de Viterbi . . . 27

3.1.6.1 Ejemplo HMM . . . 28

3.1.6.2 Flujo del algoritmo . . . 29

3.2 Estimación a partir de dispositivos inalámbricos . . . 29

4 Diseño e implementación 33 4.1 Diseño preliminar de la arquitectura . . . 34

4.1.1 Arquitectura propuesta para un sistema de estimación de tráfico vehicular 35 4.2 Simulación de tráfico . . . 35

4.2.1 Modelos de simulación de tráfico . . . 36

4.2.2 SUMO . . . 37

4.2.3 SumoConvert . . . 39

4.3 Paquete de utilidades para SUMO-SumoConvert . . . 40

4.3.1 Simulación GPS . . . 40

4.3.2 Simulación Bluetooth . . . 41

4.4 Módulo Viterbi . . . 46

4.4.1 Modelado de la red . . . 46

4.4.2 Almacenamiento de datos . . . 47

4.4.3 Segmentación de la red . . . 49

4.4.4 Aplicación del algoritmo de Viterbi . . . 50

4.4.4.1 Procesamiento de señales . . . 53

4.4.5 Probabilidades de emisión GPS . . . 54

4.4.6 Probabilidades de emisión Bluetooth . . . 55

4.4.7 Función de densidad de probabilidades de observación . . . 56

4.4.8 Extensibilidad del módulo de estimación . . . 60

4.4.9 Aritmética de punto flotante . . . 61

4.4.9.1 Transformación logarítmica . . . 62

4.5 Visualizador . . . 62

4.5.1 Procesador GeoJSON . . . 66

4.6 Módulo Monitores.WS . . . 67

5 Resultados 69

(9)

ÍNDICE DE CONTENIDOS

5.1 Estimación GPS . . . 71

5.2 Estimación Bluetooth . . . 74

6 Conclusiones y trabajos futuros 77 6.1 Trabajos Futuros . . . 77

6.1.1 Validación . . . 77

6.1.2 Características funcionales . . . 78

6.1.3 Rendimiento . . . 78

A Apéndice 79 A.1 Opdfs basadas en Friis . . . 79

(10)
(11)

Í

NDICE DE

T

ABLAS

TABLAS Página

2.1 Resumen del cálculo de P(Q,O) para las combinaciones posibles dei1,i2,i3. . . 20

2.2 Primer paso del algoritmo de Viterbi.δ1(i) con observación O1=3 . . . 21

2.3 Primer iteración del paso 2.δ2(i) con observación O2=6 . . . 21

2.4 ψ2(i) . . . 21

2.5 Segunda iteración del paso 2.δ3(i) con observación O3=4 . . . 21

2.6 ψ3(i) . . . 21

2.7 Búsqueda recursiva del camino que llevó a la secuencia de estados de prob. máxima 22 4.1 Ejemplo de simulación: detección Bluetooth . . . 44

5.1 Resultados de tiempos y distancias en la simulación de un vehículo, sobre el recorrido R1, aplicando el Método 1 . . . 73

5.2 Cuadro comparativo del error medio en la estimación del Tiempo de Viaje (TT) obtenido en simulaciones para 10 vehículos, en los recorridos 1 y 2, estimadas a partir de los métodos 1 y 2. . . 74

(12)
(13)

Í

NDICE DE

F

IGURAS

FIGURAS Página

1.1 Ranking de ciudades con peor trafico en el mundo “Commuter Pain Index” (IBM 2011) 2

1.2 Detectores infrarojos . . . 3

1.3 Bucles de inducción . . . 3

1.4 Las cajas “C3P0” y “R2D2”, son construidas con una Raspberry Pi, una cámara de 5 MP , un dongle Wi-Fi para armado de la red ad-hoc y un dispositivo Ubertooth One para la captura de señales. . . 4

1.5 Captura obtenida de la caja “R2D2” detectando paquetes de un mismo dispositivo (misma LAP). . . 5

1.6 Esquema general de un sistema de comunicaciones . . . 5

1.7 Esquema de radiación de una antena isotrópica y una antena direccional . . . 6

1.8 Interpretación física de los fenómenos difracción y reflexión. Imagen obtenida de (Aragón, 2008) . . . 7

1.9 Comparación entre la ecuación de transmisión de Friis para un dispositivo transmisor Bluetooth Clase 2 con antena isotrópica dirigido a un receptor de antena 3 dBi, y una aproximación exponencial a partir de datos capturados por experimentación. . . 8

2.1 Secuencia de variables aleatorias . . . 12

2.2 Representación gráfica de un sistema de dos estados: dado justo y dado cargado . . . 13

2.3 Secuencia de variables aleatorias con emisión de símbolosot=Ok . . . 16

2.4 Modelo Oculto de Markov del casino deshonesto . . . 16

3.1 Modelo oculto de Markov de dos calles intersectadas. Los segmentos son sub-divididos para aumentar la granuralidad . . . 25

3.2 Función de densidad de probabilidades bidimensional. . . 28

3.3 Ejemplo de HMM . . . 28

3.4 Diagrama de funcionamiento del algoritmo de Viterbi . . . 29

3.5 Ejemplo para diseño del modelo de emisión de probabilidades . . . 30

3.6 Funciones de densidad de probabilidad de observación Bluetooth . . . 31

(14)

ÍNDICE DEFIGURAS

4.2 Vista de módulos principales del sistema . . . 35

4.3 Simulación microscópica en SUMO (izq). Simulación macroscópica en AIMSUN . . . 37

4.4 Construcción de una red SUMO . . . 38

4.5 Definición de la demanda en SUMO . . . 38

4.6 Extensión de JOSM: ’SumoConvert’ . . . 40

4.7 Vista de módulos - SumoUtils . . . 41

4.8 Diseño de pruebas Bluetooth . . . 42

4.9 Imágenes del registro videográfico del experimento a distancias de 5 y 15 metros, respectivamente. Capturado desde la cámara presente en la caja “Sensor”. . . 42

4.10 Conjunto de datos recolectados via sensor Bluetooth . . . 43

4.11 Señal media y desvío estándar de las muestras experimentales según la distancia al monitor . . . 44

4.12 Ejemplo de simulación de un vehículo atravesando cuatro monitores, por ambos métodos. . . 45

4.13 Detecciones de las pruebas de velocidad . . . 46

4.14 Vista de paquetes del módulo de estimación “Viterbi” . . . 47

4.15 Diagrama de Base de Datos correspondiente a la estructura de la red. Estas estruc-turas permanecen en el servidor PostgreSQL y dan soporte a los segmentos más cortos. . . 47

4.16 Vista de módulos para acceso a datos a través de Hibernate . . . 48

4.17 Esquema del cálculo de los vértices de un segmento . . . 50

4.18 Construcción de segmentosSegmentoViterbisobre la zona céntrica de la ciudad de Tandil. Dada una velocidad máximaVM A X=80 Km/h, la longitud de un segmento es L=22.22 m. La cantidad total de divisiones asciende a 2.624 segmentos. . . 50

4.19 Clases e interfaces para la representación del Hmm en Jahmm . . . 52

4.20 Diagrama de clases que extiendenObservation . . . 53

4.21 Captura de pantalla del panel de ajustes de la plataforma. . . 53

4.22 Implementación de los métodos de estimación GPS como extensiones de Jahmm . . . 54

4.23 Extensión de JahmmObservationEventVectorpara observaciones Bluetooth . . . 55

4.24 Extensión de Jahmm: Función de densidad de probabilidadesOpdf<ObservationEventVector> para observaciones Bluetooth . . . 56

4.25 Construcción de PDF por histograma comparado a la estimación Kernel. Gráfico producido en Matlab con las funciones histo gram(values,‘Normalization’,‘pdf ’) y ksd ensit y(values,0:70), respectivamente. . . 58

4.26 Estimación Kernel completa para el rango de señales mayores a -60 dB, junto con la estimación Kernel de cada valor, escaladas para la imagen. . . 58

(15)

ÍNDICE DEFIGURAS

4.27 Arriba: Clasificación del dataset procesado con eliminación del 2 % de outliers (por

cada grupo de distancia) y toma de valores mínimo, promedio y máximo en ventanas

de 3 lecturas. Abajo: Funciones de densidad de probabilidades de observación para

el mismo dataset, incluyendo todas las observaciones (All), el promedio (Average) y

máximo (Max) de cada ventana. . . 59

4.28 Diagrama de secuencia de la construcción de OPDFKernels. . . 60

4.29 Clases de los paquetesorg.tte.app.beansyorg.tte.logicyorg.tte.db. . . 61

4.30 Vista de módulos de una aplicación JavaServer Faces. . . 63

4.31 Captura de pantalla del estimador GPS . . . 65

4.32 Resultado gráfico de la codificación de una secuencia de puntos de ejemplo. . . 67

4.33 Captura de imagen del sitio Web de Monitores.WS . . . 68

5.1 Red de calles para las pruebas de la plataforma. . . 70

5.2 División de la red en segmentos (SegmentoViterbi). . . 70

5.3 Recorridos definidos R1 y R2, respectivamente.. . . 70

5.4 Recorrido simulado para 1 vehículo en el recorrido R1, con probabilidades de obse-vación: pobs=1 (A) y pobs=0.125 (B); a partir de simulaciones con pobs=0.125 se visualizan perturbaciones de:P F={1, 5, 10} (C, D y E, respectivamente) . . . 71

5.5 Estimación de la velocidad media general para las variaciones de parámetros pobs y P Fsobre el recorrido R1 . . . 73

5.6 Estimación del Tiempo de Viaje para 10, 100 y 200 vehículos en el recorrido R2, con pobs=0.125 y P F=10 . . . 74

5.7 Estimación del Tiempo de Viaje vía detección Bluetooth para 10 vehículos en el recorrido R1 y R2, con diferentes combinaciones depobs . . . 75

5.8 Estimación del Tiempo de Viaje vía detección Bluetooth para 1 y 10 vehículos en el recorrido R1 y R2, con diferentes combinaciones depobs . . . 75

(16)
(17)

Í

NDICE DE

C

ÓDIGOS

4.1 Perturbación de detecciones Bluetooth . . . 45

4.2 Mapeo objeto-relacional de la entidad Node en Hibernate . . . 48

4.3 Mapeo objeto-relacional de la entidad Edge en Hibernate . . . 49

4.4 Configuración de la visualización de mapas . . . 64

4.5 Carga de una representación GeoJSON en Leaflet . . . 65

4.6 Código para la creación de una capa . . . 66

(18)
(19)

C

A

P

Í

T

U

L

O

1

I

NTRODUCCIÓN

E

l tráfico urbano es uno de los principales retos a los que se enfrentan las ciudades. El mundo se urbaniza rápidamente y la densidad de población aumenta. Este crecimiento

conlleva una expansión de la demanda y ha llevado a priorizar la aplicación de estrategias

que permitan disminuir la congestión global. Estas técnicas se ubican en tres áreas principales:

gobierno, optimización de la red de transporte y servicios de transporte integrados, en este último

se ubican los sistemas de información al viajero que proveen información en tiempo real.

Sin embargo, dentro de las áreas mencionadas, no es posible llevar a cabo estrategias si no

se conocen las variables que describen el estado real del sistema: densidad de ocupación, flujo

vehicular y velocidades medias. Para obtener estos datos existen productos comerciales, como

Mistic de Swarco y CitySolver de Bitcarrier, pero estos requieren elevados costos de instalación y

mantenimiento. Para las autoridades, es indispensable contar con información del estado de la

red ya que permite tomar decisiones fundamentadas para mejorar las condiciones de tráfico y así

mejorar la calidad de vida de los habitantes.

1.1

Motivación

En lo que refiere a los sistemas de transporte, la mayoría de los líderes gubernamentales

coin-ciden en que es necesario invertir en infraestructuras. Sin embargo, las restricciones impuestas

por la limitación presupuestaria obligan a gestionar más eficazmente la demanda y el suministro

mediante el despliegue de sistemas de transporte inteligente (ITS) [22]. El crecimiento del parque

automotor a nivel mundial, también registrado en Argentina[13], repercute directamente en el

aumento del nivel de congestión vehicular[14]. Según un estudio realizado mundialmente, en

Buenos Aires la cantidad media de paradas-arranques realizadas por vehículo por año asciende a

(20)

CAPÍTULO 1. INTRODUCCIÓN

semáforos, etc. Asimismo, una encuesta realizada por IBM, conocida como “Commuter Pain Index”

(índice de dolor del viajero), sitúa a Buenos Aires entre las ciudades con peor tráfico a nivel

mundial, por encima de mega-ciudades como París y Los Ángeles (1.1). Aquí se observaron otros

aspectos además de las paradas-arranques; al cabo de 1 año se volvió a encuestar a los viajantes

y en el caso de la ciudad de Buenos Aires, un 41 % cambió al transporte público por los aumentos

en los costos económicos. No menos preocupante es la cantidad de viajes cancelados reportados

por los conductores, en donde un 43 % de ellos corresponden a viajes de trabajo. Finalmente cabe

destacar que el 44 % manifestó haber sufrido algún trastorno de salud (principalmente estrés) a

causa del tráfico.

En cuanto a los costos que implica la congestión, la operación de los vehículos que circulan

en las vías de ciudades de más de 100.000 habitantes consume alrededor del 3.5 % del PBI de

América Latina y el Caribe[10]. Por ende, es notable la necesidad de contar con herramientas que

permitan a las autoridades aplicar políticas para mejorar las condiciones del transporte.

Figura 1.1: Ranking de ciudades con peor trafico en el mundo “Commuter Pain Index” (IBM 2011)

Resolver estos problemas depende de planificaciones urbanas que aseguren un sistema

operacional y económicamente eficiente. Para planificar, es indispensable contar con registros

históricos del estado de la red a lo largo del tiempo para la toma de decisiones. La actividad

vehicular puede ser detectada a partir de distintos tipos de fuentes, tradicionalmente, por cámaras

de video, detectores infrarrojos (Figura 1.2) y bucles de inducción (óinduction loops, Figura 1.3).

Si bien se trata de métodos precisos, son costosos y requieren la instalación del equipamiento

sobre los caminos, dificultando el despliegue sobre varios puntos de una ciudad.

Por otro lado, la incorporación de dispositivos de tecnología inalámbrica Wi-Fi y Bluetooth

en automoviles particulares, lleva a nuevas formas de obtener datos de la movilidad urbana

realizando capturas de los vehículos en tránsito, permitiendo inferir su ubicación. Este mecanismo

de recolección de datos se considera no invasivo ya que no es necesario alterar la vía para su

instalación, como en el caso de los detectores por inducción magnética. Esto lo convierte en un

(21)

1.2. TRABAJOS RELACIONADOS

método de bajo costo y fácil instalación, con posibilidad de ser extendido a múltiples aplicaciones,

como por ejemplo: posicionamiento en interiores basado en señales Wi-Fi[23] y análisis de uso de

líneas de autobuses en base a seguimiento de usuarios vía Wi-Fi y Bluetooth[16].

Figura 1.2: Detectores infrarojos Figura 1.3: Bucles de inducción

La naturaleza estocástica de las transmisiones recolectadas presenta un desafío significativo

respecto a su interpretación. Trabajos previos[25, 39, 41] demuestran que es posible inferir

trayectorias a partir de observaciones escasas y ruidosas aplicando cadenas ocultas de Markov y

su decodificación a través del algoritmo de Viterbi.

En el siguiente trabajo se utiliza el algoritmo de “Viterbi” sobre modelos ocultos de Markov

aplicado a la estimación de estados y tiempos de viaje en redes de tráfico a partir de señales de

GPS y Bluetooth. El método a desarrollar está basado en la estimación de la velocidad media

espacial a partir de la trayectoria de los vehículos.

1.2

Trabajos relacionados

En el marco del proyecto “Estimación del estado del tráfico vehicular a través de datos

obtenidos de dispositivos móviles”, del programa “Universidad y Transporte Argentino”, se

desarrolló un prototipo para censar y realizar seguimiento de vehículos. La solución cuenta con

tres técnicas de captura de datos: localización geográfica a partir de lecturas de GPS, registro

de dispositivos Bluetooth cercanos a un detector y conteo vehicular a través de videocámaras.

El prototipo permite el envío de las observaciones obtenidas a un servidor central para su

procesamiento.

Las técnicas mencionadas anteriormente se implementan en dos módulos separados: una

aplicación Android para dispositivos con sensor GPS, y dos cajas sensores denominadas “C3P0” y

“R2D2” (Figura 1.4). Estas cajas realizan las mismas funciones: por un lado, realizan un conteo

de vehículos que circulan por un determinado punto de la red a partir del procesamiento de video,

y por otro, registran lecturas de la señal de radiofrecuencia emitida por dispositivos Bluetooth

activos. En las cajas se utilizan dispositivos Ubertooth One[31], estos son dispositivos USB

(22)

CAPÍTULO 1. INTRODUCCIÓN

permite monitorear transmisiones Bluetooth y, a partir del software que acompaña al dispositivo,

se registran características de los paquetes capturados, como identificación del dispositivo de

origen, nivel de señal de la transmisión, marcas temporales, etc. Por ejemplo en la Figura 1.5

se muestra en funcionamiento la herramienta de captura, en donde se observa un vehículo y su

señal interceptada.

Figura 1.4: Las cajas “C3P0” y “R2D2”, son construidas con una Raspberry Pi, una cámara de 5 MP , un dongle Wi-Fi para armado de la red ad-hoc y un dispositivo Ubertooth One para la captura de señales.

Las cajas pueden ser accedidas a través de un sitio web en una red ad-hoc, para monitorizar

su funcionamiento y configurar los parámetros de recolección y reporte de datos. Cabe mencionar

que el prototipo fue construido sobre una caja estanca para poder ser ubicado a la intemperie.

Como se mencionó, esta metodología considera métodos no invasivos, algo que comparte

con algunos productos comerciales. Se utiliza tecnología Bluetooth porque permite identificar

unívocamente un vehículo. Además, es mas probable encontrar vehículos con Bluetooth integrado

que una gran de usuarios utilizando una aplicación determinada.

Por último, se aclara que en el presente trabajo se utilizan desarrollos realizados en otro

proyecto final de grado dentro del área de tráfico vehicular, en donde se desarrolló un software

que conecta dos herramientas para la simulación de tráfico: un editor de mapas de Open Street

Map (JOSM) y un simulador de tráfico microscópico (SUMO).

1.3

Sistemas de comunicación inalámbricos

Aquí no se pretende ser extenso sobre los fenómenos físicos que dan lugar al comportamiento

de los canales inalámbricos. En su lugar, se mencionan conceptos que hacen a la problemática

del uso de estos dispositivos como fuente de información. Si el lector lo requiere, podrá consultar

mayores detalles en [3].

La arquitectura genérica de un sistemas de comunicaciones, ilustrada por la Figura 1.6,

fue presentada originalmente por Claude Shannon[36]. Ya sea para sistemas alámbricos o

inalámbricos, uncanales el medio sobre el cual se transmite la señal generada por un transmisor

destinada a un receptor.

(23)

1.3. SISTEMAS DE COMUNICACIÓN INALÁMBRICOS

Figura 1.5: Captura obtenida de la caja “R2D2” detectando paquetes de un mismo dispositivo (misma LAP).

Figura 1.6: Esquema general de un sistema de comunicaciones

El recurso básico utilizado en las comunicaciones inalámbricas es el espectro electromagnético.

En general, para comunicaciones se utilizan frecuencias entre 3 kHz y 300 GHz, que

corres-ponden a longitudes de onda en el espacio abierto desde 100 km a 1 mm. A mayor frecuencia,

mayor es el ancho de banda disponible. Los sistemas Bluetooth funcionan en la banda ISM

(Industrial, Científica y Médica) de los 2.4 GHz, liberada por la UIT (Unidad Internacional de

Telecomunicaciones).

El diseño de una antena establece algunos de los efectos y características que tendrá la señal

transmitida. El propósito es asegurar mejor eficiencia en la transmisión, con antenas que irradian

mayor energía en dirección al receptor. Para representar la distribución tridimensional de energía

radiada se utiliza el patrón de radiación. Este define la variación de la potencia irradiada por

una antena como función de la posición relativa a la misma. El ejemplo más simple es el de una

(24)

CAPÍTULO 1. INTRODUCCIÓN

Figura 1.7: Esquema de radiación de una antena isotrópica y una antena direccional

Desde un punto de vista de un único transmisor, la atenuación de señal es el factor limitante

del rango de transmisión efectivo[35]. El desarrollo de modelos para propagación de señales es

realizado generalmente usando valores estadísticos de regiones o ciudades en particular. Los

modelos de atenuación, conocidos como “Path Loss”, permiten calcular la atenuación de señal

o la potencia de señal recibida para una distancia dada entre emisor y receptor. Además de la

atenuación debida a la propagación sobre el aire, existen otros factores que afectan la transmisión:

• Reflexión: Las ondas electromagnéticas son reflejadas por varias superficies. En el caso de

comunicaciones a gran distancia, el hielo es la superficie que mejor refleja la señal, seguido

por las acumulaciones de agua y los terrenos húmedos. En el caso opuesto, las superficies

áridas son las que menos reflejan. A corta distancia, la reflexión se da en edificios, en

especial aquellos con superficies metálicas. Como resultado se tienen señales viajando a

través de múltiples caminos.

• Oscurecimiento(Shadowing): Algunos objetos reflejan las ondas en dirección opuesta o

atenúan fuertemente la señal de modo que sólo permanecen señales débiles detrás de estos

objetos.

• Difracción: La onda se dobla sobre bordes pronunciados de un objeto. Así, la onda es capaz

de propagarse mas allá de los objetos que producenshadowing(Figura 1.8).

• Dispersión(Scattering): Al contrario de la reflexión que ocurre en superficies relativamente

amplias, la dispersión se da en pequeñas superficies en comparación a la longitud de onda.

Superficies ásperas como plantas y árboles dispersan la onda en múltiples direcciones.

Un modelo comúnmente utilizado (no estadístico) que permite calcular la potencia de señal

recibida está dado por la fórmula de transmisión definida por H. T. Friis, en donde sólo se

considera la atenuación de la señal sobre el aire, descartando componentes fuera de la línea

de visión (visibilidad directa entre antenas). Entonces, dadas dos antenas (asumiendo antenas

(25)

1.4. OBJETIVO

Figura 1.8: Interpretación física de los fenómenos difracción y refle-xión. Imagen obtenida de (Aragón, 2008)

isotrópicas), la relación entre la potencia de señal en la antena receptoraPry la potencia sometida

a la antena transmisoraPtesta dada por:

Pr Pt =

GtGr

µ λ

4πd

¶2 (1.1)

siendoGtyGrlas ganancias de las antenas transmisora y receptora, d la distancia entre las

antenas yλla longitud de onda. En la ecuación 1.1 puede notarse que la potencia recibidaPr

depende principalmente de la distanciadentre el transmisor y el receptor.

Al operar en 2.4 Ghz, en condiciones ideales (espacio libre ofree space), la atenuación (path

loss) sobre una distancia de 100 m es de 80.2 dB para un dispositivo Bluetooth Clase 1 (100

mW de potencia transmitida) y de 76.23 dB para un dispositivo Bluetooth Clase 2 (2.5 mW). En

escenarios reales se producen mayores atenuaciones por los efectos descriptos anteriormente. En

cuanto a la capacidad de detección de vehículos, se ha demostrado estadísticamente[5] que si el

rango efectivo de detección es de 200 m (100 m en cada dirección), la probabilidad de hacer dos

detecciones de un vehículo asciende a 94 %. Sin embargo, a medida que disminuye el rango efectivo

de un dispositivo sensor, la probabilidad de hacer una detección se verá altamente influenciada

por la velocidad del vehículo, resultando en mayor cantidad de vehículos no detectados.

En este trabajo se realizaron pruebas de campo con un vehículo con tecnología Bluetooth para

caracterizar experimentalmente la pérdida de señal. La Figura 1.9 muestra la comparación entre

una aproximación exponencial de los datos capturados y la pérdida de señal según el modelo

de Friis. Naturalmente, la atenuación experimentada es mayor al modelo teórico debido a la

ubicación del dispositivo Bluetooth en el interior del vehículo.

1.4

Objetivo

El objetivo es desarrollar un método de estimación de la red de tráfico a partir de información

(26)

CAPÍTULO 1. INTRODUCCIÓN

Figura 1.9: Comparación entre la ecuación de transmisión de Friis para un dispositivo transmisor Bluetooth Clase 2 con antena iso-trópica dirigido a un receptor de antena 3 dBi, y una aproximación exponencial a partir de datos capturados por experimentación.

la red, los cuales pueden tener una aplicación específica para informar su posición (modo activo),

o se puede considerar el registro de su posición a través de la detección de las señales Bluetooth

(modo pasivo). Además, el método permitirá conocer el tiempo de viaje promedio dentro de la

red y, para evaluar el sistema con un método de simulación, se deberá caracterizar la señal de

radiofrecuencia de los dispositivos inalámbricos aplicando métodos de estimación de densidad

de probabilidades, lo cual será detallado en el apartado 4.4.7. Finalmente, debido al alto costo

que involucra plantear toda esta metodología en un caso real, se construirá una plataforma de

simulación que permita evaluar los algoritmos desarrollados.

1.5

Organización del documento

El trabajo se estructura en 6 capítulos. En el capítulo 1 se presentó una breve introducción a

la problemática en relación al tráfico vehicular, sus desafíos y un análisis de la situación actual en

el país y el mundo. También se mencionan trabajos relacionados y los objetivos propuestos. En el

capítulo 2, a través de definiciones y ejemplos concretos, se detalla el marco teórico que da lugar

al Algoritmo de Viterbi, basado en Modelos Ocultos de Markov, una pieza fundamental del método

de estimación propuesto. En el capítulo 3, se presentan los aspectos más importantes del método

desarrollado, introduciendo conceptos relacionados a la solución de la problemática utilizando el

Algoritmo de Viterbi (aplicado a tráfico vehicular). En el capítulo 4 se presentan los detalles de

una plataforma para la estimación de tráfico vehicular, profundizando sobre una arquitectura

preliminar preparada para la incorporación de mecanismos de simulación. Además, se detalla

el método utilizado para caracterizar la señal de radiofrecuencia de dispositivos Bluetooth y

(27)

1.5. ORGANIZACIÓN DEL DOCUMENTO

cómo se utilizó para simular y detectar vehículos en viaje. En el capítulo 5 se realiza un análisis

exhaustivo de los resultados de las estimaciones para GPS y Bluetooth, indicando la calidad de

las estimaciones. Finalmente, en el capítulo 6 se hace una reflexión sobre el método desarrollado y

los resultados obtenidos de los datos analizados, mencionando posibles mejoras y trabajos futuros.

En el apéndice se incluyen gráficos y diagramas completos de la arquitectura y los procesos

(28)
(29)

C

A

P

Í

T

U

L

O

2

M

ARCO

T

EÓRICO

A

continuación se introducen los conceptos y características de los modelos de Markov, seguido de la especialización en modelos ocultos, utilizados para modelar una red de

tráfico. Finalmente, se presenta el algoritmo de Viterbi, fundamental para el método

de estimación desarrollado. Los temas abordados son acompañados por ejemplos concretos que

explican la aplicación de los modelos descritos.

2.1

Cadenas de Markov

2.1.1 Reseña

Un proceso o sucesión de eventos que se desarrolla en el tiempo en el cual el resultado en

cualquier etapa contiene algún elemento que depende del azar se denomina proceso aleatorio o

proceso estocástico. Por ejemplo, la sucesión podría ser las condiciones del tiempo en Paraná en

una serie de días consecutivos: el tiempo cambia día a día de una manera que en apariencia es

algo aleatoria. O bien, la sucesión podría consistir en los precios de las acciones que cotizan en la

bolsa en donde otra vez interviene cierto grado de aleatoriedad. Un ejemplo simple de un proceso

estocástico es una sucesión de ensayos de Bernoulli, por ejemplo, una sucesión de lanzamientos

de una moneda. En este caso, el resultado en cualquier etapa es independiente de todos los

resultados previos (esta condición de independencia es parte de la definición de los ensayos de

Bernoulli). Sin embargo, en la mayoría de los procesos estocásticos, cada resultado depende de lo

que sucedió en etapas anteriores del proceso. Por ejemplo, el tiempo en un día determinado no es

aleatorio por completo sino que es afectado en cierto grado por el tiempo de días previos. El precio

de una acción al cierre de cualquier día depende en cierta medida del comportamiento de la bolsa

(30)

CAPÍTULO 2. MARCO TEÓRICO

otros, ocurre cuando el resultado en cada etapa sólo depende del resultado de la etapa anterior y

no de cualquiera de los resultados previos. Tal proceso se denomina proceso de Markov o cadena

de Markov (una cadena de eventos, cada evento ligado al precedente). Estas cadenas reciben su

nombre del matemático ruso Andrei Andreevitch Markov (1856-1922). Como mencionamos antes,

estas cadenas tienen memoria, recuerdan el último evento y eso condiciona las posibilidades de

los eventos futuros. Esto justamente las distingue de una serie de eventos independientes como el

hecho de tirar una moneda. Este tipo de proceso presenta una forma de dependencia simple, pero

muy útil en muchos modelos, entre las variables aleatorias que forman un proceso estocástico. Se

utilizan, por ejemplo, en frameworks para diseñar y resolver problemas de decisión [8], para la

medición de fiabilidad y rendimiento de sistemas de software [20], entre otros.

2.1.2 Definición

Una cadena de Markov es una sucesión de ensayos similares u observaciones en la cual cada

ensayo tiene el mismo número finito de resultados posibles y en donde la probabilidad de cada

resultado para un ensayo dado depende sólo del resultado del ensayo inmediatamente precedente

y no de cualquier resultado previo.

2.1.3 Propiedad de Markov

Dada una secuencia de variables aleatoriasX1,X2,X3, ...,Xn

Figura 2.1: Secuencia de variables aleatorias

tales que el valor deXnes el estado del proceso en el tiempon. Si la distribución de

probabili-dad condicional deXn+1en estados pasados es una función deXn por sí sola, entonces:

P(Xn+1=xn+1|Xn=xn,Xn−1=xn−1, ...,X2=x2,X1=x1)=P(Nn+1=xn+1|Xn=xn)

Donde xi es el estado del proceso en el instante t=i. Esta identidad es la denominada

propiedad de Markov: El estado ent=i+1 sólo depende del estado ent=iy no de la evolución

anterior del sistema.

Si un estado depende de otro además del inmediatamente anterior, este es un proceso de

Markov de un orden mayor a uno. Por ejemplo, un proceso de segundo orden describe un proceso

en el cual el estado depende de los dos estados anteriores. Los procesos de Markov también se les

llama Cadenas de Markov.

(31)

2.1. CADENAS DE MARKOV

Matriz de Transición

Consideremos un proceso de Markov en que el sistema posee N estados posibles, dados por los

números 1, 2, 3, ..., N. Denotemosai ja la probabilidad de que el sistema pase al estado jdespués

de cualquier ensayo en donde su estado era iantes del ensayo. Los númerosai jse denominan

probabilidades de transición y la matriz A=ai j (N×N) se conoce como matriz de transición del

sistema.

Observaciones sobre la Matriz de Transición

1. La sumaai1+ai2+...+aiN=1. Esta suma representa la probabilidad de que el sistema

pase a uno de los estados 1, 2, ..., N dado que empieza en el estadoi. Ya que el sistema ha de

estar en uno de estos N estados, la suma de probabilidades debe ser igual a 1. Esto significa

que los elementos en cualquier columna de la matriz de transición deben sumar 1.

2. Cada elementoai j≥0

Representación gráfica

Figura 2.2: Representación gráfica de un sistema de dos estados: dado justo y dado cargado

A modo de ejemplo, consideremos el siguiente caso: Un casino deshonesto tiene dos dados,

uno justo y otro cargado. El casino alterna entre los dados con cierta frecuencia. En la Figura

2.2 se observa un gráfico de la representación en un grafo de las transiciones con sus respectivos

valores de probabilidad. Los círculos se corresponden con estados y los arcos, los cuales poseen

dirección, son las direcciones de posibles transiciones. Cabe destacar también que debe cumplir

con las observaciones mencionadas anteriormente.

2.1.4 Aplicación

Las cadenas de Markov proporcionan un sistema muy útil para crear e implementar un

proceso de toma de decisiones que permita evaluar posibles escenarios y se utiliza para predecir

con mayor exactitud comportamientos futuros. Estas tienen muchas aplicaciones en el mundo

(32)

CAPÍTULO 2. MARCO TEÓRICO

y un largo etcétera. Algunos ejemplos puntuales de aplicaciones son algoritmos de

posiciona-miento web[4] (en este caso la cadena de Markov puede ser utilizada para hacer predicciones

futuras de navegación para los usuarios individuales); modelos financieros para optimización de

acciones[42]; análisis de juegos como el béisbol; señal y procesamiento de imágenes[9];

reconoci-miento de imágenes[9]; reconocireconoci-mientos de patrones [9]; seguros de vida y diversas aplicaciones

en marketing[12].

2.2

Modelos Ocultos de Markov

2.2.1 Reseña

Un modelo oculto de Markov (o HMM por sus siglas en inglés) es la representación de un

proceso estocástico que consta de dos mecanismos interrelacionados: una cadena de Markov de

primer orden subyacente, con un número finito de estados, y un conjunto de funciones aleatorias,

cada una de las cuales está asociada a un estado. En un instante discreto de tiempo se supone

que el proceso está en un estado determinado y que genera una observación mediante la función

aleatoria asociada. Al instante siguiente, la cadena subyacente de Markov cambia de estado

siguiendo su matriz de probabilidades de transición entre estados, produciendo una nueva

obser-vación mediante la función aleatoria correspondiente. El observador externo sólo “ve” la salida

de las funciones aleatorias asociadas a cada estado, siendo incapaz de observar directamente la

secuencia de estados de la cadena de Markov. De ahí el nombre de modelo oculto.

2.2.2 Definición

Un modelo oculto de Markov queda, entonces, caracterizado por los siguientes elementos:

1. El conjunto finito de N estados de la cadena de Markov de primer orden. Aunque los estados

están ocultos, en muchas aplicaciones prácticas éstos tienen un significado físico que es

preciso considerar. Se denotará comoS={Si}i=1...N a este conjunto de estados y al estado

en el tiempotcomoqt.

2. El conjunto de probabilidades de transición entre estados. Denotando los instantes de

tiempo regularmente espaciados asociados a los cambios de estados comot=1, 2, ..., T. Una

descripción probabilística completa de una cadena requeriría, en general, especificaciones

sobre el estado actual en el instante t y de todos los estados predecesores. Para el caso

especial de una cadena de Markov de primer orden, esta descripción probabilística se trunca

en el estado actual y el último predecesor, es decir,

P(qt=Sj|qt−1=Si,qt−2=Sk, ...)=P(qt=Sj|qt−1=Si)

Además, se considera que esta última probabilidad es independiente del tiempo (propiedad

de homogeneidad temporal), lo cual da lugar a un conjunto de probabilidades de transición entre

(33)

2.2. MODELOS OCULTOS DE MARKOV

estados que se denotará con una matriz A={ai j}i,j = 1 ... N, donde

ai j=P(qt=Sj|qt1=Si) i, j = 1, ... ,N

Este conjunto de probabilidades determinará la topología del modelo. Así, para un modelo en

que cada estado puede ser alcanzado desde cualquier otro en un sólo paso,ai,j>0 i, j=1, ... , N.

En general, los modelos pueden tenerai j=0 para una o más parejas de valores (i,j). En cualquier

caso deben verificar

N X

j=1

ai j=1 i=1, ... , N (2.1)

ai j≥0 i,j=1, ... , N (2.2)

3) La distribución de probabilidad de estados iniciales, que se denotará como {πi}i=1,...,N,

definida de la forma

πi=P(q1=Si) i=1, ... , N (2.3)

Siendoq1el estado ent=1

Como tales probabilidades, también deben verificar

N X

i=1

πi=1 i=1, ... , N (2.4)

πi≥0 i=1, ... , N (2.5)

4) Las probabilidades de generación de observaciones, que caracterizan el proceso asociado a

cada uno de los estados del modelo y que se denotará como B={bj(Ot)} j=1, ... , N, con

bj(Ot)=P(Ot|qt=Sj) j=1, ... , N (2.6)

en donde Otrepresenta el valor de la observación en el instantet, correspondiente a la

secuen-cia de observaciones O={Ot}t=i, ... , T. Se supone que el proceso de generación de observaciones

es independiente del tiempo y que únicamente depende del estado actual del modelo. Hay que

hacer notar que en algunas variantes de modelos ocultos de Markov estas probabilidades de

observación están asociadas a las transiciones, en lugar de a los estados.

De esta forma el modelo HMM queda definido por la especificación de los conjuntosπ, A y B,

que implícitamente fijan el valor de N. Por ello, se suele utilizar la notación compacta

λ=(π, A, B)

para referirse a un determinado modeloλ.

Una representación esquemática de un modelo oculto de Markov de dos estados ergódicos (con

(34)

CAPÍTULO 2. MARCO TEÓRICO

Figura 2.3: Secuencia de variables aleatorias con emisión de símbolos ot=Ok

Aquí, los estados “dado justo” y “dado cargado”, se corresponden a los valores que puede tomar la

variable ocultaqt(no observables directamente) en el instante de tiempo t. Otes el valor de un

dado arrojado en el mismo instante t. En este caso, los valores 1-6 forman el conjunto de posibles

valores observables (6 símbolos posibles). A modo de ejemplo, se expresan las probabilidades de

arrojar cada valor según el dado, o bien,P(Ot|qt=Sj), j = {dadojusto, dadocargado}, equiprobables

para el dado justo y mayor probabilidad para el valor “6”, en el dado cargado. De la Figura 2.4

queda claro que el valor de la variable observada sólo depende del valor de la variable oculta

(ambas en el instante t).

Figura 2.4: Modelo Oculto de Markov del casino deshonesto

La naturaleza de las probabilidades de generación de observaciones de cada estadobj(Ot) es

la diferencia fundamental entre los distintos tipos de modelos. En los llamados modelos discretos

(DHMM), estas probabilidades están representadas a través de distribuciones de probabilidad

(35)

2.2. MODELOS OCULTOS DE MARKOV

discretas, ya que las observaciones Ottoman valores dentro de un conjunto discreto y finito de

símbolos llamado alfabeto V=vk k=1, ... , M, siendo M el tamaño del alfabeto. Las probabilidades

de observación forman, pues, un conjunto que se denota como una matriz B={bj(k)} j=1, ... , N;

k=1, ... , M, donde

bj(k)=P(vkent|qt=Sj) j = 1,... , N k=1,... , M (2.7)

Por ser probabilidades estos parámetros deben verificar

N X

j=1

bj(k)=1 k=1, ... , M (2.8)

bj(k)0 k=1, ... , M j=1, ... , N (2.9)

En los modelos continuos (CHMM), las probabilidades de observación están representadas a

través de funciones de densidad de probabilidad multivariadas, ya que las observaciones toman

valores dentro de un espacio continuo multidimensional.

2.2.3 Problemas en HMM

Una vez definido el modelo para un determinado proceso, surgen tres problemas básicos de

interés que deben resolverse de cara a posibles aplicaciones prácticas:

Problema de evaluación Dada una secuencia de observaciones O={Ot}t=1, ... , T y un modelo λ=(π,A,B), cómo evaluar eficientementeP(O|λ), la probabilidad de la secuencia de obser-vación dado el modelo. Esta probabilidad se puede utilizar para clasificar las secuencias de

observación.

Problema de entrenamiento Dada una secuencia de observaciones O={Ot}t=1, ... , T cómo

ajustar los parámetros del modeloλ=(π,A,B) de forma que se maximiceP(O|λ), la

proba-bilidad de generación de dicha secuencia por el modelo. Su solución permite desarrollar un

método para obtener los parámetros de un modelo en base a secuencias de observaciones

que se pretenden modelar.

Problema de decodificación Dada una secuencia de observaciones O={Ot}t=1, ... , T y un modeloλ=(π,A,B), cómo elegir la correspondiente secuencia de estadosQ={qt}t=1, ... , T

que es óptima en algún sentido, que mejor “explica” las observaciones. Su solución permite

obtener información sobre el proceso oculto, por ejemplo, el significado de los estados del

modelo.

2.2.4 Aplicación

El concepto de HMM fue aplicado inicialmente en el campo del reconocimiento automático

(36)

CAPÍTULO 2. MARCO TEÓRICO

aplicación en diversas disciplinas, como el análisis de imágenes[1] o la psicología [40], destacando

su uso creciente en bioinformática, donde los HMM están ya bien establecidos[6, 40], y en el

análisis de electroencefalogramas y otras bioseñales[30, 32]. Como el área de aplicación es

inmensa solo describiremos unos pocos usos con la finalidad de tener una visión clara del futuro

de los HMM.

En lo que respecta a la bioinformática y su relación con los modelos ocultos de Markov, la

utilización de los mismos como modelos de perfil fue introducida por Krogh et al. a mediados de

los ’90 [18]. Algunos ejemplos del uso de HMM en el campo de la biología son el descubrimiento

de genes, el mapeo de ligamientos genéticos y la predicción de estructura secundaria. La idea de

usar perfiles HMM para la búsqueda en bases de datos es comparar una secuencia con un modelo

estadístico que describe una familia o patrón de secuencias al contrario de la simple comparación

de partes individuales de dos secuencias. Además, comparando una secuencia con un modelo

estadístico se puede obtener información extra.

Por otro lado, en lo que respecta al reconocimiento de voz mediante los modelos ocultos de

Markov se sabe que debido a la inercia inherente a los órganos articulatorios, es posible suponer

que las características de la señal no varían demasiado en un intervalo corto de tiempo, por lo que

es posible realizar un análisis espectral sobre segmentos de señal de esta duración temporal. En

los sistemas de reconocimiento de voz mediante técnicas de comparación de patrones se aborda el

proceso de reconocimiento sin realizar un modelado de la evolución temporal de esta secuencia de

espectros. Los patrones de referencia y de test consisten simplemente en secuencias de espectros

y el proceso de comparación se limita a calcular la distancia acumulada entre dichos patrones a

lo largo del camino óptimo dado por un algoritmo. En los sistemas basados en modelos ocultos de

Markov, se modela la evolución temporal de la secuencia de espectros obtenida de la señal de voz

mediante un HMM con el fin de contemplar las diversas fuentes de variabilidad de la señal. Este

modelado consiste en la asociación de los estados del HMM a los diferentes tramos de la señal, de

forma que las probabilidades de generación de observaciones modelan la variabilidad estadística

de las características espectrales de cada tramo, mientras que las probabilidades de transición

modelan su secuenciamiento y duración.

2.3

Algoritmo de Viterbi

El problema de decodificación, el cual se basa en un modelo de Markov y una secuencia

de observaciones, sobre las cuales debe determinar cuál es la secuencia de estados que mejor

la explica, puede ser resuelto calculando todas las combinaciones posiblesQ={qt}t=1, ... , T,

eligiendo la de máxima probabilidad. Se calcula, para cada combinaciónQ:

P(Q,O|λ)=πq1bq1(O1)aq1q2bq2(O2)...aqT−1qTbqT(OT)

(2.10)

Dondeπes un vector que denota el estado inicial que se considera, Otlas observaciones en los

tiempos dados y bqt(Ot) que es el valor de la probabilidad de observar Otcuando se está en el

(37)

2.3. ALGORITMO DE VITERBI

estadoqen el tiempo t. En el caso de ejemplo (el casino deshonesto), la observación con la que

contamos, o bien, los estados “observables”, es la secuencia de valores de los dados arrojados. Lo

que podremos estimar es, qué partes de la secuencia fueron generadas por un dado justo y qué

partes con el dado cargado. Esto mismo podremos verlo en mayor detalle más adelante, junto al

ejemplo aplicado.

Existen métodos más eficientes basados en recursión como el algoritmo de Viterbi. Este mismo

permite encontrar las secuencias de estados más probables en un modelo oculto de Markov a

partir de una observación, es decir, obtiene la secuencia óptima que mejor “explica” la secuencia

de observaciones. Cabe mencionar que el algoritmo de Viterbi es de programación dinámica, si

esto no fuera así y fuera iterativo la complejidad sería demasiado grande.

2.3.1 Reseña

Para encontrar la secuencia de estadosQ=qtt=1, ... , T dada una secuencia de observaciones

O={Ot}t=1, ... , T se define la variable

δt(i)=maxq1,q2,...,qt{P(q1q2...qt=i, O1O2...Ot|λ)}

(2.11)

Considerando lo expuesto anteriormente, en primer lugar definimos la probabilidad parcialδ,

que es la probabilidad de alcanzar un estado intermedio particular. Para cada estado intermedio

y terminal, hay un camino más probable a ese estado. Llamaremos a estos caminos los “mejores

caminos parciales”. Cada uno de estos mejores caminos parciales tiene una probabilidad asociada,

la probabilidad parcial oδ. Entonces,δ(i,t) es la probabilidad máxima entre todas las secuencias

que terminan en el estado i en el tiempo t, y el mejor camino parcial es la secuencia que alcanza

esta probabilidad máxima. Tal probabilidad (y camino parcial) existen para cada estado i y tiempo

t.

Por inducción, se define:

δt+1(j)=maxi{δt(i)ai j}bj(Ot+1) (2.12)

Para recuperar la secuencia de estados de probabilidad máxima es necesario almacenar los

valores del argumento que maximizan la ecuación anterior, para cada t y j. Para ello se utiliza

la matrizψt(j). En la misma se van almacenando los valores calculados con la ecuación 2.12,

para que luego de finalizar con todos los cálculos poder determinar cuál es la secuencia óptima de

estados que mejor explique las observaciones dados los valores almacenados en la matriz.

2.3.2 Algoritmo

El algoritmo de Viterbi cuenta con los pasos descritos en el algoritmo (1).

Hay que destacar que en este caso no se consideran todas las transiciones hasta cada estado,

(38)

CAPÍTULO 2. MARCO TEÓRICO

Algorithm 1Algoritmo de Viterbi

1: procedureVITERBI 2: 1) Inicialización:

3: δ1(i)←πibi(O1) .i = 1,...,N

4: ψ1(i)←0 5: 2) Recursión:

6: δt(j)←maxi=1,...,N{δt−1(i)ai j}bj(Ot) .t = 2,...,T y j=1,...,N 7: ψt(j)←ar gmaxi=1,...,N{δt−1(i)ai j} .t = 2,...,T y j=1,...,N 8: 3) Terminación:

9: P∗=maxi=1,...,N{δT(i)} 10: q∗

T=ar gmaxi=1,...,N{δT(i)}

11: 4) Recursión para obtener la secuencia de estados:

12: q∗t =ψt+1(q∗t+1) .t = T-1, T-2,...,1

El algoritmo de Viterbi no se utiliza tan sólo para determinar la secuencia de estados óptima,

sino también para determinar la probabilidad de una secuencia de observaciones por el camino

óptimo.

2.3.3 Ejemplo: El casino deshonesto

A partir del modelo del casino deshonesto y una secuencia de dados arrojados como la

siguiente, veremos cómo hallar la secuencia de estados de máxima probabilidad:

3 6 4

Consideraremosπ={12,12}como vector de probabilidades iniciales. La siguiente tabla resume

los cálculos de cada secuencia posibleQ={i1,i2,i3}.

i1 i2 i3 P(Q,O)

Cargado Cargado Cargado πCbC(3)aCCbC(6)aCCbC(4)=0.000278 Cargado Cargado Justo πCbC(3)aCCbC(6)aC JbJ(4)=0.000926 Cargado Justo Cargado πCbC(3)aC JbJ(6)aJCbC(4)=0.000139 Cargado Justo Justo πCbC(3)aC JbJ(6)aJ JbJ(4)=0.000694 Justo Cargado Cargado πJbJ(3)aCCbC(6)aCCbC(4)=0.000347 Justo Cargado Justo πJbJ(3)aCCbC(6)aC JbJ(4)=0.001157 Justo Justo Cargado πJbJ(3)aC JbJ(6)aJCbC(4)=0.000260 Justo Justo Justo πJbJ(3)aC JbJ(6)aJ JbJ(4)=0.001302

Cuadro 2.1: Resumen del cálculo de P(Q,O) para las combinaciones posibles dei1,i2,i3

La complejidad del problema crece exponencialmente con la longitud de la secuencia de

observaciones (T) en el orden O(2T NT), donde N es la cantidad de estados y hay NTsecuencias

de estados posibles. A continuación se muestra la solución por el algoritmo de Viterbi:

1. Inicialización

(39)

2.3. ALGORITMO DE VITERBI

OBSERVACIONES O1=3

ESTADOS δ1(Car gado) πCar gadobCar gado(3)=0.05 δ1(J usto) πJ ustobJ usto(3)=0.083

Cuadro 2.2: Primer paso del algoritmo de Viterbi.δ1(i) con observación O1=3

ψ1(i)=0

2. Recursión

a) δ2(i),ψ2(i)

OBSERVACIONES

O1=3 Transición O2=6 δ1(C)aCC=0.0166

δ2(Car gado) δ1(Car gado)=0.05

δ1(J)aJC=0.02075 δ1

(J)aJCbC(6)=0.010375

δ1(C)aC J=0.0333

EST

ADOS

δ2(J usto) δ1(J usto)=0.083 δ

1(J)aJ J=0.06225 δ1

(J)aJ JbJ(6)=0.010375

Cuadro 2.3: Primer iteración del paso 2.δ2(i) con observación O2=6

O2=6 O3=4 ψ2(Car gado) Justo ...

ψ2(J usto) Justo ...

Cuadro 2.4:ψ2(i)

b) δ3(i),ψ3(i)

OBSERVACIONES

O2=6 Transición O3=4 δ2(C)aCC=0.00345

δ3(Car gado) δ2(C)=0.010375 δ

2(J)aJC=0.00259 δ2

(C)aCCbC(4)=0.000345

δ2(C)aC J=0.00691

EST

ADOS

δ3(J usto) δ2(J)=0.010375

δ2(J)aJ J=0.00778 δ2

(J)aJ JbJ(4)=0.00129

Cuadro 2.5: Segunda iteración del paso 2.δ3(i) con observación O3=4

O2=6 O3=4 ψ3(Car gado) Justo Cargado

ψ3(J usto) Justo Justo

Cuadro 2.6:ψ3(i)

(40)

CAPÍTULO 2. MARCO TEÓRICO

P∗=m ´axi

=1,...,N{δT(i)}=m ´ax{δ3(Car gado),δ3(J usto)}=δ3(J usto)=0.00129

q∗3=arg maxi=1,...,N{δ3(i)}=J usto

4. Recursión final

q∗t =Ψt+1(qt∗+1) t=T−1,T−2, ..., 1

q∗3 q∗2 q∗1

Justo (Paso 3) Ψ3(q∗

3)=Ψ3(J usto)=J usto Ψ2(q∗2)=Ψ2(J usto)=J usto

Cuadro 2.7: Búsqueda recursiva del camino que llevó a la secuencia de estados de prob. máxima

El algoritmo estima que los estados más probables son {q∗

1,q∗2,q∗3}={J usto,J usto,J usto}. Es decir, en las tres observaciones: 3,6,4 es más probable que se haya utilizado el dado justo.

La complejidad temporal de este algoritmo esO(K2N)y la complejidad espacial esO(KN)

siendo K el número de estados y N los diferentes valores.

(41)

C

A

P

Í

T

U

L

O

3

E

STIMACIÓN DEL TIEMPO DE VIAJE

A fin de definir el problema es necesario introducir los siguientes componentes:

Una red espacial digitales un grafoG<V,E>dondeV es un conjunto de vértices yE un

conjunto de arcos. Cada arco tiene las propiedades: vértices, longitud, dirección. Adicionalmente,

una red tiene propiedades relacionadas al tránsito, como restricciones de giro, límites de velocidad,

información de semáforos, etc.

Un conjunto de datos de localizaciónconsiste de: (a) latitud, (b) longitud, (c) tiempo del muestreo, (d) identificación del dispositivo. La ubicación reportada por un dispositivo es también

llamada sonda. Una secuencia de sondas provenientes de un mismo vehículo se denota por P =p1,p2, ...,pt1.

Una trayectoria reales una secuencia de arcos que representan el camino real atravesado

por un vehículo a medida que se generan las observaciones P. Es denotada por T y no es

considerada en el contexto de map-matching (excepto como datos ground truth).

Una trayectoria observada es una secuencia de segmentos de línea recta, tal que cada

línea conecta dos posiciones observadas consecutivas.

El problema es entonces definido como: buscar la secuencia de arcos más probable (τo pt) para

una secuencia de observacionesP y una red espacial digitalG:

τo pt=ar gm ´ax

τ P(τ=T|P,G)

dondeP(τ=T|P,G) es la probabilidad serτla verdadera trayectoria dadoP yG.

3.1

Estimación de la trayectoria

Asumiendo que un dispositivo viaja a través de una red espacial de calles o caminos, el

(42)

CAPÍTULO 3. ESTIMACIÓN DEL TIEMPO DE VIAJE

transmisiones de cada dispositivo. Esta tarea presenta los siguientes desafíos:

Consumo de energía:En este caso se considerará la dispersión espacial de detecciones, es

decir, es deseable partir de observaciones que se realizan con baja periodicidad, ya que una alta

periodicidad en las transmisiones implica mayor consumo energético del dispositivo. Esto hace

que métodos estándar basados en triangulación no sean aptos.

Muestras de baja precisión:Incluso cuando el consumo de energía no es una preocupación, los sensores GPS no siempre están disponibles. Algunos celulares usan WiFi y la señal de celular

para el posicionamiento, siendo este de menor calidad. Incluso las experiencias con GPS pueden

no ser las esperadas, por ejemplo, cuando el usuario se encuentra con el celular en el bolsillo

o está atravesando zonas de edificios de gran altura o túneles donde la precisión se reduce a

decenas o cientos de metros.

3.1.1 Solución trivial

Considere la siguiente solución:

Al realizar una observación, tomar la posición de menor distancia al

seg-mento de calle más cercano al origen de la transmisión. Interpolar las ubi-caciones entre observaciones.

En primer lugar, utilizar el segmento más cercano a cada posición frecuentemente no es el

segmento real por donde circula un vehículo. En segundo lugar, las variaciones en el muestreo

por error de los instrumentos de posicionamiento aumentan la complejidad en situaciones de

dispositivos estacionarios, donde pueden ocurrir observaciones intermitentes. En el algoritmo

planteado, esto se refleja como saltos entre las ubicaciones, ubicando las detecciones en posiciones

hacia delante y hacia atrás.

Por último, interpolar ubicaciones distantes por línea recta producen trayectorias de baja

calidad. El uso de una red espacial, como el mapa de una ciudad puede mejorar significativamente

el resultado, pero introduce ambigüedades en las rutas que deben ser resueltas. Utilizar el camino

más corto entre las muestras no es aplicable por la alta incertidumbre de la ubicación. Como

se sugiere en este ejemplo, soluciones por algoritmos determinísticos no se ajustan al problema,

debido a la naturaleza estocástica de las detecciones.

3.1.2 Algoritmo básico de estimación de trayectoria

A continuación se presenta un método probabilístico para la estimación de la trayectoria.

En lugar de asociar el segmento más cercano a una observación en cada instante de tiempo, se

modela la distribución de posibles ubicaciones a lo largo del tiempo, y se toma la trayectoria que

maximiza la probabilidad en el modelo.

Para reducir el conjunto de ubicaciones posibles y restricciones de movimiento, se asume que

el dispositivo viaja a través de una red espacial conocida. El modelo, tomado como entrada del

algoritmo, consiste en vértices localizados espacialmente, conectados por arcos dirigidos.

(43)

3.1. ESTIMACIÓN DE LA TRAYECTORIA

Dada la red espacial, el problema de estimación de trayectoria tiene cierta similitud con

map-matching, que busca coincidir una secuencia de observaciones escasas y ruidosas con una

serie de estimaciones de ubicación. Nuestro método está basado en map-matching de Viterbi.

Formulamos el problema usando Modelos Ocultos de Markov para estados, probabilidades

de transición y probabilidades de emisión, utilizando decodificación por el algoritmo de Viterbi

para determinar la trayectoria más probable, representada por una secuencia de estados ocultos

en el Modelo de Markov. Utilizado en conjunto con el algoritmo de Viterbi, un Modelo Oculto de

Markov espera una entrada periódica y produce una transición de estadosi→jpor período. Las

transiciones son regidas por probabilidades de transición p(ij), y probabilidades de emisión

p(obs|i), dondeobses la observación actual. Las auto-transiciones son permitidas. A continuación

se describe en detalle la formulación de los Modelos Ocultos de Markov.

3.1.3 Modelos ocultos: Segmentos de calles

Un mapa de calles simple consiste de vértices representando las intersecciones, arcos

repre-sentando los segmento de una calle, y (mayormente para vehículos) restricciones de giro que

determinan las transiciones permitidas entre arcos.

Nuestro modelo debe ser capaz de reconocer el trayecto más probable segundo a segundo

siendo este un trayecto válido. Para esto, es necesario contar con estados de extensión espacial

significativamente menor al segmento de una calle o cuadra, las cuales pueden superar los cientos

de metros (Figura 3.1).

Figura 3.1: Modelo oculto de Markov de dos calles inter-sectadas. Los segmentos son sub-divididos para aumentar la granuralidad

Cada estado representa un área rectangular en la cual puede estar ubicado un emisor GPS.

Una calle puede ser atravesada pasando por todos los segmentos, sin saltos entre segmentos no

(44)

CAPÍTULO 3. ESTIMACIÓN DEL TIEMPO DE VIAJE

De esta forma definimosG0=<V0,E0>como un nuevo grafo compuesto por los segmentos,

con estados como vértices y transiciones basadas en las restricciones de giro como arcos.

3.1.4 Probabilidades de transición

Las probabilidades de transición reflejan los siguientes conceptos: 1) Para un segmento dado,

existe una probabilidad de que en el siguiente instante, el vehículo se encuentre en ese mismo

segmento. 2) Un vehículo puede viajar solo del final de un segmento al comienzo del siguiente si

usa la misma intersección; esto asegura que el camino de segmentos saliente sea contínuo. 3) Un

vehículo no puede viajar irrazonablemente rápido en cualquier segmento. En otras palabras, las

transiciones modelan el comportamiento en las intersecciones: continuando o girando. Se usan

probabilidades uniformes entre segmentos adyacentes. Por lo tanto, para cada segmento i, con

segmentos adyacentes n∈N, p(i→i)=p(i→n)=|N1|+1. Todas las restricciones, incluyendo las permitidas y las prohibidas, son contadas en los segmentos adyacentes.

3.1.5 Probabilidades de emisión

Describe la probabilidad p(obs|s) de hacer una observaciónobsen el estado actuals.

Una observaciónobsconsiste en un nuevo punto pi (lat,lng) de la trayectoriaP. Para cada

segmento candidatonNse modela la probabilidad de emisión como una función de distribución

normal que depende de la distancia del segmento a la observaciónpi. Concretamente, la densidad

de probabilidad de emisión para el segmentoicon la observación pesN(dist(i,p)), donde N es

una función Gaussiana bivariada con media en el centro del segmento, y dist(i,p) es la distancia

Euclideana entre i y p. La varianza de N depende del tipo de sensor (A-GPS/WiFi/Celular).

Se toma como referencia un error de 10 metros (medido en estudios previos sobre precisión de

sistemas de posicionamiento en dispositivos móviles [24]). Este modelo representa el concepto de

que es probable que un punto particular haya sido observado desde un segmento próximo, pero

no necesariamente el más cercano.

Adicionalmente, se introducen dos métodos que permiten calcularp(obs|s) considerando a

cada segmento como un punto (método 1), o como una superficie (método 2). Se utiliza la ecuación

(3.1) que describe valores bajos al aumentar las distancias.

p(obs|s)= e

−d((x,y);Xj)2

P

k=1

e−d((x,y);Xk)2

(3.1)

3.1.5.1 Método 1

Para cada observación pise calcula la distancia entre cada segmento y la observación. La

ubicación del segmento se corresponde con el centroide de la superficie que lo define. Se aplica

(45)

3.1. ESTIMACIÓN DE LA TRAYECTORIA

un factor de corrección sobre la distancia para escalar los valores pequeños provenientes de las

distancias geodésicas expresadas en Km. El valor que se devuelve esp(obs|s)

Algorithm 2Método 1

1: procedurePROBABILITY(pi) 2: powe−d istancia(pi,centroid e)2

3: for eachsS do .Normalización

4: norm←norm+e−d istancia(pi,s)2

5: returnpow/norm

3.1.5.2 Método 2

A diferencia del método 1, se considera la superficie del segmento en el cálculo de pow.

Se calcula la suma de e−d2 sobre el área de cada segmento. Se aproxima sobre la superficie

dividida en intervalos pequeños con una separación (δx,δy), mas precisamente, la décima parte

del tamaño de cada segmento en x e y

Algorithm 3Método 2

1: procedurePOW(pi,s)

2: forxxM in;x<xMax;x+δxdo

3: fory←yM in;y<yMax;y+δydo

4: centroid eP oint(x,y)

5: powpow+e−d istancia(pi,centroid e)2

6: returnpow

3.1.6 Algoritmo de Viterbi

Dado un HMM y un conjunto de observaciones obs, se extrae la trayectoria que maximiza la

probabilidad de las observaciones en el modelo. El Modelo Oculto de Markov estará definido por

los estados, el vector de probabilidades inicialesπipara cada estado, la matriz de probabilidades

de transición a, y un vector de funciones de distribución de probabilidades de observaciones

o pd f s.

πValores de probabilidad inicial,πi es la probabilidad inicial del estadoi.

aUn arreglo de probabilidades de transición de estados.ai j es la probabilidad de ir desde el estadoial estado j.

opdfs Son las distribuciones de observación, o pd f s[i] es la distribución de observación asociada al estado i.

Serán tantos estados como segmentos existan en la red espacial definidaG0. Para construir el modelo, se itera sobre los segmentos definidos enG0 y se crea un estado para cada segmento, con

(46)

CAPÍTULO 3. ESTIMACIÓN DEL TIEMPO DE VIAJE

Una distribucióno pd f está dada por una función de distribución normal bivariada con media

en el centroide del segmento s, µ=(av g(l on gitud),av g(latitud)) y la matriz identidad como

matriz de covarianza. Ai j estará dado por (dmax1+1), donde dmax es el grado máximo saliente paras, incluyendo la auto-transición de cada estado. En la Figura 3.2 se ejemplifica la función

de distribución para un segmento s0 con centroide µ0=(a,b). Se observa la variación de la probabilidad p(obs|s0) en función de la distancia respecto aµ0. Los métodos 1 y 2 definidos en la

sección 3.1.5 se presentan como alternativas a la función de distribución normal bivariada.

Figura 3.2: Función de densidad de probabilidades bidimensional.

La decodificación por Viterbi es una técnica de programación dinámica para buscar la

se-cuencia de estados ocultos más probable dado un conjunto de observables y la distribución de

probabilidades de emisión y probabilidades de transición. En nuestro caso, los estados ocultos se

corresponden con la trayectoria recorrida, y los observables son las muestras de posición.

3.1.6.1 Ejemplo HMM

En la Figura 3.3 se muestra un ejemplo donde S1, S2, y S3 son segmentos de calle y p1, p2,

p3, y p4 son observaciones realizadas. Hay igual probabilidad de hacer una transición desde S1 a

S1, S2, o S3. Como la función de densidad de probabilidad de emisión es una función decreciente

de la distancia, la secuencia de segmentos más probable para la secuencia de observaciones dada

es S1, S3, S3, S3, y S3. Si bien p2 es más cercano a S2, el estado oculto más probable de ese punto

es S3 dadas las restricciones de transitividad. Si se toma el camino atravesando S2, no es posible

girar luego a S3.

Figura 3.3: Ejemplo de HMM

Referencias

Documento similar

que hasta que llegue el tiempo en que su regia planta ; | pise el hispano suelo... que hasta que el

E Clamades andaua sienpre sobre el caua- 11o de madera, y en poco tienpo fue tan lexos, que el no sabia en donde estaña; pero el tomo muy gran esfuergo en si, y pensó yendo assi

[r]

SVP, EXECUTIVE CREATIVE DIRECTOR JACK MORTON

Social Media, Email Marketing, Workflows, Smart CTA’s, Video Marketing. Blog, Social Media, SEO, SEM, Mobile Marketing,

The part I assessment is coordinated involving all MSCs and led by the RMS who prepares a draft assessment report, sends the request for information (RFI) with considerations,

De hecho, este sometimiento periódico al voto, esta decisión periódica de los electores sobre la gestión ha sido uno de los componentes teóricos más interesantes de la

Proporcione esta nota de seguridad y las copias de la versión para pacientes junto con el documento Preguntas frecuentes sobre contraindicaciones y