PROBLEMA DEL AGENTE VIAJERO

Slides:



Advertisements
Presentaciones similares
GRAFOS HUGO ARAYA CARRASCO.
Advertisements

Teoria de grafos.-clase 4
Optimización Combinatoria usando Algoritmos Evolucionistas Problemas de Optimización. Idea: Encontrar una solución "factible" y "óptima" de acuerdo a algún.
Árbol recubridor mínimo Distancias
Diseño y análisis de algoritmos
Diplomado en Logística de Negocios
Matemáticas Discretas
Sesión 3: Teoría de Grafos
UNIDAD 2 Grafos Árboles abarcadores mínimos Caminos más cortos.
Recorridos de grafos Segunda Parte M.C. Meliza Contreras González.
U NIDAD 3 G RAFOS : C AMINOS, ISOMORFISMO Y SU COLOREO M.C. Meliza Contreras González.
GRAFOS ESTRUCTURA DE DATOS. INTRODUCCION Los grafos son estructuras de datos Representan relaciones entre objetos Relaciones arbitrarias, es decir No.
Un grafo consta de un conjunto de vértices y un conjunto de aristas. Cada arista de un grafo se especifica mediante un par de vértices. Denotemos al conjunto.
BÚSQUEDA EN ESPACIOS DE ESTADOS Espacio de estados: modelo del mundo representado por un grafo Espacio de estados: modelo del mundo representado por un.
Profesor: Mag. Ing. Pavel Aliaga E. Facultad de Ing. de Sistemas Universidad de Lima Teoría de Grafos Estructuras Discretas en Computación.
BÚSQUEDA DE SOLUCIONES Soluciones no Informadas (cont.) Dra. Myriam Hernández A.
ALGORITMO DE DIJKSTRA BANDA DÍAZ ANA KARINA SUAREZ BARON SINDY TATIANA.
Curso Sygma. Grafos Universidad San Buenaventura Cali.
EN BICI POR PALENCIA.
DESIGUALDADES CON VALOR ABSOLUTO
ROBERTO PINEDA FLORES. ALEXIS JULIAN VELAZQUEZ NAVA.
Algoritmo kruskal Es un algoritmo (ávido/voraz) de la teoría de grafos para encontrar un árbol de recubrimiento mínimo en un grafo conexo y ponderado.
PLANIFICACIÓN DE LAS RUTAS DE DISTRIBUCIÓN
ANALISIS Y DISEÑO DEL ALGORITMOS
INVESTIGACIÓN DE OPERACIONES
Análisis de Redes con gvSIG
Guía de Ejercicios 3: D&AA Universidad Viña del Mar 30/9/2002
Estructuras de Datos Recursividad.
MAESTRÍA EN CONTROL DE OPERACIONES Y GESTIÓN LOGÍSTICA
Problema de transporte método de vogel
Gestión de Operaciones
UNIVERSIDAD TECNOLOGICA INDOAMERICA INGENIERIA EN CIENCIAS DE LA COMPUTACION INTELIGENCIA ARTIFICIAL NOMBRE: NICOLAS RAMOS NIVEL: OCTAVO AMBATO - ECUADOR.
3 reglas básicas que se cumplen SIEMPRE
TEORÍA DE GRAFOS -Algoritmo de Dijkstra -Algoritmo de Primm -Algoritmo de Kruskal Integrantes:
METODO DE TRANSPORTE APROXIMACION DE VOGEL
PROGRAMACION LINEAL UNIVERSIDAD LIBRE 2016
Método de vogel PROGRAMACION LINEAL FACULTAD DE INGENIERIA
Homología Definición Dos figuras planas son homográficas cuando se corresponden punto a punto y recta a recta de modo que a cada punto y recta de una.
CAPACIDAD DE DETECCION Y CORRECCION DE ERRORES
Análisis de redes. 3.4 Problema de flujo máximo.
Búsqueda por profundidad iterativa
Teoría de Redes Ing. Douglas Vergara. Concepto básico Un arco es dirigido si permite el flujo positivo en una dirección y un flujo cero en la dirección.
Fundamentos de programación
1 INTELIGENCIA ARTIFICIAL 2018-II. Clasificación de problemas algorítmicos.
Problema de la ruta mínima
Grafos Introducción y definiciones.
Localización y planeación de trayectorias
Inteligencia Artificial
5. Optimización de redes. Integrantes: * Christian Cota * Cesar Rojo
Estructuras de Datos MC Beatriz Beltrán Martínez Primavera 2018
Algoritmo de Floyd-Warshall
Clase1: Análisis de Algoritmos, Optimización Clásica, Heurísticas
Introducción Los árboles fueron utilizados por primera vez en 1847 por Gustav Kirchhoff ( ) en su trabajo de redes eléctricas, aunque posteriormente.
Quadratic Assignment Problem
El camí més curt i estratègies per a trobar-lo
OPTIMIZACIÓN EN REDES EN ALGUNOS PROBLEMAS DE OPTIMIZACIÓN PUEDE SER ÚTIL REPRESENTAR EL PROBLEMA A TRAVÉS DE UNA GRÁFICA: ruteo de vehículos, distribución.
MC Beatriz Beltrán Martínez Verano 2018
2/22/2019 SISTEMAS NO LINEALES.
2/23/2019 TRAZADOR CUBICO SPLINE.
GRAFOS ESTRUCTURA DE DATOS. INTRODUCCION Los grafos son estructuras de datos Representan relaciones entre objetos Relaciones arbitrarias, es decir No.
Tema 5: Grafos CIS - UABJB - Estructura de Datos II
Algoritmos de caminos más cortos
Recursividad 1 Análisis de algoritmos. Matrushka La Matrushka es una artesanía tradicional rusa. Es una muñeca de madera que contiene otra muñeca más.
CAPACIDAD DE DETECCION Y CORRECCION DE ERRORES
características algoritmo algoritmo
Luis Manuel Monroy García Matemáticas discretas Ingeniería de Sistemas Universidad Simón Bolívar.
Espacio de estados: un problema se divide en un conjunto de pasos de resolución desde el inicio hasta el objetivo. Los estados y su relación de accesibilidad.
Grafos. Concepto: Un Grafo no es más que un conjunto de nodos o vértices que se encuentran relacionados con unas aristas. Además, los vértices tienen.
Ordenación Por Inserción
Investigación Operativa
Transcripción de la presentación:

PROBLEMA DEL AGENTE VIAJERO JULIAN HUMBERTO SALAZAR PINEDA COD. 1700310899 UNIVERSIDAD DE CALDAS

PROBLEMA DEL AGENTE VIAJERO ( TSP ) “ Un agente viajero, partiendo de su ciudad de origen, debe visitar exactamente una vez cada ciudad de un conjunto de ellas (previamente especificado) y retornar al punto de partida. Conociendo el coste de ir de cada ciudad a otra, determinar el recorrido de coste mínimo.”

Ha sido uno de los mas estudiados en Investigación Operativa, por lo que merece una atención especial. Cuando la teoría de la Complejidad Algorítmica se desarrolló, el TSP fue uno de los primeros problemas en estudiarse, probando Karp en 1972 que pertenece a la clase de los problemas difíciles (NP-hard)

Como una de las características del TSP es el de pertenecer a una clase de problemas muy difíciles de resolver es decir, hallar la solución óptima, en la práctica es muy común el utilizar algoritmos de aproximación (heurísticas) para obtener soluciones factibles de alta calidad (relativamente cercanas al óptimo) en tiempos de ejecución relativamente pequeños

Para enunciar el problema formalmente introducimos la siguiente terminología: Sea un grafo G=(V,A,C) donde V es el conjunto de vértices, A es el de aristas y C=(cij) es la matriz de costes. Esto es, cij es el coste o distancia de la arista (i, j). • Un camino (o cadena) es una sucesión de aristas (e1, e2, …, ek) en donde el vértice final de cada arista coincide con el inicial de la siguiente. También puede representarse por la sucesión de vértices utilizados. • Un camino es simple o elemental si no utiliza el mismo vértice mas de una vez. • Un ciclo es un camino (e1, e2, …, ek) en el que el vértice final de ek coincide con el inicial de e1. • Un ciclo es simple si lo es el camino que lo define. • Un subtour es un ciclo simple que no pasa por todos los vértices del grafo. • Un tour o ciclo hamiltoniano es un ciclo simple que pasa por todos los vértices del grafo.

Dado un grafo no dirigido, completo y con pesos, G, encontrar el ciclo de menor coste que pase por todos los nodos. 10 1 2 45 20 40 55 25 5 25 30 3 15 50 4 Ejemplo: Un cartero tiene que repartir cartas por todo el pueblo. ¿Qué ruta debe seguir para que el coste de desplazamiento sea mínimo?

Ejemplo de Ciclo Hamiltoniano

REGLAS MIOPES la solución se construye de manera progresiva. En cada iteración se tiene una solución parcial y se extiende esta solución seleccionando una de las posibles opciones. Solo considera la mejor opción en el paso siguiente sin tomar en cuenta lo ocurrido antes. Ejemplo: la heurística del vecino más cercano

VECINO MÁS CERCANO Paso 1: Comenzar con cualquier nodo como nodo inicial Paso 2: Encontrar el nodo no visitado más cercano al último nodo visitado y agregarlo al camino. Paso 3: Repetir el Paso 2 hasta que todos los nodos de la red estén contenidos en el camino. Unir el primer nodo con el último visitado.

Algoritmo Vecino más Cercano masCercanoTSP (V, E, W) Seleccionar un vértice arbitrario s para iniciar el ciclo C. v = s; Mientras haya vértices que no estén aun en C Seleccionar una arista vw de peso mínimo, donde w no está en C. Añadir la arista vw a C; v = w; Añadir la arista vs a C. Return C; Es fácil implementar este algoritmo con un tiempo de peor caso en O(n) para procesar un grafo de n vértices.

Si se ejecuta el vecino más cercano con el siguiente grafo partiendo del vértice 1, la salida es el ciclo 1, 3, 2, 4, 1, con un peso total de 85.

Eslabón más Corto En cada iteración de su ciclo principal toma una arista de peso mínimo de entre todas las aristas restantes en cualquier parte del grafo; sin embargo desechará esa arista si no es posible que pueda formar parte de un recorrido junto con las otras aristas que ya se escogieron. El subgrafo formado por las aristas ya escogidas en cualquier punto del algoritmo constituye una colección de caminos simples. No debe haber ciclos (antes del final) ni vértices en los que incidan más de dos aristas escogidas. El algoritmo termina una vez que ha procesado todas las aristas.

Algoritmo Eslabón más Corto eslabonMasCortoTSP (V, E, W) R = E; // R es las aristas restantes C = 0; // C es las aristas del ciclo Mientras R no esté vacío: Quitar la arista más ligera (más corta), vw; de R Si vw no forma un ciclo con las aristas de C y vw no sería la tercera arista de C que incide en v o w. Añadir vw a C. // Continuar el ciclo Añadir la arista que conecta que conecta los extremos del camino que está en C. return C; El tiempo de Ejecución es similar al del Algoritmo de Kruskal.

Si se ejecuta este algoritmo para el siguiente grafo, selecciona las aristas (2,3), (3,4), (1,2) y (1,4). El recorrido tiene un peso de 77.

¿ Que tan buenos son los algoritmos de Aproximación para el TSP Estas sencillas estrategias de tiempo polinómico para resolver el TSP no producen recorridos mínimos. Ya dijimos que el TSP es NP-completo, y probablemente no exista ningún algoritmo que lo resuelva en tiempo polinómico. (claro que esto no implica que las estrategias de vecina mas cercano y del eslabón más corto siempre produzcan un recorrido no óptimo; a veces sí hallan el recorrido mínimo.)

Aplicaciones más importantes del TSP Fabricación de circuitos integrados Rutas de vehículos en el ramo de la logística Recogida (robotizada) de material en almacenes Instalación de componentes en ordenadores Aparece como subproblema en otras aplicaciones Programación de tareas que se presenta en la manufactura de bienes seleccionar la ruta de los recolectores de dinero de teléfonos públicos