Un modelo de Markov para la optimización de la tarea del ...
Transcript of Un modelo de Markov para la optimización de la tarea del ...
![Page 1: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/1.jpg)
Trabajo de Fin de Grado
Grado en Ingeniería en Tecnologías Industriales
Un modelo de Markov para la optimización de la tarea del
equipo de reponedores de bicicletas de un Servicio de Bicing
MEMORIA
Autor: Alfonso Mota Canals Director: María Isabel García Planas Convocatoria: Setiembre 2021
Escuela Técnica Superior de Ingeniería Industrial de Barcelona
![Page 2: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/2.jpg)
Pág. 2 Memoria
![Page 3: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/3.jpg)
“Las matemáticas son uno de los descubrimientos de la humanidad. Por lo tanto, no pueden
ser más complicadas de lo que los hombres son capaces de comprender”
Richard Feynman (Estados Unidos, 1918-1988)
![Page 4: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/4.jpg)
Pág. 4 Memoria
![Page 5: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/5.jpg)
Resumen
El trabajo realizado se enmarca en el área de Álgebra Lineal (Cadenas de Markov y todos los
cálculos que conlleva) y en el área de programación informática mediante el software Matlab,
herramientas para ser aplicadas al intento de optimización de la tarea del equipo de
reponedores de bicicletas del servicio “bicing” de Barcelona.
El objetivo principal de este trabajo es diseñar y simular un modelo predictivo para el
movimiento de bicicletas entre las diferentes paradas de los 10 distritos de Barcelona mediante
Cadenas de Markov. Una Cadena de Markov se define como un proceso aleatorio sin memoria
en el que básicamente conociendo el estado ‘presente’, el estado ‘futuro’ no depende del
estado ‘pasado’.
Los cálculos se llevarán a cabo mediante la creación de una función en Matlab que logra
analizar los datos del movimiento entre paradas de las bicicletas. El objetivo es, modelar el
movimiento como una Cadena de Markov, cuyo análisis permitirá conocer la previsión de la
disposición de bicicletas en cada estación facilitando la labor de los reponedores.
Debido a que no se ha podido obtener los datos del servicio Bicing de Barcelona, se intenta
diseñar un grafo a partir de los datos puntuales que proporciona a los usuarios la APP del
propio servicio, aproximando los datos a partir de una secuencia de ellos obtenida en espacios
de tiempo de una hora de manera que estas aproximaciones se ajusten a la realidad de la
mayor manera posible. Se hará una simulación con todo el grafo para analizar la tendencia de
distribución de bicicletas.
La idea es poder utilizar este diseño realizado para poder prever una distribución futura de las
bicicletas de tal manera que saber esto ayude a los operarios del servicio Bicing a optimizar sus
recursos y trayectos de tal manera que la reposición sea la más eficaz y eficiente posible.
En conclusión, podemos afirmar, que, aunque hayamos hecho este estudio con datos
aproximados, se ha conseguido realizar un diseño que prevé el movimiento de las bicicletas a
lo largo de un cierto tiempo.
![Page 6: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/6.jpg)
Pág. 6 Memoria
![Page 7: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/7.jpg)
Sumario
RESUMEN ___________________________________________________ 5
SUMARIO ____________________________________________________ 7
1. INTRODUCCIÓN _________________________________________ 11
1.1. Objetivos del proyecto ................................................................................. 11
1.2. Alcance del proyecto .................................................................................... 11
2. EL BICING ______________________________________________ 15
2.1. La necesidad del Álgebra Lineal .................................................................. 15
2.1.1. Organización de los puntos de distribución mediante grafos dirigidos ............ 16
2.1.2. Espectro de una matriz ................................................................................... 18
2.1.3. Cálculo de los valores propios. Polinomio característico de una Matriz .......... 20
2.2. Matrices no negativas .................................................................................. 20
2.3. Cadena de Markov ....................................................................................... 23
3. HERRAMIENTA DE CÁLCULO. MATLAB _____________________ 27
3.1. Introducción al Matlab .................................................................................. 27
3.2. Interés del Bicing.......................................................................................... 28
3.3. Obtención de datos ...................................................................................... 28
4. APLICACIÓN AL CASO DE BICING __________________________ 31
4.1. Diseño del grafo ........................................................................................... 31
4.2. Implementación del grafo a la matriz ........................................................... 34
4.3. Estudio mediante Cadenas de Markov y Predicción ................................... 37
4.3.1. Cálculo de valores y vectores propios ............................................................. 37
4.4. Búsqueda de la distribución estacionaria .................................................... 40
4.5. Análisis de resultados .................................................................................. 43
5. PLANIFICACIÓN TEMPORAL Y DE COSTES __________________ 46
5.1. Planificación temporal .................................................................................. 46
5.2. Planificación de costes ................................................................................ 47
6. IMPACTO AMBIENTAL ____________________________________ 49
CONCLUSIONES _____________________________________________ 51
AGRADECIMIENTOS __________________________________________ 53
BIBLIOGRAFÍA ______________________________________________ 55
![Page 8: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/8.jpg)
Pág. 8 Memoria
ANEXOS ____________________________________________________ 56
![Page 9: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/9.jpg)
![Page 10: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/10.jpg)
![Page 11: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/11.jpg)
Un modelo de Markov para el servicio de reposición de bicing Pàg. 11
1. Introducción
Las cadenas de Markov ([1],[4]), constituyen una herramienta para estudiar el comportamiento
de procesos que evolucionan de forma no determinista, a lo largo del tiempo sobre un conjunto
de estados posibles. Así, se llama estados a cada una de las probabilidades que se pueden
presentar en una situación específica, entonces la herramienta de las Cadenas de Markov nos
puede permitir conocer a corto y largo plazo los estados en que se pueden encontrar un
proceso en tiempos futuros y tomar decisiones que afecten o favorezcan unos intereses
concretos.
En la actualidad las Cadenas de Markov están siendo ampliamente utilizadas en distintos
campos de las ciencias, ya que con ellas se pueden hacer predicciones de comportamientos
futuros, En la actualidad las cadenas de Markov. entre otros, se están utilizando en la
predicción y el control del desarrollo de la pandemia provocada por el virus SARS-CoV-2, ([3]).
1.1. Objetivos del proyecto
Este proyecto tiene la finalidad de hacer un diseño y simulación de un modelo predictivo para la
optimización de la tarea del equipo de reponedores de un servicio Bicing de Barcelona
mediante el uso de cadenas de Markov. Esto se realizará mediante el uso del software Matlab,
donde crearemos una función que consiga leer los datos de reposición y de porcentajes de uso
según los puntos de retirada y devolución de bicicletas del servicio bicing de Barcelona. La
base teórica de este estudio se soporta en el Álgebra lineal, el estudio de las matrices no
negativas y la teoría de las cadenas de Markov que nos permitirán construir el modelo
predictivo con el que se puede hacer predicciones de comportamientos futuros.
La meta principal es conseguir diseñar un programa capaz de leer los datos introducidos y que
estos sean capaces de dar soporte al sistema Bicing para facilitarles la reposición de bicicletas.
Nos basaremos en una zona en concreto de la ciudad donde el Bicing se emplee con asiduidad
y ver si nuestro programa funciona. De esta manera, veremos si en la zona concreta hay buen
servicio de bicing o por otra parte hay que colocar más puntos de bicicletas.
1.2. Alcance del proyecto
Debido al limitado número de horas marcadas para la realización de este trabajo (12 créditos
ECTS), el alcance de este proyecto es el análisis de la componente matemática que subyace
en el diseño de un modelo de Markov para la optimización de la tarea del equipo de
reponedores de bicicletas de un servicio de Bicing, por lo que tendremos que abordar ciertos
![Page 12: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/12.jpg)
Pág. 12 Memoria
temas previamente para poder entender con exactitud lo que se va a afrontar.
Los temas que se abordan en este trabajo son los siguientes:
- Bases: conceptos fundamentales de álgebra lineal y de las cadenas de Markov.
- Qué es Matlab.
- Interés del estudio y elección de una zona de Barcelona para hacer el diseño.
- Diseño del modelo mediante la creación de un programa con Matlab.
- Simulación del modelo y análisis de los resultados obtenidos.
![Page 13: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/13.jpg)
Un modelo de Markov para el servicio de reposición de bicing Pàg. 13
![Page 14: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/14.jpg)
![Page 15: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/15.jpg)
Un modelo de Markov para el servicio de reposición de bicing Pàg. 15
2. El Bicing
El Bicing es un sistema de alquiler de bicicletas público de la ciudad de Barcelona, tanto
mecánicas como eléctricas, que funciona las 24h del día los 365 días del año. Empezó en 2007
promovido por el Ayuntamiento, y hoy en día consta de 519 estaciones mixtas y con 6000
bicicletas mecánicas y 1000 eléctricas. Sistemas similares existen en muchas ciudades del
mundo.
Figura 1: Mapa de disponibilidad
2.1. La necesidad del Álgebra Lineal
En el momento de plantear cómo resolver el problema de predicción propuesto y buscando
en la bibliografía nos encontramos con el problema del viajante también conocido como
“Travelling Salesman Problem (TSP)”, que consiste en determinar la ruta más corta posible
que recorre un conjunto de ciudades (de manera general nodos), de manera que el nodo
final coincida con el nodo de partida y que todas las ciudades sean visitadas una única vez,
(ver [6]). Aunque a simple vista el problema del viajante pueda parecer un problema sencillo,
no es un problema resuelto por completo. Los conceptos matemáticos que son utilizados
para describir el problema del viajante o TSP son los referentes a la teoría de grafos. De
hecho, los grafos pueden representar información discreta de lo más diverso.
![Page 16: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/16.jpg)
Pág. 16 Memoria
En el problema que nos ocupa y teniendo la información sobre el movimiento de las
bicicletas, es posible realizar un “grafo dirigido” que relacione los distintos puntos de
distribución. El grafo obtenido y ponderado por su porcentaje de utilización describe una
cadena de Markov de la cual se podrá analizar su evolución.
Necesitamos pues, hacer una introducción a la teoría de grafos y a la teoría de las cadenas
de Markov donde se estudia la toma de decisiones bajo incertidumbre mediante estos
procesos en la cual uno de los objetivos es estudiar el comportamiento a largo plazo, de una
cadena para un buen análisis del problema.
Para una buena comprensión tanto de la teoría de grafos como de las cadenas de Markov
haremos su revisión desde el punto de vista del Álgebra lineal ya que permite una
descripción matricial de ambas teorías.
2.1.1. Organización de los puntos de distribución mediante grafos dirigidos
Antes de centrarnos en cómo se pueden usar los grafos para su estructuración, será
necesario describir brevemente el concepto de grafo y entender por qué facilita la manera de
controlar el servicio de reposición
De una manera informal podemos decir que, un grafo consiste en un conjunto de vértices o
nodos con algunas conexiones entre ellos, estas conexiones reciben el nombre de aristas.
Una arista puede conectar dos nodos o un nodo consigo mismo.
Figura 2: Grafo
![Page 17: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/17.jpg)
Un modelo de Markov para el servicio de reposición de bicing Pàg. 17
Figura 3: Grafo dirigido
Se dice que el grafo es dirigido si las aristas tienen un sentido definido (ver Fig. 3). Y
finalmente, un grafo se dice ponderado (o con peso) si sus aristas tienen un valor asociado
que denotamos por pij.
Figura 4: Grafo ponderado
El concepto de matriz es clave en el campo del Álgebra lineal y está muy claramente
definido en el mundo de las Matemáticas, por lo que en todos los libros de Álgebra lineal se
encuentra el término de matriz definido de forma similar. Adaptaremos en este caso la
definición que se halla en el libro Herramientas de álgebra lineal y matricial para la ingeniería
[5], y que damos a continuación:
“Llamaremos matriz de orden n x m a coeficientes en un cuerpo conmutativo K a un
conjunto de n x m elementos del cuerpo distribuidos en n filas y m columnas y que
representaremos
A =
![Page 18: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/18.jpg)
Pág. 18 Memoria
donde aij ϵ K.
De este modo, el elemento aij se encuentra en la fila i y en la columna j.”
A cada grafo se le puede asociar una matriz llamada matriz de adyacencia y es una matriz
cuadrada de forma que sus filas y columnas representan ordenadamente los vértices del
grafo, y cada elemento ij indica el número (ponderado) de aristas entre el vértice i y el vértice
j.
Por ejemplo, la matriz adyacente correspondiente al grafo de la figura 3 es
2.1.2. Espectro de una matriz
Un concepto importante en Álgebra lineal es el de vector y valor propio que tiene gran
importancia no sólo en el estudio del Álgebra lineal sino también en su aplicación en
ingeniería, como es por ejemplo el cálculo de los momentos de inercia y de los ejes
principales de inercia de un sólido rígido, o de las frecuencias propias de oscilación de un
sistema oscilante.
Dado que vamos a hacer uso de estos conceptos, será necesario definir ambos de forma
concreta.
Vamos a utilizar la descripción que puede encontrarse, por ejemplo, en [4] (página 160):
- Un vector v ϵ E es un vector propio de la matriz A si v ≠ 0 y existe λ ϵ K tal que
- Un escalar λ ϵ K es un valor propio de la matriz A si existe v ϵ E, v ≠ 0 tal que
Geométricamente, un vector propio es un vector que no cambia de dirección al aplicarle una
![Page 19: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/19.jpg)
Un modelo de Markov para el servicio de reposición de bicing Pàg. 19
deformación definida por la matriz A.
Llamaremos espectro de una matriz cuadrada A al conjunto de sus valores propios.
No siempre es fácil encontrar los valores propios de una matriz, es por ello que es
importante poder obtener cotas de dichos valores, definimos así lo que entendemos por
radio espectral:
El radio espectral de una matriz es igual al mayor de entre todos los módulos de los valores
propios:
Una propiedad importante de las matrices que nos permite obtener cotas para los valores
propios es
Propiedad: Para todo valor propio λ de una matriz A se cumple:
En particular:
Este concepto es importante ya que no siempre se pueden obtener los valores propios
exactos, solo aproximados, y es bueno tener cotas para estos valores.
![Page 20: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/20.jpg)
Pág. 20 Memoria
2.1.3. Cálculo de los valores propios. Polinomio característico de una Matriz
Aunque en este trabajo no se haga un cálculo manual de los valores y vectores propios ya
que se obtendrán utilizando la herramienta Matlab, debido a su importancia, queremos
mostrar propiedades que permitan este cálculo.
Con esta introducción queremos mostrar de forma clara los conceptos más básicos para
que el proyecto sea autocontenido.
Puesto que, si Av = ʎv entonces (A- ʎI)v = 0, entonces det(A- ʎI) = 0. Esto nos
cambia el problema de buscar valores propios a encontrar raíces de un polinomio
Llamaremos polinomio característico a
Qa(t)= det(A-ʎIn)
Entonces, tenemos que el espectro de una matriz A está formado por las raíces de su
polinomio característico.
2.2. Matrices no negativas
En muchas de las aplicaciones de la teoría de matrices, los coeficientes de las matrices que
intervienen son todos no negativos. En particular, como es en el caso de este proyecto, en
las cadenas de Markov.
En relación a las matrices no negativas, la bibliografía es muy específica, y el trabajo se ha
basado en los textos ([1], [2], [4]).
Definición 3.1. Una matriz A ϵ Mnxm (R) se dice que es no negativa (y lo notamos por A ≥ 0)
si todos los elementos de A son no negativos. Esto es, la matriz
es no negativa cuando aij ≥ 0 para todo i ϵ {1, …, n}, j ϵ {1, …, m}.
Denotaremos por MNn(R) al conjunto de matrices no negativas de orden n.
Del mismo modo, se dice que una matriz A ϵ Mnxm (R) es positiva (y lo notamos por A > 0) si
todos los elementos de A son positivos. Esto es, la matriz
![Page 21: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/21.jpg)
Un modelo de Markov para el servicio de reposición de bicing Pàg. 21
se dice que es positiva cuando aij > 0 para todo i ϵ {1, …, n}, j ϵ {1, …, m}.
Dentro de la familia de matrices no negativas se hallan las llamadas estocásticas por
columnas o de Markov, claves para el estudio de las cadenas de Markov. Estas matrices se
definen de la siguiente manera
Una matriz A = (aij) ϵ MNn(R) se dice que es estocástica (por columnas) si la suma de los
elementos de cada columna de A vale 1. Es decir,
Ejemplo. La matriz siguiente es estocástica por columnas, ya que es no negativa y la suma
de todos los elementos de una columna es igual a la unidad.
Una propiedad importante que verifican las matrices estocásticas es la siguiente.
Propiedad: Sea A una matriz de orden n estocástica, Entonces uno es un valor propio.
Esta propiedad se puede probar simplemente viendo que el determinante de la matriz A − I
es nulo.
Además, por la propiedad sobre el radio espectral, tenemos que el radio espectral de una
matriz estocástica es uno, lo que significa que los valores propios son de módulo menor o
igual que uno, resultado importante para el análisis de la evolución de los sistemas
dinámicos del tipo:
![Page 22: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/22.jpg)
Pág. 22 Memoria
Como son las cadenas de Markov homogéneas, en las que el paso del tiempo depende de
los valores propios.
A partir de una matriz positiva se puede obtener una matriz estocástica por columnas
dividiendo los elementos de cada columna por la suma de los elementos de la columna:
Si
entonces la matriz
es estocástica.
Si la matriz es no negativa, también se puede obtener, de la misma manera, la matriz
estocástica siempre que la matriz no tenga ninguna columna idénticamente nula.
![Page 23: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/23.jpg)
Un modelo de Markov para el servicio de reposición de bicing Pàg. 23
2.3. Cadenas de Markov
Las cadenas de Markov fueron introducidas por el matemático ruso Andrey Markov en 1907.
Aunque Markov desarrolló su teoría de cadenas desde un punto de vista totalmente teórico,
también aplicó estas ideas a cadenas de dos estados (vocales y consonantes) en los textos
literarios con la intención de crear un modelo probabilístico para analizar la frecuencia con la
cual aparecen las vocales en poemas y textos literarios. El éxito del modelo propuesto por
Markov radica en el hecho que es suficientemente complejo como para describir ciertas
características no triviales de algunos sistemas, pero al mismo tiempo es bastante sencillo
para ser analizado matemáticamente ([3]).
Definición 5.1.1. Una cadena de Markov es un proceso aleatorio sin memoria. Esto es, un
sistema que evoluciona en el tiempo (k = 0, 1, …) está en el estado ik en el instante k, si en
el instante k – 1 está en el instante ik-1:
Intuitivamente, esta ecuación implica que, conocido el estado “presente” de un sistema, el
estado “futuro” es independiente de su estado “pasado”.
Este proceso puede describirse matricialmente de la siguiente manera: Si p1(k), …, pn(k) son
las probabilidades de los n estados en el tiempo k y pij(k) la probabilidad de la evolución del
estado j al i en el tiempo k, 1 ≤ i, j ≤ n. Entonces,
de donde se obtiene la siguiente expresión matricial:
La matriz de dicho sistema se denomina Matriz de transición de estados, que incluye las
![Page 24: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/24.jpg)
Pág. 24 Memoria
probabilidades de evolucionar de un estado j a un estado i en el tiempo k (1< i, j < n),
Es posible que los términos de la matriz de transición de estados no dependan de k,
entonces, se dice que la cadena es homogénea, que será el tipo de cadenas usadas en el
proyecto.
En el caso de cadenas homogéneas, se cumple:
siendo p (0) = (p1(0), …, pn(0)) el estado inicial de la cadena.
Nos interesa estudiar la evolución de las cadenas a largo plazo, por ello se hace necesario
definir el concepto de distribución estacionaria de una cadena de Markov.
Definición: Se denomina distribución estacionaria de una cadena, en caso de existir, al
siguiente límite:
Para el caso de cadenas de Markov homogéneas, se tiene:
Teniendo en cuenta que si A y B son dos matrices para las cuales existe una matriz
invertible S tal que se tiene que
y, por lo tanto
![Page 25: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/25.jpg)
Un modelo de Markov para el servicio de reposición de bicing Pàg. 25
Entonces una forma de calcular este límite es reduciendo la matriz a su forma reducida de
Jordan, matriz triangular por bloques en que cada bloque es de la forma ʎ I +N, siendo ʎ un
valor propio y N una matriz nilpotente, eso es una matriz que se anula a partir de una cierta
potencia menor o igual a su orden y se tiene que:
Y el límite de la potencia de la matriz de Jordan es la matriz formada por el límite de cada
una de sus cajas:
![Page 26: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/26.jpg)
Pág. 26 Memoria
![Page 27: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/27.jpg)
Un modelo de Markov para el servicio de reposición de bicing Pàg. 27
3. Herramienta de cálculo. Matlab
3.1. Introducción al Matlab
MATLAB es una herramienta cuyo nombre proviene de la abreviatura de ‘MATrix
LABoratory’, es decir, laboratorio de matrices. Esta herramienta de software matemático fue
creada por el matemático y programador de computadoras Cleve Moler en 1984, con la idea
de poder ser usado en el ámbito del Álgebra lineal y el análisis numérico.
Matlab se creó con la principal idea de tener fácil acceso a las librerías EISPACK [7] y
LINPACK [8], dos de las librerías más importantes en cálculo matricial y computación. Con
el paso del tiempo, el uso de MATLAB ha ido expandiéndose, de tal manera que se usa
para llevar a cabo proyectos con una elevada carga de cálculo matemático. También, se ha
implementado en escuelas y universidades, usándose como una herramienta de ayuda
imprescindible para tanto investigadores como docentes. En las universidades, además se
usa en muchas asignaturas como se ha podido ver a lo largo del grado, desde Álgebra
Lineal, Cálculo, Dinámica de Sistemas o Métodos Numéricos.
Pero MATLAB no tiene los módulos mencionados anteriormente, sino que a lo largo de los
años se han ido añadiendo de tal manera que han ampliado su uso. Partiendo del paquete
básico, usado principalmente para la programación de funciones matemáticas y resolución
de problemas, se le puede añadir paquetes que ayuden en diferentes cálculos estadísticos,
sistemas de control, procesamiento de señales o imágenes y visión artificial… Estos
paquetes son conocidos como cajas y algunas de ellas son: Image Processing Toolbox,
Signal Processing Toolbox, Data Acquisition Toolbox, Bioinformatics Toolbox, Neural
Network Toolbox.
Además de lo referido anteriormente, también dispone del programa Simulink, un entorno de
bloques empleado para la simulación y diseño basado en modelos entre otras muchas más
opciones.
Podemos ver que MATLAB no se reduce solo a la manipulación y cálculo de matrices como
se creó originalmente, sino que se puede aplicar a un amplio abanico de campos, no solo en
los matemáticos.
Finalmente, quiero mencionar que durante la elaboración del trabajo se ha empleado el
![Page 28: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/28.jpg)
Pág. 28 Memoria
paquete oficial obtenido en su web. [9]
3.2. Interés del Bicing
La realización de este trabajo cobra sentido por el interés que supone estudiar y predecir la
reposición del Bicing de Barcelona.
En primer lugar, este proyecto principalmente puede ayudar a los diferentes operarios que
trabajan para el servicio Bicing. El hecho de poder predecir qué paradas necesitan antes la
reposición de bicicletas y prever cuales lo van a necesitar, beneficia al servicio así para
optimizar el tiempo empleado por los operarios en la reposición y también en la distribución
de las paradas. Saber cuáles son las paradas más usadas y cuáles no, puede ayudar
también a saber dónde colocar una nueva parada o cual eliminar en caso de no usarse. La
reposición idónea de las paradas sería aquella en la que el operario directamente sabe
dónde ir, de tal manera que se ahorra tiempo y optimiza su trabajo, de esta manera se
pueden reducir gastos.
El hecho de optimizar el servicio de Bicing mejora considerablemente el uso de este. Un
servicio óptimo y que garantiza a sus clientes lo mejor de él hace que el uso aumente.
Además, un aumento del uso del Bicing, disminuye el consumo de CO2, por lo que este
sería otro motivo de haber escogido el Bicing para la realización de este proyecto. Hoy en
día el uso de vehículos alimentados a partir de gasolina o gasóleo ha aumentado
considerablemente, llegados al punto de estar en alerta y poner restricciones de ZBE a la
ciudad de Barcelona. Por lo que el aumento y la promoción del uso del Bicing ayudaría a
reducir las emisiones de CO2 y tener una ciudad más limpia y ecológica.
En conclusión, estudiar la reposición del Bicing mediante la realización de un programa que
determine los futuros movimientos del Bicing y la reposición de éste haciendo uso de las
cadenas de Markov es de gran interés ya que ayudará a mejorar la reposición de las
bicicletas y ayudará a prevenir situaciones de posible saturación de bicicletas o de falta de
ellas.
3.3. Obtención de datos
Para la realización de este proyecto, la idea inicial era contactar con el sistema Bicing y que
![Page 29: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/29.jpg)
Un modelo de Markov para el servicio de reposición de bicing Pàg. 29
ellos pudieran proporcionarme los datos de movimiento de las bicicletas de un cierto día del
año.
Tras intentarlo de varias formas establecer contacto con ellos, ya sea de forma telefónica o a
través de correo electrónico, no pude obtener los datos deseados por lo que la realización
de este proyecto va a ser una simulación de unos datos que trataran de ser lo más
adecuados a la realidad.
Estos datos, han siso obtenidos a partir de toda la información que se ha podido obtener de
la página web del propio Bicing. Con estos datos se realizará un grafo a partir del cual se va
a realizar el estudio.
![Page 30: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/30.jpg)
Pág. 30 Memoria
![Page 31: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/31.jpg)
Un modelo de Markov para el servicio de reposición de bicing Pàg. 31
4. Aplicación al caso de Bicing
Una vez explicado la obtención de los datos y el porqué del motivo de aplicarlo en el servicio
Bicing, vamos con dicha aplicación.
4.1. Diseño del grafo
Para el diseño del grafo, se ha partido del número de paradas que hay de Bicing en
Barcelona. Hay un total de 519 (abril 2020) paradas repartidas por toda la ciudad con un
total de 7000 bicicletas [10]. Para realizar el grafo, se ha decidido que, en vez de monitorizar
todas las paradas, dando lugar a una matriz de 517x517 y a partir de esta una gran
complejidad en los cálculos, se ha decidido reducir el número de puntos (estados) ya que se
trata de comprender como se puede modelar este estudio. Se ha tomado como estados los
distritos, agrupando en un estado todos los datos de todos los puntos de Bicing del distrito.
Los estados son pues, los 10 distritos de Barcelona, tal y como se muestra en la siguiente
imagen.
Figura 5: distritos de Barcelona
Y seguidamente, vemos la distribución de las paradas en los diferentes distritos de la
ciudad.
![Page 32: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/32.jpg)
Pág. 32 Memoria
Tabla 1: distribución paradas
Donde se observa que los distritos con más paradas son el distrito de L’Eixample y
el de Sant Martí. Teniendo en cuenta el número de paradas y el número total de
bicicletas, podemos hacer una estimación aproximada de la distribución de las
bicicletas según el distrito.
Distrito % de bicicletas Nº de bicicletas
Ciutat Vella 12,33 863
Eixample 20,42 1429
Sants-Montjuïc 9,63 674
Les Corts 6,74 472
Sarrià-Sant Gervasi 6,94 486
Gràcia 4,24 297
Horta-Guinardó 6,74 472
Nou Barris 5,59 391
Sant Andreu 9,06 634
Sant Martí 18,31 1282
Tabla 2: distribución bicicletas
![Page 33: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/33.jpg)
Un modelo de Markov para el servicio de reposición de bicing Pàg. 33
Tras ver la distribución de bicicletas en los diferentes distritos, a cada distrito se le asignará
un número que indicará la posición en el grafo y por consiguiente en nuestra matriz.
Distrito Posición
Ciutat Vella 1
Eixample 2
Sants-Montjuïc 3
Les Corts 4
Sarrià-Sant Gervasi 5
Gràcia 6
Horta-Guinardó 7
Nou Barris 8
Sant Andreu 9
Sant Martí 10
Tabla 3: nodos
Por lo que el grafo consta de 10 nodos
Figura 6: Nodos
![Page 34: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/34.jpg)
Pág. 34 Memoria
4.2. Implementación de la Matriz adyacente al grafo
Una vez conocida la interacción entre los nodos tendremos el grafo, para ello sólo falta por
ver el movimiento entre distritos de bicicletas, y a partir de aquí, describir el grafo y asociarle
la matriz correspondiente con la que operaremos.
Los movimientos de bicicleta entre distritos están condicionados por muchos factores
distintos, ya sea por el mes del año en que estemos, influye la temperatura para coger la
bicicleta, franja horaria, la gente de noche no suele usar el sistema bicing, clima, en un día
lluvioso disminuye considerablemente el uso del bicing, entre otros factores. Estos factores
se evidencian en la evolución de los datos sobre el movimiento de bicicletas con el paso del
tiempo.
El movimiento para describir en el grafo representará la imagen final de la media de los
movimientos de bicicletas en el transcurso de varias horas considerando como unidad de
tiempo la hora. Partiendo de los datos de la página web del bicing, donde además se nos
informa que de media una bicicleta es usada 6 veces al día con una media de viaje de 13
minutos nos permite que nos hagamos una idea de los movimientos que puede realizar una
bicicleta y a que radio puede llegar validando en cierta medida los datos.
Tras la recolección de los datos simulados, el grafo con los distritos conectados debido a la
distribución quedará de la siguiente manera:
Figura 7: grafo
![Page 35: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/35.jpg)
Un modelo de Markov para el servicio de reposición de bicing Pàg. 35
Quedando los movimientos de distrito a distrito de la siguiente forma, nombrados por pnm,
donde m sería la posición inicial y n la final, quedando así formada la matriz como hemos
visto anteriormente.
Movimiento % Bicicletas Nº Bicicletas Movimiento % Bicicletas Nº Bicicletas
p12 18 155 p52 30 140
p21 27 386 p26 11 157
p13 29 250 p62 38 113
p31 18 121 p27 5 71
p110 36 311 p72 33 156
p101 24 308 p28 2 29
p23 22 314 p82 21 82
p32 31 209 p29 4 57
p24 8 114 p92 22 139
p42 42 198 p210 13 186
p25 7 100 p102 41 526
p34 17 115 p67 12 36
p43 28 132 p76 27 127
p53 15 71 p68 7 21
p45 17 80 p86 24 94
p54 31 145 p78 20 94
p56 18 84 p87 26 102
p65 19 56 p89 25 98
p57 6 28 p98 11 70
p75 11 52 p810 4 16
p910 34 216 p109 22 282
p11 17 147 p66 24 71
p22 1 15 p77 9 43
p33 34 229 p88 0 0
![Page 36: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/36.jpg)
Pág. 36 Memoria
p44 13 62 p99 33 209
p55 0 0 p1010 13 166
Tabla 4: distribución bicicletas
Una vez completada la tabla la matriz queda de la siguiente forma.
Una vez diseñada la matriz, la normalizamos dividiendo cada valor de la matriz por la suma
de la columna de la que pertenece mediante el uso del software MATLAB, con la función
‘bsxfun’ como podemos a continuación.
Obteniendo así la matriz estocástica siguiente.
![Page 37: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/37.jpg)
Un modelo de Markov para el servicio de reposición de bicing Pàg. 37
4.3. Estudio mediante Cadenas de Markov y Predicción
Una vez obtenida la matriz de transición de estados, se puede proceder al análisis de la
matriz para poder predecir el movimiento de bicicletas del bicing y prever la reposición de
éstas. Para ello, se van a realizar los siguientes pasos:
- Cálculo de valores y vectores propios de la matriz de transición.
- Búsqueda del estado estacionario.
- Análisis de resultado.
4.3.1. Cálculo de valores y vectores propios
Para el cálculo de los valores y vectores propios de la matriz de transición, usaremos el
siguiente código creado en MATLAB.
Podemos ver en las líneas de codificación, como primero de todo nombramos a la de
transición obtenida como matriz1. La nombramos porque antes de realizar el código la
hemos implementado en el programa. Una vez nombrada, calculamos los valores propios
de dicha matriz haciendo uso de la función de Matlab ‘eig’ obteniendo ‘VAPS’, ‘VEPSDir’ y
‘DiagVaps’ que respectivamente son los valores propios, la matriz S con los vectores propios
correspondientes a los valores propios de la matriz y la matriz diagonal B equivalente.
Seguidamente, se calcula la matriz de vectores propios en la que se ha normalizado el
vector propio correspondiente al valor propio 1. Finalmente, a modo de información
complementaria, mediante el uso de la herramienta Symbolic Toolbox, podemos mostrar en
función de la variable x, el polinomio característico de la matriz, nombrado en el programa
‘polCar’. Además, obtenemos un vector columna denotado como ‘coefpolCar’, que
corresponde a los coeficientes del polinomio característico.
Pasamos a continuación a mostrar los resultados obtenidos.
![Page 38: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/38.jpg)
Pág. 38 Memoria
- Valores propios de la matriz de transición de estados.
1
0.589325099389199 + 0.011423467356376i
0.589325099389199 - 0.011423467356376i
-0.422270561163934
-0.271305598211107 + 0.106483054735719i
-0.271305598211107 - 0.106483054735719i
-0.261956901600309
0.234582378528995
0.140547610616046
-0.002505746636244
Tabla 5: valores propios
Los valores propios han sido obtenidos con margen de error e16. Observamos, además,
que en efecto entre los valores propios está el valor propio 1, previsto por ser la matriz
estocástica.
- Matriz diagonal equivalente B.
Esta matriz está formada por los valores propios obtenidos, solo que ahora el margen de
error considerado es de e5 por tema de espacio. Los cálculos han sido realizados todos con
el margen de error menor, sin embargo, a largo plazo (cálculo del límite) el resultado no se
ve afectado.
![Page 39: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/39.jpg)
Un modelo de Markov para el servicio de reposición de bicing Pàg. 39
- Matriz S, con los vectores propios correspondientes, posicionados en columnas:
El vector propio en la columna 1 va asociado al valor propio de la columna 1 de la matriz
diagonal y así sucesivamente. Nótese que los valores tienen 5 decimales, los datos con
todos los decimales pueden verse en el Anexo.
- Matriz S, de vectores propios con el vector propio de valor propio 1 normalizado:
De esta matriz, la primera columna es la que proporciona información a largo plazo del
sistema.
A continuación, mostramos el polinomio característico obtenido, solo que lo pondremos en
función de λ, nomenclatura usada previamente
QD(λ) = λ10 -1.32λ9 -0.19λ8 +0.59λ7 +0.02λ6 -0.095λ5 -0.006λ4 +0.005λ3 +0.0003λ2 -0.0001λ -
0.0000002
![Page 40: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/40.jpg)
Pág. 40 Memoria
4.4. Búsqueda de la distribución estacionaria
El próximo paso a realizar es encontrar la distribución estacionaria, que nos va a indicar la
evolución a lo largo del tiempo. Para ello, mediante los resultados obtenidos anteriormente,
se debe calcular la distribución estacionaria de la Cadena de Markov.
Se quiere ver la distribución estacionaria del movimiento de las bicicletas a lo largo del
tiempo. Primero demostramos que la Cadena de Markov es regular y se encuentra esta
tendencia.
El primer paso será hacer uso de la siguiente igualdad:
Como que los valores propios distintos de la unidad son en módulo menor que la unidad el
límite de sus potencias es 0. Es decir
Por lo que obtenemos a partir de
![Page 41: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/41.jpg)
Un modelo de Markov para el servicio de reposición de bicing Pàg. 41
Vamos ahora a ver como en efecto al ir haciendo potencias de la matriz A nos vamos
acercando al límite.
Como ejemplo, vamos a ver cómo nos acercamos a este límite elevando las matrices a 10,
15 y 25.
A10= SB10S-1 =
A15= SB15S-1 =
A25= SB25S-1 =
![Page 42: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/42.jpg)
Pág. 42 Memoria
Observamos que llegamos al límite en un plazo breve de tiempo, a las 25h del inicio vemos
ya que la matriz se estabiliza y todos sus valores son iguales.
A medida que aumenta el valor de la potencia k, los valores convergen a un valor común.
No solo llegamos a la matriz estacionaria, sino que también las columnas de estas son
todas iguales y equivalentes al vector propio de valor propio 1. Por lo tanto, podemos decir
que se cumple la siguiente igualdad.
0.117820164298368
0.197262707292991
0.068830664659640
0.054579082497513
0.054568423991442
0.047006677236930
0.081665165272705
0.069011751945609
0.122495468411766
0.186759894393923
Tabla 6
Siendo el resultado obtenido igual al vector propio de valor propio 1 normalizado y p(0)
cualquier estado inicial.
Podemos asegurar que al modelar mediante la Cadena de Markov, el resultado límite
siempre es independiente del estado inicial ya que:
Si
Entonces
![Page 43: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/43.jpg)
Un modelo de Markov para el servicio de reposición de bicing Pàg. 43
Por lo tanto,
ya que si p(0) es un vector de probabilidad, también es de probabilidad y, en
consecuencia es el mismo vector y el límite es independiente de la condición
inicial.
4.5. Análisis de resultados
Observamos el resultado final obtenido.
Distribución estacionaria = (0.11782, 0.19726, 0.06883, 0.05457, 0.05456, 0.04700,
0.08166, 0.06901, 0.12249, 0.18675)
Los valores están acotados a 5 decimales, que se corresponden con el vector propio de
valor propio 1. Si cambiamos el resultado a porcentajes obtenemos los siguientes:
![Page 44: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/44.jpg)
Pág. 44 Memoria
%
11,7820164298368
19,7262707292991
06,8830664659640
05,4579082497513
05,4568423991442
04,7006677236930
08,1665165272705
06,9011751945609
12,2495468411766
18,6759894393923
Tabla 7: porcentajes
Por lo tanto, podemos concluir que los distritos que acabarán con más bicicletas en ellas
serán los de Eixample y Sant Martí, casi un 20% de bicicletas totales en cada uno de ellos.
Esto encaja perfectamente porque Eixample es el distrito céntrico de la ciudad y Sant Martí
es uno de los distritos ubicados en la zona con menos altitud de la ciudad. Por otro lado, los
distritos ubicados en la zona más alta de la ciudad tendrán una menor cantidad de bicicletas
en sus paradas, cerca de un 5% o un poco más en ellas.
Por lo que podemos decir que para la reposición de bicicletas y distribuirlas entre los
diferentes distritos, generalmente los camiones encargados de distribuirlas tendrán que
mirar que paradas están por encima de sus valores o cuáles de ellas hacen falta bicicletas y
de esta manera distribuirlas por toda la ciudad. Más o menos vemos que las paradas
acaban con un porcentaje parecido al de inicio.
![Page 45: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/45.jpg)
Un modelo de Markov para el servicio de reposición de bicing Pàg. 45
![Page 46: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/46.jpg)
Pág. 46 Memoria
5. Planificación temporal y de costes
5.1. Planificación temporal
Para la realización de este trabajo, ha sido necesaria una planificación específica, ya que
han sido unos hechos y aprendizajes concretos los que han permitido ir avanzando
adecuadamente e ir cumpliendo aquellos objetivos propuestos al inicio del planteamiento del
mismo.
El peso del trabajo es de 12 créditos, unas 300 horas aproximadamente, (considerando 25
horas el crédito), más o menos se ha empleado 3 meses en la realización de este trabajo.
Así, el trabajo ha sido planificado como se muestra a continuación:
• Búsqueda de información: 21 días.
• Tratamiento de la información: 11 días.
• Generación del Grafo y de la Matriz: 16 días.
• Validación de la Cadena de Markov: 9 días.
• Estudio predictivo: 17 días.
• Otros apartados (planificación, costes, impacto ambiental): 4 días.
• Revisión y corrección: 5 días.
• Presentación: 7 días.
De modo aproximado se ha invertido en este trabajo un total de 90 días.
![Page 47: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/47.jpg)
Un modelo de Markov para el servicio de reposición de bicing Pàg. 47
5.2. Planificación de costes
El coste que ha tenido la realización del trabajo, basándonos en el coste de Licencias,
consumo eléctrico o el de un Ingeniero Industrial viene desglosado en la siguiente tabla:
Concepto Gasto
Ingeniero Industrial 6000€
Licencia Matlab 40€
Consumo ordenador 95,84€
Ordenador 585€
Paquetes Matlab 50€
Tarifa Internet 100€
Material de oficina e impresiones 75€
Licencia Microsoft Office 135€
TOTAL 7080,84€
Tabla 8: costes
![Page 48: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/48.jpg)
Pág. 48 Memoria
![Page 49: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/49.jpg)
Un modelo de Markov para el servicio de reposición de bicing Pàg. 49
6. Impacto ambiental
El impacto ambiental, en lo que se refiere a este Trabajo Final de Grado, es prácticamente
nulo. Partiendo de la base de que el trabajo es fundamentalmente teórico, el único aparato
usado a lo largo de todo el trabajo es el ordenador. Si bien es cierto, que, siendo un impacto
pequeño, se debe tener en cuenta ya que la mayor parte de la energía generada en España
no proviene de fuentes renovables, por lo que el consumo de energía de la red eléctrica del
ordenador portátil tiene un impacto negativo ya que al ser usado durante muchas horas la
energía gastada es suficientemente alta como para tenerse en cuenta.
![Page 50: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/50.jpg)
Pág. 50 Memoria
![Page 51: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/51.jpg)
Un modelo de Markov para el servicio de reposición de bicing Pàg. 51
Conclusiones
Como he mencionado a lo largo de este trabajo el objetivo principal era el diseño y
simulación de un modelo predictivo para la optimización de la tarea del reponedor del
servicio Bicing de la ciudad de Barcelona.
Basado en este objetivo, se extraen las siguientes conclusiones:
Primero de todo indicar que se ha cumplido el objetivo principal. Se ha creado un programa
de Matlab el cual nos ha servido para que, a partir de un cierto movimiento de bicicletas al
en franjas horarias de una hora, analizar estos datos y guardar una distribución estacionaria.
El programa ha realizado correctamente la lectura de los datos, analizarlos y prever una
situación futura teniendo en cuenta solo el estado presente. Se ha visto a partir de unos
datos que el procedimiento tiene sentido y los cálculos con correctos, con lo que se puede
afirmar que se puede implementar con teniendo en cuenta todas las paradas, y en otros
sistemas de alquiler de bicicletas de otras ciudades.
A modo de resumen, primero hay que diseñar el grafo de movimientos de las bicicletas, y
una vez esto, usar la matriz asociada para modelar la Cadena de Markov. Una vez hecho,
se utiliza el programa que se ha diseñado para predecir la tendencia futura de los
movimientos de bicicletas entre paradas.
Por otro lado, a nivel académico ha supuesto un auténtico reto lograr elaborar este trabajo.
Ha supuesto un proceso de superación y aprendizaje a lo largo del trabajo a ser constante
con el trabajo y no rendirse a pesar de las adversidades. Realizar este trabajo me ha
ayudado a recordar conceptos tanto de Álgebra Lineal como de programación de Matlab,
además de aprender de nuevos que han sido necesarios para la elaboración del trabajo.
También se ha notado una mejoría del uso del programa de Matlab, pues es un software
con gran aplicabilidad en el mundo de la programación y servirá de ayuda en un futuro.
Finalmente, lo que decantó por escoger este tema fue que es un trabajo con aplicaciones a
la vida real. El poder implementar el álgebra Lineal, con conceptos abstractos, en un
ejemplo real muestra la realidad de cómo tanto el álgebra como las matemáticas en general,
están muy presentes en la vida cotidiana.
![Page 52: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/52.jpg)
![Page 53: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/53.jpg)
Un modelo de Markov para el servicio de reposición de bicing Pàg. 53
Agradecimientos
En la realización de este trabajo, primero de todo dar las gracias a mi tutora, María Isabel
García Planas, ya que sin su ayuda y paciencia no podría haber realizado este trabajo. En el
transcurso del trabajo me ha dado el apoyo cuando era necesario y siempre estaba a
disposición tanto vía correo electrónico como por teléfono. También agradecerle todo el
interés mostrado a lo largo de estos meses.
Por último, pero no menos importante, agradecer a todos mis seres más cercanos, tanto
familiares como amigos. Ellos han estado apoyándome moralmente desde el primer
momento, incluso en esos momentos en los que por motivos ajenos no podía seguir
adelante. Agradecer en especial a mi padre, que ha sido un gran apoyo a lo largo de este
trabajo y a mi hermano Carlos, sin su ayuda no podría haber logrado realizar este trabajo.
![Page 54: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/54.jpg)
Pág. 54 Memoria
![Page 55: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/55.jpg)
Un modelo de Markov para el servicio de reposición de bicing Pág. 55
Bibliografía
[1] R.B. BAPAT and T.E.S. RAGHAVAN, Nonnegative Matrices and Applications,
Encyclopedia of Mathematics and its Applications (No. 64), Cambridge University
Press, 1997.
[2] A. BERMAN, R.J. PLEMMONS, Non-negative Matrices in Mathematical Sciences,
SIAM. Filadelfia (1994).
[3] CASTRO PONCE, M., de LEÓN, M., GÓMEZ CORRAL, A. Andrei Markov, cadenas
para luchar contra las epidemias (I). Matemáticas y sus fronteras. (2020).
[4] DOMÍNGUEZ GARCÍA, J.L., GARCÍA PLANAS, M.I. Introducción a la teoría de
matrices positivas. Aplicaciones. Iniciativa Digital Politècnica, 2013.
[5] GARCÍA PLANAS, M.I., MAGRET PLANAS, M.D. Eines d’àlgebra lineal i matricial per
a l’enginyeria. Editado por las autoras. Barcelona, 2014.
[6] ZORITA MÍNGUEZ, M. Reconstrucción de trayectorias de aeronaves usando
Simulated Annealing para resolver una versión del problema del viajante (TSP). (2019).
[7] Eispack. <http://www.netlib.org/eispack/> [Consulta: 22 de junio de 2021]
[8] Linpack. <http://www.netlib.org/linpack/> [Consulta: 22 de junio de 2021]
[9] Mathworks. Matlab. <https://es.mathworks.com/products/matlab.html> [Consulta: 4 de
julio de 2021]
[10] Bicing. Datos del Bicing. <https://www.bicing.barcelona/es/datos-bicing> [Consulta: 15
de junio de 2021]
[11] Ajuntament de Barcelona <https://www.barcelona.cat/ca/> [Consulta: 1 de agostode
2021]
![Page 56: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/56.jpg)
Pàg. 56 Memòria
Anexos
- Matriz S con los vectores propios con todos los decimales
![Page 57: Un modelo de Markov para la optimización de la tarea del ...](https://reader036.fdocuments.ec/reader036/viewer/2022071303/62cccda12727233bdf1cf5b6/html5/thumbnails/57.jpg)
Un modelo de Markov para el servicio de reposición de bicing Pág. 57