16
Proyecto final para la materia Optimizaci´ on II A. Isaac Pico Lara 7 de junio 2017 1

Proyecto nal para la materia Optimizaci on II · 2017. 6. 8. · En la siguiente tabla se colocan las probabilidades de no ser detenido en ese segmento. Segmento Probabilidad Segmento

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Proyecto nal para la materia Optimizaci on II · 2017. 6. 8. · En la siguiente tabla se colocan las probabilidades de no ser detenido en ese segmento. Segmento Probabilidad Segmento

Proyecto final para la materia Optimizacion II

A. Isaac Pico Lara

7 de junio 2017

1

Page 2: Proyecto nal para la materia Optimizaci on II · 2017. 6. 8. · En la siguiente tabla se colocan las probabilidades de no ser detenido en ese segmento. Segmento Probabilidad Segmento

Indice

1. Introduccion 31.1. Ruta mas corta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.2. Redes de actividad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.3. Programacion entera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.4. Comparativa entre los tres enfoques . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2. Planteamiento 5

3. Solucion 63.1. Enfoque 1 Ruta mas corta (Algoritmo de Dijkstra) . . . . . . . . . . . . . . . . . . . . 63.2. Enfoque 2 Red de actividad (Critical Path Method) . . . . . . . . . . . . . . . . . . . 103.3. Enfoque 3 Programacion entera (Metodo de ramificacion y acotamiento) . . . . . . . . 13

4. Diferencias entre los enfoques y sus semejanzas 15

5. Conclusion 15

6. Referencias 16

2

Page 3: Proyecto nal para la materia Optimizaci on II · 2017. 6. 8. · En la siguiente tabla se colocan las probabilidades de no ser detenido en ese segmento. Segmento Probabilidad Segmento

Resumen

Los problemas de redes surgen de una gran variedad de situaciones. Las redes de transporte,electricas y de comunicaciones predominan en la vida diaria. La representacion de redes se utilizaampliamente en areas tan diversas como produccion, distribucion, planificacion de proyectos, loca-lizacion de instalaciones, administracion de recursos y planificacion financiera, para nombrar tansolo algunos ejemplos. De hecho, una representacion de redes proporciona un panorama generaltan poderoso y una ayuda conceptual para visualizar las relaciones entre los componentes de unsistema, que se usa casi en todas las areas cientıficas, sociales y economicas.En el presente trabajo aborda un planteamiento de ruta mas segura desde tres enfoques distintos:ruta mas corta, como una red de actividad y como un modelo de programacion entera binaria.

1. Introduccion

Los modelos de redes y los programas de numeros enteros son aplicables para una gran variedad demodelos decision. Algunos de estos problemas de decision son realmente problemas fısicos, tales comoel transporte o flujo de bienes materiales. Muchos problemas de redes son mas que una representacionabstracta de procesos o actividades, tales como el camino crıtico en las actividades entre las redes de unproyecto gerencial. Estos problemas son ilustrados facilmente utilizando los arcos de redes, y los nodos.

Los modelos de redes son aplicables a una extensa variedad de problemas de decision, los cualespueden ser modelados como problemas de optimizacion de redes que pueden ser eficiente y efectiva-mente resueltos. Algunos de estos problemas de decision son realmente problemas fısicos, tales comoel transporte o flujo de bienes materiales. Sin embargo, muchos problemas de redes son mas que unarepresentacion abstracta de procesos o actividades, tales como el camino crıtico en las actividadesentre las redes de un proyecto gerencial.

La familia de redes de los problemas de optimizacion incluye los siguientes prototipos de modelos:Problemas de asignacion, camino crıtico, flujo maximo, camino mas corto, transporte y costo mınimode flujos. Los problemas son establecidos facilmente mediante el uso de arcos de redes y de los nodos.

¿Que es un Nodo? Es usualmente llamado vertice, o punto. Es usualmente representado por uncirculo. En las redes de transporte, estos deberıan ser las localidades o las ciudades en un mapa.

¿Que es un Arco? Es usualmente llamado borde o flecha. Este podrıa ser directo o indirecto.La cabeza es el destino, y la cola el origen. La cabeza y la cola son nodos que pueden estar tantoal origen como al final. En las redes de transporte, los arcos podrıan ser los caminos, los canales denavegacion en un rıo, o los patrones de vuelo de un avion. Los arcos proporcionan la conectividadentre los nodos. Una calle de una sola direccion podrıa ser representada por un arco, mientras que unacalle de dos direcciones podrıa representada por un arco sin direccion o por dos arcos que apuntan adirecciones opuestas.

Una red con n nodos podrıa tener tantos arcos como n!(n−2)!2! = n(n−1)

2 . Si estan dirigidos, este numeropudiese ser doble. Este enorme numero de arcos posibles es una de las razones del porque existensoluciones de algoritmos especiales para problemas de redes particulares.

1.1. Ruta mas corta

3

Page 4: Proyecto nal para la materia Optimizaci on II · 2017. 6. 8. · En la siguiente tabla se colocan las probabilidades de no ser detenido en ese segmento. Segmento Probabilidad Segmento

El problema de la ruta mas corta incluye un juego de no-dos conectados donde solo un nodo es considerado como el ori-gen y solo un nodo es considerado como el nodo destino. Elobjetivo es determinar un camino de conexiones que minimi-zan la distancia total del origen al destino. El problema seresolvera por el algoritmo de Dijkstra (algoritmo de etiqueta-do).

Se trata de encontrar la ruta de menor distancia, o costo, en-tre el punto de partida o nodo inicial y el destino o nodo termi-nal.

Por ejemplo, este tipo de planteamientos pueden ser utilizados para planear la ruta a seguir en lared del metro de la Ciudad de Mexico para hacer la menos cantidad de transbordos entre el origen yel destino.

1.2. Redes de actividad

El Metodo del Camino Crıtico (en ingles Critical Path Method CPM)es una parte de la fase administrativa de planeacion que se encarga de laprogramacion, ejecucion y control de un proyecto que deba realizarse conaprovechamiento optimo de tiempo y costos destinados al mismo. No solose denomina Camino Crıtico al sistema total, sino tambien se le llama asıa la serie de actividades, a partir de la iniciacion y hasta la terminacion delproyecto que no tienen posibilidad de variacion en su tiempo de ejecucion,ya que si una de ellas retrasara el proyecto total sufrira el mismo efecto. Tambien se entiende porcamino crıtico a la secuencia de actividades que ocupan el mayor tiempo de ejecucion del proyecto ycon lo cual definen la duracion total del mismo.

El Metodo del Camino Crıtico tiene una variada gama de aplicaciones dentro de la administracionmoderna, ademas de aquellas correspondientes a la industria de la construccion o de procesos indus-triales. Algunos de los proyectos de caracter administrativo financiero o mercadotecnico que puedenser desarrollados mediante el Metodo del Camino Crıtico son: lanzamiento de un nuevo producto almercado. Instalacion y puesta en marcha de un sistema de Computo Electronico. Preparacion delpresupuesto de una empresa. Realizacion de Auditorıas de Estados Financieros. Etc. Prevaleciendocomo caracterısticas de los proyectos el que: No sean cıclicos o repetitivos dentro del trabajo cotidiano.Se busque realizarlos con el optimo aprovechamiento de los recursos financieros, humanos y materialesdentro del tiempo programado.

1.3. Programacion entera

La programacion lineal estandar asume que las variables de decision son continuas. Sin embargo,en muchas aplicaciones los valores en fracciones podrıan generar incoherencias en la interpretacion(por ejemplo 2,5 empleados). Para esto, es conveniente utilizar la programacion entera.

Los modelos de Programacion Entera son aquellos donde la totalidad oun subconjunto de las variables de decision toman valores enteros. En estesentido la forma estandar de un modelo de Programacion Entera queda

4

Page 5: Proyecto nal para la materia Optimizaci on II · 2017. 6. 8. · En la siguiente tabla se colocan las probabilidades de no ser detenido en ese segmento. Segmento Probabilidad Segmento

definido de la siguiente forma:

Max/Min CTXs.a Ax = b

x ≥ 0Xi ∈ Z

Dentro de la programacion entera se encuentran tres tipos de modelos:

Existen multiples aplicaciones de modelos de Programacion Entera como apoyo a la toma dedecisiones. Algunas aplicaciones tıpicas son problemas de localizacion de instalaciones, inclusion de

costos fijos, problemas de asignacion, problemas de ruteo vehicular, etc.

Puro: Todas las variables deben ser enteras, como transporte, inventarios, transbordo y flujo,etc.

Mixto: Variables enteras, discretas y continuas. Puede tomar valores en los reales, como dico-tomıa, cargo fijo, restricciones en disyuncion, etc.

Binario: La variable solo indica si se toma o no, si es o no es, solo puede tomar valores de ceroy uno, como asignacion, reemplazo, etc.

1.4. Comparativa entre los tres enfoques

2. Planteamiento

Un egresado de MAC conduce diariamente hacia su trabajo. Como aca-ba de terminar un curso de Optimizacion Entera puede determinar la rutamas corta. Desafortunadamente, la ruta seleccionada esta muy patrulladapor la policıa y a las multas por manejar a alta velocidad podrıa ser quela ruta mas corta no sea la mejor eleccion. El chico decide entonces ele-gir una ruta que maximice la probabilidad de no ser detenido por la policıa.

5

Page 6: Proyecto nal para la materia Optimizaci on II · 2017. 6. 8. · En la siguiente tabla se colocan las probabilidades de no ser detenido en ese segmento. Segmento Probabilidad Segmento

En la siguiente tabla se colocan las probabilidades de no ser detenido en ese segmento.

Segmento Probabilidad Segmento Probabilidad

1,2 0.2 1,3 0.9

2,4 0.8 2,3 0.6

3,4 0.1 3,5 0.3

4,6 0.35 4,5 0.4

6,7 0.5 5,7 0.25

A continuacion se muestran tres maneras diferentes de resolver el problema, esperando llegar contodas ellas a la misma solucion.

3. Solucion

3.1. Enfoque 1 Ruta mas corta (Algoritmo de Dijkstra)

Para el problema de la ruta corta tenemos varios algoritmos, en esta oportunidad se explicara elalgoritmo de Dijkstra.

El algoritmo de Dijkstra determina la ruta mas corta desde un nodo origen hacia los demas nodospara ello es requerido como entrada un grafo cuyas aristas posean pesos. Algunas consideraciones:

Si los pesos de mis aristas son de valor 1, entonces bastara con usar el algoritmo de BFS1.

Si los pesos de mis aristas son negativos este algoritmo se vuelve ineficiente y es necesario utilizarel metodo generalizado de Dijkstra.

A continuacion se muestra el algorimo en pseudocodigo.

1 metodo D i j k s t r a ( Grafo , o r i g en ) :2 creamos una co l a de p r i o r i d a d Q3 agregamos o r i g en a l a co l a de p r i o r i d a d Q4 mientras Q no e s t e v a c o :5 sacamos un elemento de l a co l a Q llamado u6 s i u ya fue v i s i t a d o cont inuo sacando elementos de Q7 marcamos como v i s i t a d o u8 para cada v r t i c e v adyacente a u en e l Grafo :9 sea w e l peso ent re v r t i c e s ( u , v )10 s i v no ah s ido v i s i t a d o :11 Re la j ac i on ( u , v , w )

1 metodo Re la j ac i on ( ac tua l , adyacente , peso ) :2 s i d i s t a n c i a [ a c tua l ] + peso < d i s t a n c i a [ adyacente ]3 d i s t a n c i a [ adyacente ] = d i s t a n c i a [ a c tua l ] + peso4 agregamos adyacente a l a co l a de p r i o r i d a d Q

1ALGORITMO DE BUSQUEDA: BREADTH FIRST SEARCH

6

Page 7: Proyecto nal para la materia Optimizaci on II · 2017. 6. 8. · En la siguiente tabla se colocan las probabilidades de no ser detenido en ese segmento. Segmento Probabilidad Segmento

Ahora veremos como se aplica el metodo para solucionar nuestro planteamiento; Se mostraran 5iteraciones y la solucion final.

Red que representa el problema.

En este caso, al tratarse de probabilidades y al ser estas eventos mutuamente excluyentes, el metodoen este caso en particular, tomara la probabilidad mas grande y se iran multiplicando sucesivamente.

Primera iteracion.

7

Page 8: Proyecto nal para la materia Optimizaci on II · 2017. 6. 8. · En la siguiente tabla se colocan las probabilidades de no ser detenido en ese segmento. Segmento Probabilidad Segmento

Segunda iteracion.

Tercera iteracion.

8

Page 9: Proyecto nal para la materia Optimizaci on II · 2017. 6. 8. · En la siguiente tabla se colocan las probabilidades de no ser detenido en ese segmento. Segmento Probabilidad Segmento

Cuarta iteracion.

Quinta iteracion se llega a la solucion final una vez que se tienen las etiquetas permanentes.

9

Page 10: Proyecto nal para la materia Optimizaci on II · 2017. 6. 8. · En la siguiente tabla se colocan las probabilidades de no ser detenido en ese segmento. Segmento Probabilidad Segmento

Quinta iteracion se llega a la solucion final una vez que se tienen las etiquetas permanentes.

Interpretacion de resultados

Con lo que se concluye que la probabilidad es de 0.0675 siguiendo la ruta 1→ 3→ 5→ 7

3.2. Enfoque 2 Red de actividad (Critical Path Method)

El metodo CPM o Ruta Crıtica (equivalente a la sigla en ingles Critical Path Method) es fre-cuentemente utilizado en el desarrollo y control de proyectos. El objetivo principal es determinar laduracion de un proyecto, entendiendo este como una secuencia de actividades relacionadas entre sı,donde cada una de las actividades tiene una duracion estimada.

En este sentido el principal supuesto de CPM es que las actividades y sus tiempos de duracion sonconocidos, es decir, no existe incertidumbre. Este supuesto simplificador hace que esta metodologıasea facil de utilizar y en la medida que se quiera ver el impacto de la incertidumbre en la duracion deun proyecto, se puede utilizar un metodo complementario como lo es PERT.

Una ruta es una trayectoria desde el inicio hasta el final de un proyecto. En este sentido, la lon-gitud de la ruta crıtica es igual a la la trayectoria mas grande del proyecto. Cabe destacar que laduracion de un proyecto es igual a la ruta crıtica.

Con este precedente, veamos como funciona el mismo problema visto como un problema de rutacrıtica, teoricamente se deberıan llegar a los mismos resultados. De igual manera que en el caso ante-rior, se motraran 5 iteraciones del metodo y la solucion final.

Tomando las probabilidades como tiempos en la ejecucion de una actividad y partiendo de la redde actividad:

10

Page 11: Proyecto nal para la materia Optimizaci on II · 2017. 6. 8. · En la siguiente tabla se colocan las probabilidades de no ser detenido en ese segmento. Segmento Probabilidad Segmento

Red que representa el problema.

Primera iteracion.

Segunda iteracion.

11

Page 12: Proyecto nal para la materia Optimizaci on II · 2017. 6. 8. · En la siguiente tabla se colocan las probabilidades de no ser detenido en ese segmento. Segmento Probabilidad Segmento

Tercera iteracion.

Cuarta iteracion.

12

Page 13: Proyecto nal para la materia Optimizaci on II · 2017. 6. 8. · En la siguiente tabla se colocan las probabilidades de no ser detenido en ese segmento. Segmento Probabilidad Segmento

Quinta iteracion.

Solucion.

Interpretacion de resultados

Los resultados arrojados por CPM nos indican, a justamente el camino contrario al metodo deDijkstra, con una duracion total del proyecto de 1.87 y siendo la ruta crıtca a→ 2→ 4→ 6→ z

Como podemos ver, en este caso el resultado es completamente distinto, ya que trabajan de unamanera muy distinta los metodos, ahora vemos como funciona por un enfoque de programacion ente-ra.

3.3. Enfoque 3 Programacion entera (Metodo de ramificacion y acotamiento)

Para resolver el problema con ramificacion y acotamiento para binarios fue necesario hacer siguien-te tipo de razonamiento sabiendo que nuestras variables son binarias:

13

Page 14: Proyecto nal para la materia Optimizaci on II · 2017. 6. 8. · En la siguiente tabla se colocan las probabilidades de no ser detenido en ese segmento. Segmento Probabilidad Segmento

Si X1 = 1 entonces X2 = 0 ya que si se toma el camino de X1 es imposible tomar la ruta de X2.Con este razonamiento se planteo lo siguiente Si X2 = 1 entonces X1 = X4 = X3 = 0Si X3 = 1 entonces X2 = X4 = X5 = X6 = 0Si X4 = 1 entonces X2 = X3 = 0Si X5 = 1 entonces X1 = X4 = X3 = 0Si X6 = 1 entonces X6 = X3 = 0Si X7 = 1 entonces X6 = X8 = X10 = 0Si X8 = 1entoncesX6 = X7 = 0Si X9 = 1entoncesX8 = X10 = 0Si X10 = 1entoncesX9 = X7 = 0

Se menciona lo anterior para que al aplicar el algoritmo de ramificacion y acotamiento se descar-ten rapidamente las variables tomando en cuenta que se inicia con una solucion no factible con z = 0Nuestra funcion objetivo no es como la tıpica funcion de sumatoria, aquı al hablar de probabilidadesnuestra funcion objetivo se tratara del producto de cada probabilidad por la variable binaria, es decir,multiplicara unicamente las probabilidades que su variable de decision sea 1.

Como se trata de llegar de un nodo inicial a uno final se tiene que asignar valor binario a todaslas variables.

Arbol de solucion.

Interpretacion de resultados

Como podemos ver, mediante este metodo sı llegamos a la misma solucion que con el enfoque deruta mas corta siendo los mismos resultados. Por lo que se podrıa concluir que este es un metodoeficiente para resolver problemas de ruta mas corta si no se cuenta con una grafica.

14

Page 15: Proyecto nal para la materia Optimizaci on II · 2017. 6. 8. · En la siguiente tabla se colocan las probabilidades de no ser detenido en ese segmento. Segmento Probabilidad Segmento

4. Diferencias entre los enfoques y sus semejanzas

5. Conclusion

Como bien se pudo observar en el presente trabajo es posible aplicar tecnicas diferentes para unmismo fin dependiendo de la perspectiva en la que se mira el problema.

Un mismo problema se pueda interpretar como ruta mas corta entre par de nodos que como biense observo en el problema se buscaba una probabilidad alta para que el alumno evada patrullas y mul-tas. Tambien se pudo interpretar el problema como modelo binario para seleccionar que ruta tomar.Sin importar que tecnica usar se llegaron a los mismos resultados.

Se puede decir que Un problema de optimizacion consiste en minimizar o maximizar el valor deuna variable. En otras palabras, se trata de calcular o determinar el valor mınimo o el valor maximode una funcion de una variable. Se debe tener presente que la variable que se desea minimizar o ma-ximizar debe ser expresada como funcion de otra de las variables relacionadas en el problema.

En ocasiones es preciso considerar las restricciones que se tengan en el problema, ya que estas ge-neran igualdades entre las variables que permiten la obtencion de la funcion de una variable que sequiere minimizar o maximizar. En este tipo de problemas se debe contestar correctamente las siguientespreguntas:

¿Que se solicita en el problema?

¿Que restricciones aparecen en el problema?

15

Page 16: Proyecto nal para la materia Optimizaci on II · 2017. 6. 8. · En la siguiente tabla se colocan las probabilidades de no ser detenido en ese segmento. Segmento Probabilidad Segmento

La respuesta correcta a la primera pregunta nos lleva a definir la funcion objetivo.

La respuesta correcta a la segunda pregunta dara origen a (al menos) una ecuacion que sera auxiliarpara lograr expresar a la funcion deseada precisamente como una funcion de una variable

6. Referencias

TAHA, H. A. Y GONZALEZ POZO, V. Investigacion de operaciones En el texto: (Taha and Gon-zalez Pozo, 2004) Bibliografıa: Taha, H. and Gonzalez Pozo, V. (2004). Investigacion de operaciones.1st ed. Mexico: Pearson Educacion.

Monica Elizarraras. (2015). Programacion entera. 7/06/2017, de IO Sitio web:https://sites.google.com/site/optieydredesdeoptimizacion/clasificacion-de-planteamientos

http://www.noticiasnebraska.com/blog/wp-content/uploads/2015/02/alto-policia.jpg

http://www.eluniversaldf.mx/fotos/mapadelmetrodflineas.jpg

CodigodeprogramacionennuestrodocumentoLaTeXEneltexto : (perfil, 2017)Bibliograf ıa : perfil, V.(2017).CodigodeprogramacionennuestrodocumentoLaTeX.Minisconlatex.blogspot.mx.Retrieved8June2017, fromhttp : //minisconlatex.blogspot.mx/2012/04/escribir − codigo− de− programacion− en.html

16