Вы находитесь на странице: 1из 15

PROBLEMÁTICA

Al 2030 se espera que Lima aumente en 20% su número de habitantes (12 millones).
"Esto evidentemente contribuye a una mayor congestión vehicular, mayor densidad por
kilómetro cuadrado y deteriora la calidad de vida de los ciudadanos", señaló Michelle
Rodríguez, decana de la Facultad de Ingeniería de la Universidad del Pacífico.

Durante la presentación del estudio “Diseño de políticas públicas para el mejoramiento


de la logística urbana”, junto con el MIT, se reveló que el 95% de calles en Miraflores
son de un solo sentido; mientras que en Lince la complejidad logística es mayor pues el
99% de las calles son de una vía.

En ese sentido, el MIT refiere que las ciudades, en este caso, Lima, necesita desarrollar
soluciones sistemáticas para balancear las necesidades de eficiencia logística urbana de
servicios sostenible en ambientes urbanos densos.

A partir de lo expuesto, se ha considerado a la congestión vehicular existente en el distrito


de Lince como la problemática a solucionar a través de la aplicación de la Teoría de grafos
impartida en el curso de Matemática Discreta.

DESCRIPCIÓN DEL DISTRITO

El distrito de Lince es uno de los 43 distritos que conforman la Provincia de Lima, ubicada
en el departamento de Lima. Limita al norte con los distritos de Jesús María y el Cercado
de Lima (urbanización Santa Beatriz), al este con La Victoria y al sur y oeste con San
Isidro.

Lince tiene forma trapezoidal. Está compuesto por 255 manzanas, incluyendo áreas
verdes (organizadas en 9 zonas) destinado a viviendas, comercio e industria. Su intensa
actividad financiera y comercial habiéndose incrementado también los centros de estudio.

FACTORES QUE INCREMENTAN EL TRÁFICO EN LAS CALLES DE LINCE

 Parque automotor

Según la investigación de la empresa Arellano marketing, el 32% de los ciudadanos


considera que uno de los principales problemas del tráfico es la excesiva cantidad de
vehículos. Al respecto, Rolando Arellano consideró que Lima no está preparada para
soportar tal volumen vehicular, que cada año ha ido en aumento. Solo en el 2012 se
vendieron más de 190 mil vehículos en el país y en el 2013 esta cifra aumentó en 19,964
unidades. Además, la mayoría de los vehículos se quedan en la capital según detalló la
Asociación de Representantes Automotrices del Perú.

 Las retenciones en la ciudad

Las calles de una ciudad se ven además afectadas por elementos como paradas de autobús
o plazas de aparcamiento, peatones, taxis, semáforos, etc. Cada vez que un bus se para a
recoger a una persona o un coche se detiene para realizar un estacionamiento se forma
una pequeña retención.

 Accidentes en las vías

El tráfico puede estar provocado por incidentes como averías de vehículos, accidentes,
derramamientos de objetos en la calzada, lluvia, etc. Estos hechos provocan que
disminuya la capacidad de circulación en un punto de la carretera. Los coches se van
acumulando, empiezan a hacer adelantamientos para esquivar los obstáculos y se termina
formando un embudo.

FUNDAMENTO TEÓRICO

1. TEORÍA DE GRAFOS

La teoría de grafos es una de las áreas de la matemática cuyo desarrollo ha estado siempre
motivado por sus aplicaciones. Así, el primer artículo conocido sobre la misma fue escrito
por Euler y publicado en 1736 para dar solución al célebre problema de “los puentes de
Königsberg”. La situación era la siguiente: ¿es posible encontrar una ruta en la ciudad
que recorra los siete puentes, cruzando cada uno de ellos una sola vez y regresando al
punto de partida? Euler demostró que no era posible puesto que el número de líneas que
inciden en cada punto no es par (condición necesaria para entrar y salir de cada punto
regresando al punto de partida por caminos distintos en todo momento). Así surgió el
concepto de grafo euleriano que, informalmente hablando, es aquel grafo que puede ser
dibujado sin levantar el lápiz el papel, sin pasar dos veces por la misma línea y acabando
en el punto de partida. A partir de tal fecha muchos matemáticos importantes han
realizado contribuciones en este campo.

Desde sus orígenes la teoría de grafos se utilizó para la resolución de juegos matemáticos,
para el estudio de circuitos eléctricos y en diversas aplicaciones en una multitud de
campos tan diferentes como la economía, física teórica, psicología, física nuclear,
lingüística, sociología, zoología, tecnología , antropología computación, biología,
ingeniería, química, etc.

En la actualidad, la teoría de grafos sigue aplicándose dentro y fuera de las matemáticas


y continúa siendo una rama de investigación muy activa. Las aplicaciones de la teoría de
los grafos en la informática (por ejemplo, para la representación de datos o diseño de
redes) han despertado interés en aspectos concretos de la teoría, como pueden ser la
búsqueda de algoritmos adecuados para la exploración de grafos.

1.1. CONCEPTO DE GRAFO

Sea 𝑉 el conjunto no vacío de vértices o nodos y 𝐸 el conjunto de lados o aristas (pares


de vértices); se dice que 𝐺 es un grafo, si 𝐺 = (𝑉, 𝐸) es una estructura de datos
compuesta por esos dos conjuntos 𝑉 y 𝐸 que forman un conjunto de pares ordenados
o desordenados de vértices o nodos. Los pares de vértices van entre paréntesis y los
pares desordenados, pondrán entre llaves.

1.2. CLASIFICACIÓN DE LOS GRAFOS

Grafo dirigido

Un grafo dirigido 𝐺, también llamado “dígrafo o digrafo”, consta de un conjunto 𝑉 de


vértices y un conjunto 𝐸 de aristas tales que cada arista 𝑒 de 𝐸 se asocia con un par
ordenado de vértices. Si existe una única arista 𝑒 asociada con el par ordenado (𝑣, 𝑤)
de vértices, escribimos 𝑒 = (𝑣, 𝑤) lo cual denota una arista de 𝑣 a 𝑤.

En conclusión, se puede afirmar que un grafo dirigido es aquel que tiene uniones
unidireccionales que suelen dibujarse con una flecha.
Un grafo dirigido es aquel que tiene todas sus aristas dirigidas; es decir, un dígrafo está
asociado a un par ordenado. Por ejemplo, si 𝑤 es vértice de partida y 𝑣 es vértice de
llegada, entonces la arista se asocia a la pareja ordenada (𝑤, 𝑣), que es diferente de
(𝑣, 𝑤).

Los vértices de donde parten las aristas se denominan vértices salientes y los vértices
a donde llegan las aristas se llaman vértices entrantes.

Grafo no dirigido

Un grafo no dirigido consta de un conjunto de vértices y un conjunto 𝐸 de aristas tal


que cada arista 𝑒 de 𝐸 queda asociada a un par no ordenado de vértices. Si existe una
única lista e asociada con los vértices 𝑣 y 𝑤, escribimos 𝑒 = (𝑣, 𝑤) ó 𝑒 = (𝑤, 𝑣). En
este contexto, (𝑣, 𝑤) denota una arista entre 𝑣 y 𝑤 en un grafo no dirigido y no un par
ordenado.

En conclusión un grafo no dirigido es aquel en el cual sus aristas son direccionales, es


decir, si una arista conecta dos nodos A y B se puede recorrer tanto en sentido hacia B
como en sentido hacia A. Sus aristas son no dirigidas; es decir, un dígrafo está asociado
a un par desordenado.

Grafo dirigido con peso

Es aquel grafo dirigido en el que sus aristas tienen una etiqueta. Una etiqueta puede
ser un nombre, costo o un valor de cualquier tipo de dato. También a este grafo se le
denomina red de actividades, y el número asociado al arco se le denomina factor de
peso. Se usa en el modelado de problemas de la vida real; por ejemplo, al tiempo que
se tardará en realizar una actividad determinada o la distancia que hay de un lugar a
otro.

Grafos particulares
 Grafo conexo. Es aquél grafo en que existe camino simple entre cualquier par de
vértices. Es decir, desde cualquier vértice 𝑣 tiene al menos un camino para llegar
al vértice 𝑤. También llamado grafo conectado.
 Grafo disconexo. Un grafo 𝐺 es disconexo, si dos o más de sus nodos no están
conectados por caminos simples.
 Grafo regular. Es un grafo 𝐺 conexo cuyos vértices tienen el mismo grado.
 Grafo completo. Un grafo 𝐺 dirigido o no dirigido (simple) es completo si cada
vértice es adyacente a los demás vértices del grafo. Es decir, entre cada par de
nodos 𝑣 y 𝑤 existe una arista de 𝑣 hacia 𝑤 y de 𝑤 hacia 𝑣 (forzosamente tendrán
que cumplirse ambas condiciones). Todo grafo completo es regular; pero no el
recíproco.

1.3. TERMINOLOGÍA DE GRAFOS

Trayectoria o camino

Corresponde a los vértices por los cuales hay que pasar para ir desde un vértice 𝑤 hacia
un vértice 𝑣. Es decir un camino entre dos vértices es una lista de vértices que están
conectados por una arista del grafo.

Para que un camino o trayectoria exista es condición necesaria que las aristas sobre la
trayectoria existan sobre el conjunto de aristas que definen el grafo.

Camino Simple

Existe camino simple cuando todos sus vértices, excepto tal vez el primero y el último,
son distintos.

Ciclos

Un ciclo (también llamado circuito) es un camino simple de longitud mínimo 1 que


empieza y termina en el mismo vértice; es decir, es una trayectoria simple en la cual
el primero y el último vértices son el mismo.
Ciclos y Caminos Especiales

 Camino de Euler. Se dice que un grafo 𝐺 conexo tiene camino de Euleriano si su


trayectoria incluye todas las aristas una y solo una vez.
 Ciclo o circuito de Euler. Un grafo 𝐺 conexo tiene al menos un ciclo Euler si se
recorren todas las aristas del grafo 𝐺 exactamente una vez, excepto la arista inicial
y la final (que son las mismas). Es decir, un grafo 𝐺 tiene un circuito de Euler, si
puede pasar por todas las aristas sin repetir arista.

1.4. APLICACIONES DE LA TEORÍA DE GRAFOS

La teoría de gráficas o teoría de grafos es aplicada entre otras, en áreas tales como
ciencias sociales, ciencias físicas, ingeniería de comunicación; pero, básicamente
juega un papel importante en las ciencias de la computación, tales como inteligencia
artificial, lenguajes formales, teoría de cambio y lógica de diseño, gráficos por
computadora, sistemas operativos, compiladores, y organización y recuperación de
información, en lo que respecta al modelado de problemas, indicando sus
características de manera muy objetiva.

Entre otras aplicaciones se utiliza para:

 Cartografía (coloreado de mapas)


 Modelado matemático
 Determinación de tiempos en el desarrollo de proyectos
 Urbanistas
 Programación de exámenes en una institución educativa
 Programación de horarios en una entidad cualquiera
 Programación de distribución de servicios públicos (recolección de basuras en una
ciudad, red de acueducto, de alcantarillado y de gas)
 Diseño de boards o tarjetas plásticas para dispositivos electrónicos. Redes de
computadores

2. ALGORITMO DE DIJKSTRA
El Algoritmo de Dijkstra, también denominado Algoritmo de caminos mínimos, es un
modelo que se clasifica dentro de los algoritmos de búsqueda. Su objetivo, es determinar
la ruta más corta, desde el nodo origen, hasta cualquier nodo de la red. Su metodología se
basa en iteraciones, de manera tal que en la práctica, su desarrollo se dificulta a medida
que el tamaño de la red aumenta, dejándolo en clara desventaja, frente a métodos de
optimización basados en programación matemática.

Este algoritmo, al igual que el método de Floyd, tienen la capacidad de resolver el


problema de la ruta más corta, tanto para redes cíclicas, como para redes acíclicas. De
manera tal que los bucles que presente una red, no restringen el uso del algoritmo.

El algoritmo de Dijkstra hace uso y define etiquetas a partir del nodo origen y para cada
uno de los nodos subsiguientes. Estas etiquetas contienen información relacionada con
un valor acumulado del tamaño de los arcos y con la procedencia más próxima de la ruta.

Las etiquetas corresponden a los nodos, no a los arcos. En el algortimo de Dijkstra, estas
etiquetas son temporales y permanentes. Las etiquetas temporales son aquellas que son
susceptibles de modificarse mientras exista la posibilidad de hallar para sí, una ruta más
corta; de lo contrario, dicha etiqueta pasa a ser permanente.

Etiqueta = [acumulado, nodo procedente] iteración

Es necesario considerar, que los valores utilizados en los arcos de la red objeto de estudio
del algoritmo de Dijkstra, no necesariamente representan distancias. Si bien, es un modelo
que aborda el denominado "problema de la ruta más corta"; en la práctica, puede utilizarse
para optimizar: distancia, costos, tiempo.

De hecho, los sistemas de ruteo utilizados en la actualidad, priorizan los costos y el tiempo
como variable decisión de los modelos de optimización.

Ejemplo:

Teniendo en cuenta la siguiente red, que tiene como origen el nodo 1:


Procedemos con las iteraciones, partimos de la iteración 0, es decir, asignar la etiqueta
para el nodo origen:

Iteración 0

En este paso, asignamos una etiqueta permanente para el nodo origen. Recordemos que
la etiqueta se compone por un valor acumulado, que en este caso debe ser 0, ya que es el
punto base y que no existe procedencia:

Etiqueta nodo 1 = [valor acumulado, procedencia] iteración

Etiqueta nodo 1 = [0, -] 0

Iteración 1

En este paso, evaluamos a cuáles nodos se puede llegar desde el nodo 1. En este caso se
puede llegar a los nodos 2 y 3. De manera que debemos asignar las etiquetas para cada
nodo:

Etiqueta nodo 2 = [valor acumulado, procedencia] iteración

Etiqueta nodo 2 = [0 + 100, 1] 1

0 es el valor acumulado en la etiqueta del nodo de procedencia, en este caso el valor


acumulado para el nodo 1. 100 es el valor del arco que une el nodo procedencia (1) y el
nodo destino (2). 1 es el número de la iteración.

Etiqueta nodo 3 = [valor acumulado, procedencia] iteración

Etiqueta nodo 3 = [0 + 30, 1] 1

En este caso, podemos observar que la etiqueta del nodo 3, ya contiene el menor valor
acumulado posible para llegar a este. Ya que 30 es la mínima distancia posible, toda vez
que para llegar al nodo 3 por medio del nodo 2, tendrá que recorrer como mínimo el valor
absoluto del arco que une el origen con el nodo 2 = 100. Así entonces, la etiqueta del
nodo 3 pasa a ser permanente.

Tabulamos la iteración 1:

Iteración 2:

En este paso, evaluamos las posibles salidas desde el nodo 3, es decir los nodos 4 y 5. De
manera que debemos asignar las etiquetas para cada nodo:

Etiqueta nodo 4 = [valor acumulado, procedencia] iteración

Etiqueta nodo 4 = [30 + 10, 3] 2

Etiqueta nodo 4 = [40, 3] 2

30 es el valor acumulado en la etiqueta del nodo de procedencia, en este caso el valor


acumulado para el nodo 3. 10 es el valor del arco que une el nodo procedencia (3) y el
nodo destino (4). 2 es el número de la iteración.

Etiqueta nodo 5 = [valor acumulado, procedencia] iteración

Etiqueta nodo 5 = [30 + 60, 3] 2

Etiqueta nodo 4 = [90, 3] 2


30 es el valor acumulado en la etiqueta del nodo de procedencia, en este caso el valor
acumulado para el nodo 3. 60 es el valor del arco que une el nodo procedencia (3) y el
nodo destino (5). 2 es el número de la iteración.

En este caso, podemos observar que la etiqueta del nodo 4, contiene el menor valor
acumulado posible para llegar a este. Así entonces, la etiqueta del nodo 4 pasa a ser
permanente.

Tabulamos la iteración 2:

Iteración 3:

En este paso, evaluamos las posibles salidas desde el nodo 4, es decir los nodos 2 y 5. De
manera que debemos asignar las etiquetas para cada nodo:

Etiqueta nodo 2 = [valor acumulado, procedencia] iteración

Etiqueta nodo 2 = [40 + 15, 4] 3

Etiqueta nodo 2 = [55, 4] 3

40 es el valor acumulado en la etiqueta del nodo de procedencia, en este caso el valor


acumulado para el nodo 4. 15 es el valor del arco que une el nodo procedencia (4) y el
nodo destino (2). 3 es el número de la iteración.

Etiqueta nodo 5 = [valor acumulado, procedencia] iteración


Etiqueta nodo 5 = [40 + 50, 4] 3

Etiqueta nodo 5 = [90, 4] 3

40 es el valor acumulado en la etiqueta del nodo de procedencia, en este caso el valor


acumulado para el nodo 3. 50 es el valor del arco que une el nodo procedencia (4) y el
nodo destino (5). 3 es el número de la iteración.

En este caso, podemos observar que el nodo 2 ahora cuenta con 2 etiquetas temporales, y
definitivas, ya que no existe otra ruta hacia dicho nodo. De manera que se elige la etiqueta
que tenga el menor valor acumulado. Así entonces, la etiqueta del nodo 2 con procedencia
del nodo 4, pasa a ser permanente.

Tabulamos la iteración 3:

Iteración 4:

En este paso, evaluamos las posibles salidas desde el nodo 2 y el nodo 5. Sin embargo, el
nodo 2 solo tiene un posible destino, el nodo 3, el cual ya tiene una etiqueta permanente,
de manera que no puede ser reetiquetado. Ahora, evaluamos el nodo 5 y es un nodo que
no tiene destinos. Así entonces, su etiqueta temporal pasa a ser permanente, en este caso
cuenta con 2 etiquetas que tienen el mismo valor, es decir, alternativas óptimas. De esta
manera concluye el algortimo de Dijkstra.

¿Cuál es la ruta más corta?

La ruta más corta entre el nodo 1 (origen) y cualquier otro nodo de la red (destino), se
determina partiendo desde el nodo destino y recorriendo las procedencias de sus etiquetas.
Por ejemplo:

¿Cuál es la ruta más corta entre el nodo 1 y el nodo 4?

En este caso, debemos partir desde la etiqueta del nodo 4.

La ruta más corta entre el nodo 1 y el nodo 4 tiene un valor acumulado de: 40
3. SOFTWARE EMPLEADO EN LA SOLUCIÓN DE LA PROBLEMÁTICA

Grafos

Este software pretende ser de utilidad para la docencia y el aprendizaje de la teoría de


grafos (graph theory), y otras disciplinas relacionadas como la ingeniería de organización
industrial, la logística y el transporte, investigación operativa, el diseño de redes, etc.
Grafos se puede usar perfectamente para el modelado y resolución de problemas reales
de cierto tamaño y complejidad.

Un grafo representa un modelo de una realidad empresarial en forma de red. Este modelo
podrá ser analizado desde distintos puntos de vista gracias a los algoritmos y funciones
incorporados en el software Grafos. Independientemente de sus conocimientos actuales
sobre la materia, la información recogida en estas páginas y el libro serán un buen punto
de partida para el aprendizaje en mayor profundidad de la teoría de grafos y su aplicación
en la realidad empresarial e industrial.
La idea

La filosofía de Grafos es la siguiente: “dibujar, modelar, resolver y analizar”. Con esto


se pretende que el usuario tenga libertad absoluta para tratar y abordar los problemas de
grafos. Grafos avisara al usuario en caso de no factibilidad o de cualquier otro
requerimiento para un análisis en particular.

Los estudiantes que usen Grafos experimentarán un proceso de aprendizaje basado en su


libertad y en etapas de prueba-error. Esa libertad en la utilización del programa y su
filosofía de aprendizaje, fue la idea inicial y la inquietud que originó este proyecto. Otros
programas existentes guían al usuario paso a paso, descartando de entrada su libertad de
elección y construcción.

El proyecto

Grafos comenzó en el año 2003 como parte de un proyecto de investigación y desarrollo


de aplicaciones informáticas de diseño modular orientadas hacia la docencia, la
investigación y las labores profesionales de ingeniería de organización industrial. El
desarrollo está orientado hacia los siguientes objetivos:

 Desarrollar un interfaz para la construcción y edición de grafos en modo tabular


o gráfico, y que permita la incorporación modular de multitud de funciones.

 Desarrollar una estructura de clases y librerías con un conjunto de algoritmos de


resolución de diferentes problemas de teoría de grafos.

 Redactar y publicar un completo manual de usuario actualizado a la última versión


disponible.

Actualmente, el proyecto Grafos sigue en activo, en proceso de programación de nuevos


algoritmos, la incorporación de nuevas funciones y la redacción de documentación
actualizada. Si lo desea puede conocer el estado del desarrollo, sumarse a este proyecto
compartiendo el desarrollo y otras experiencias relacionadas. De antemano, gracias.

El autor

Todo el material del que se dispone en el sitio web (software, textos, imágenes, casos,
etc.) ha sido desarrollado por Alejandro Rodríguez Villalobos y se distribuye bajo licencia
Creative Commons Licenses (by-nc-sa). Tiene información detallada en el apartado
Licencia.
Bibliografía:
B. Salazar, Ingeniería Industrial, Algoritmo de Dijkstra, recuperado de:
https://www.ingenieriaindustrialonline.com/herramientas-para-el-ingeniero-
industrial/investigacion-de-operaciones/algoritmo-de-dijkstra/
A. Menéndez, SUMA, Una breve introducción a la teoría de grafos, 28, 11-26 (1998),
recuperado de https://revistasuma.es/IMG/pdf/28/011-026.pdf
A. Rodriguez, Grafos - software para la construcción, edición y análisis de grafos,
recuperado de http://arodrigu.webs.upv.es/grafos/doku.php?id=inicio

Вам также может понравиться