dirección de operaciones - mi materia en...

16
Dirección de Operaciones SESIÓN # 12: Programación Integral. Segunda parte.

Upload: dangnhu

Post on 24-Sep-2018

241 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Dirección de Operaciones - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/AN/DO/S12/DO12_Visual.pdf · Enumeración parcial por ramificación y acotamiento: Este algoritmo

Dirección de Operaciones SESIÓN # 12: Programación Integral.

Segunda parte.

Page 2: Dirección de Operaciones - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/AN/DO/S12/DO12_Visual.pdf · Enumeración parcial por ramificación y acotamiento: Este algoritmo

Contextualización

Estamos a punto de concluir todo el

camino que nos propusimos al inicio

del curso, pero ya está en cada uno

de nosotros el conocer o profundizar

más los contenidos que se han

presentado a lo largo del curso.

No dudemos de la importancia de la

dirección de operaciones dentro de la

administración pues como hemos visto

a lo largo del curso es un tema de

gran actualidad y que se aplica más

de lo que imaginamos.

¿Con esto terminamos?

Page 3: Dirección de Operaciones - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/AN/DO/S12/DO12_Visual.pdf · Enumeración parcial por ramificación y acotamiento: Este algoritmo

Introducción

Dedicaremos esta sesión a

conocer, a grandes rasgos, cuatro

diferentes técnicas de solución a

problemas de programación lineal

integral o entera.

Es necesario conocer lo que se

refiere a este tipo de programación

para saber cuándo se trata de un

problema de programación lineal

entera o no y así poder utilizar la

técnica adecuada para una mejor

resolución del problema.

Page 4: Dirección de Operaciones - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/AN/DO/S12/DO12_Visual.pdf · Enumeración parcial por ramificación y acotamiento: Este algoritmo

Técnicas de solución

Programación lineal con redondeo:

Consiste en resolver el problema como si fuera de

programación lineal continua y al final redondear la

solución óptima a alguno de los valores factibles

para que éste se convierta en un número entero.

El motivo por el cual no se aconseja utilizar esta

técnica, es porque no necesariamente la solución

puede llegar a satisfacer las restricciones del

planteamiento inicial.

En el fondo lo que se hace es relajar la condición de

integralidad dentro del problema.

Explicación

Page 5: Dirección de Operaciones - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/AN/DO/S12/DO12_Visual.pdf · Enumeración parcial por ramificación y acotamiento: Este algoritmo

Enumeración total:

Este tipo de técnica tampoco es recomendable pues se puede llegar a dar el caso que las soluciones crezcan de forma exponencial.

La técnica consiste en dar solución al problema pero suprimiendo las condiciones de variables enteras. Si se llegara a dar el caso de que el óptimo si cumple con las condiciones de las variables que son enteras, entonces se trata del óptimo del problema entero.

Page 6: Dirección de Operaciones - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/AN/DO/S12/DO12_Visual.pdf · Enumeración parcial por ramificación y acotamiento: Este algoritmo

Planos de corte:

También se le conoce como la técnica de corte fraccional de Gomory.

En este caso se pretende cambiar lo que se considera como el conjunto convexo de la región factible para así lograr que los puntos extremos adecuados sean todos enteros. Se le llama plano de corte pues se hacen cortes para crear los conjuntos convexos. Este cambio que se hace en dicho conjunto, no puede cortar en ninguna de las soluciones enteras que son consideradas como factibles dentro del problema original.

Page 7: Dirección de Operaciones - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/AN/DO/S12/DO12_Visual.pdf · Enumeración parcial por ramificación y acotamiento: Este algoritmo

Enumeración parcial por ramificación y acotamiento:

Este algoritmo es un poco más complejo y por lo mismo más completo y la

metodología de resolución de esta técnica es:

Es necesario resolver el problema lineal relajado asociado. Si se llegara a

dar el caso que la solución es entera, entonces hemos encontrado la

solución óptima y si no es una solución entera, hay que iniciar el proceso

de ramificación y acotamiento.

Ramificación. Lo que se hace es crear dos subproblemas. La forma de

hacerlo es precisamente ramificando una variable.

Page 8: Dirección de Operaciones - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/AN/DO/S12/DO12_Visual.pdf · Enumeración parcial por ramificación y acotamiento: Este algoritmo

Acotación. De los subproblemas que se han creado hay que

definir una cota para cada uno, ya sea superior o inferior para la

función objetivo.

Sondeo. Si la solución es entera, entonces ya no es necesario

seguir el procedimiento de ramificación y se comprueba si la

función objetivo es mejor que la cota actual, entonces se conserva

la nueva cota. Si se llegara a dar el caso que la función objetivo es

peor que la cota actual, entonces estamos ante una solución no

factible.

Si ya se ha logrado llegar al final de las diferentes ramas,

entonces es necesario definir cuál es la solución óptima, que en

esta caso sería aquella solución que tenga mejor función objetivo.

Page 9: Dirección de Operaciones - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/AN/DO/S12/DO12_Visual.pdf · Enumeración parcial por ramificación y acotamiento: Este algoritmo

Ejemplo de ramificación y acotamiento

Max Z = 4X1 + 6X2

Sujeto a:

4X1 + 3X2 < 16

2X1 + 4X2 < 12

X1, X2 > 0

Page 10: Dirección de Operaciones - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/AN/DO/S12/DO12_Visual.pdf · Enumeración parcial por ramificación y acotamiento: Este algoritmo

En primer lugar es necesario resolver el problema a través de

alguna de las diferentes herramientas que se estudiaron dentro

de la programación lineal. En caso de que la solución óptima

cumpla con el requisito de integralidad, es decir, que al menos un

valor sea entero, no sería necesario el aplicar ninguna técnica de

la programación lineal entera.

Como en este caso la solución es: X1 = 2.9 y X2 = 1,6 para que Z

tenga un valor de 20.8

Page 11: Dirección de Operaciones - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/AN/DO/S12/DO12_Visual.pdf · Enumeración parcial por ramificación y acotamiento: Este algoritmo

La ramificación y acotamiento se dará en dos vertientes para una variable, puede ser cualquiera de las dos, en este caso sería X1 y la ramificación sería:

P1 es aproximar su valor de la solución óptima a su entero inferior más cercano para esta P1 sería 2.

P2 es aproximar su valor de la solución óptima a su entero superior más cercano en este caso será 3.

Resolviendo el problema de P1 con el nuevo valor nos da una solución óptima de X1=2, X2=2 y Z= 20.

Page 12: Dirección de Operaciones - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/AN/DO/S12/DO12_Visual.pdf · Enumeración parcial por ramificación y acotamiento: Este algoritmo

En este caso vemos que la solución óptima es menor por .80 pero esto es normal dado que se ha acotado la región factible.

Para el caso del P2 la solución óptima sería: X1=3, X2=4/3 y Z=20.

Aquí la solución óptima se da en la ramificación de P1 pues los valores de las dos variables son enteros. En el caso del P2 un valor es entero y el otro no, de ahí que la P2 no es una solución óptima a un caso de programación lineal entera.

En caso de que en ninguno de los dos casos se encontrara una solución en dónde las dos variables tengan un valor entero, sería necesario seguir ramificando y acotando de la misma manera.

En este caso concreto se buscaba que la solución fuera de un modelo integral total, es decir, que todas las variables fueran enteras.

Page 13: Dirección de Operaciones - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/AN/DO/S12/DO12_Visual.pdf · Enumeración parcial por ramificación y acotamiento: Este algoritmo

Conclusión

Hemos visto un ejemplo sencillo pero que de forma clara y práctica nos permite entender mejor el método de ramificación y acotamiento, dado que los modelos de redondeo y enumeración total en si mismos no requieren un algoritmo con varios pasos para desarrollarlo y porque el método de ramificación y acotamiento es más utilizado en la actualidad.

No olvidemos que existen herramientas computacionales que nos permiten lograr la solución a este tipo de problemas y por otra parte que no son tan recomendables estas técnicas dado que se pueden complicar los cálculos o no encontrar necesariamente la mejor solución.

Debemos tener claro y desarrollar el sentido común y sobre todo ponderar cuándo realmente es necesario aplicar estas técnicas o no dentro de la toma de decisiones.

Page 14: Dirección de Operaciones - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/AN/DO/S12/DO12_Visual.pdf · Enumeración parcial por ramificación y acotamiento: Este algoritmo

Para aprender más

Miranda, S. (2011). Branch and Bound. Consultado el 14 de julio de 2013:

http://www.youtube.com/watch?v=jAl-XtxXVV4

Ruz, J. (s/f). Modelos lineales de optimización con variables enteras. En Universidad Complutense de Madrid. Consultado el 25 de julio de 2013:

http://www.fdi.ucm.es/profesor/jjruz/MasterUned/Documentos%20en%20aLF/Tema%202.pdf

Seebach, C. (2006). Programación entera I. En Pontificia Universidad Católica de Chile. Consultado el 25 de julio de 2013:

http://intrawww.ing.puc.cl/siding/public/ingcursos/cursos_pub/descarga.phtml?id_curso_ic=375&id_archivo=15318

Page 15: Dirección de Operaciones - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/AN/DO/S12/DO12_Visual.pdf · Enumeración parcial por ramificación y acotamiento: Este algoritmo

Bibliografía

Hillier, F. y Lieberman, G. (2001) Introducción a la investigación de operaciones. (8ª edición). México: McGraw Hill.

Taha, H. (1995). Investigación de operaciones. México: Alfaomega.

Cibergrafía

Gestión de operaciones. (2011). Ejemplo del algoritmo de Branch and Bound. Consultado el 30 de julio de 2013:

http://www.gestiondeoperaciones.net/programacion-entera/ejemplo-del-algoritmo-de-branch-and-bound-ramificacion-y-acotamiento/

Page 16: Dirección de Operaciones - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/AN/DO/S12/DO12_Visual.pdf · Enumeración parcial por ramificación y acotamiento: Este algoritmo