Programacion Entera (Finalizado) PDF

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 24

Página 1 de 24

INSTITUTO TECNOLÓGICO SUPERIOR


DE CINTALAPA.

CATEDRÁTICO:
NELSON ARCHILA LÓPEZ

INVESTIGACIÓN DE OPERACIONES

UNIDAD 3: PROGRAMACIÓN ENTERA

REPORTE DE INVESTIGACIÓN

ING. IND.

SEMESTRE:”4” GRUPO:”B”

INTEGRANTES:
JOSÉ ISAACK VELÁZQUEZ MENDOZA.
GUILLERMO CRUZ MOTA.
HERNÁN CABRERA HERNÁNDEZ.
JOSÉ ALBERTO OVANDO VÁZQUEZ.
JOSÉ TOMÁS ESPEJO CRUZ.
PABLO BARRAGÁN VILLA.
REYNOL GERARDO PÉREZ DÍAZ

CINTALAPA DE FIGUEROA CHIAPAS; A 27 DE MAYO DEL 2018.


Página 2 de 24

INTRODUCCIÓN:
La problemática de la programación entera radica mucho con la programación lineal
simple, ya que como bien se sabe se hacen diferentes formas para hacer y
desarrollar funciones con sus debidas restricciones principalmente con maximizar y
minimizar sobre la región de factibilidades. Al usar la programación entera se
maximiza una función sobre una región de factibilidad que generalmente no es
convexa como bien se entiende que la programación entera tiene más
complicaciones que la programación lineal simple.
La investigación de operaciones o investigación operativa o investigación
operacional (conocido también como teoría de la toma de decisiones o
programación matemática) es una rama de la administración que consiste en el uso
de modelos matemáticos, estadísticos y algorítmicos con objeto de realizar un
proceso de torno de decisiones. Esto frecuentemente trata del estudio complejo de
los sistemas reales, con la finalidad de mejorar u optimizar su funcionamiento.
Entonces es así como las Investigaciones de Operaciones permiten el análisis de la
toma de decisiones teniendo en cuenta la escasez de recursos, para determinar
cómo se puede optimizar un objetivo definido, como la maximización de los
beneficios o minimización de los costos de nuestra producción.
Página 3 de 24

ÍNDICE: Pág.

-UNIDAD 3: PROGRAMACIÓN ENTERA……………………………….…4

3.1- INTRODUCCIÓN Y CASOS DE APLICACIÓN……………………..…….…4

3.2- DEFINICIÓN Y MODELOS DE PROGRAMACIÓN


ENTERA……………………………………………………..…………….….…….…8

3.3- MÉTODO GRÁFICO DE PROGRAMACION ENTERA…………………....10

3.4- MÉTODO DE RAMIFICACION Y ACOTACION…………………….….…..12

3.5- METODO HEURISTICO PARA PROBLEMAS BINARIOS…….…………16

3.6- USO DE SOFTWARE…………………………………….………….…..…….19

CONCLUSION…………………………………………………..……….….………..23

BIBLIOGRAFÍA………………………………………………..…………..…………24
Página 4 de 24

UNIDAD 3 - PROGRAMACIÓN ENTERA


3.1 INTRODUCCIÓN Y CASOS DE APLICACIÓN.

Es frecuente al tener que resolver problemas en los cuales las soluciones tienen
que ser valores enteros como, por ejemplo: números de unidades a producir por
máquina, número de máquinas necesarias, etc. Parte del problema de la
programación entera radica en la diferencia esencial que existe la programación
lineal y la entera, en la programación lineal se maximiza o minimiza una función
sobre una región de factibilidad convexa, mientras que al usar los métodos de
programación entera se maximiza una función sobre una región de factibilidad que
generalmente no es convexa. De tal manera que la programación entera tiene más
complicaciones que la programación lineal.

En este tema se presenta un tipo de problemas formalmente similares a los


problemas de Programación Lineal, ya que en su descripción solo se establecen
expresiones lineales. Sin embargo, no responden a problemas lineales ya que
algunas (o todas) las variables del problema toman valores que no están en un
conjunto continuo. Por ejemplo, pueden ser variables que toman valores 0 o
1(binarias), 0 variables que toman valores enteros no negativos (0, 1, 2,), etc. Tras
introducir el tipo de problemas se dedica un importante apartado para presentar las
posibilidades de modelado que esta herramienta proporciona: problemas binarios,
problemas de carga, problemas con restricciones condicionales o con dicotomías,
etc.

Tras dedicar una parte importante del tema a presentar estas herramientas de
modelado y a plantear numerosos problemas con ellas se procede a mostrar dos
métodos de resoluci6n. Uno de ellos dedicado a problemas en los que todas las
variables son binarias y otro para problemas generales. Ambos métodos tienen en
común que desarrollar un proceso de enumeración que permite comprobar explícita
o implícitamente todas las soluciones del problema hasta encontrar la Óptima, y
entran dentro del tipo de métodos de ramificación y acotación.

En algunos casos se requiere que la solución Óptima se componga de valores


enteros para algunas de las variables. La resolución de este problema se obtiene
Página 5 de 24

analizando las posibles alternativas de valores enteros de esas variables en un


entorno alrededor de la solución obtenida considerando las variables reales.
Muchas veces la solución del programa lineal truncado está lejos de ser el Óptima
entero, por lo que se hace necesario usar algún algoritmo para hallar esta solución
de forma exacta. El más famoso es el método de “Ramificación y Acotación' o
“Branch and Bound” por su nombre en inglés. El método de Ramificación y
Acotación, parte de la adición de nuevas restricciones para cada variable de
decisión (acotar) que al ser evaluado independientemente (ramificar) lleva al Óptima
entero.
La programación entera se divide en 3 tipos de modelos:

 Programación Entera Pura: Todas las variables de decisión tienen valores


enteros.
 Programación Entera Mixta (PEM): Algunas de las variables de decisión
tienen valores enteros. Las demás cumplen con la suposición de divisibilidad.
 Programación Entera Binaria (PEB): Utiliza variables binarias.

CASOS DE APLICACIÓN.

A continuación, se presenta la variedad de problemas que caen dentro de la


programación entera y binaria:

 Todos Ios problemas de programación lineal, donde Ias actividades, por su


estructura deben ser no-divisibles, son programas enteros. Por ejemplo,
problemas de producción de automóviles, prendas de vestir, etc. ¿Que
significado tendría la producción de 577.83 automóviles?
 Todos los problemas de transportes, asignación y redes de optimización.
Este tipo de problemas son enteros y dada la estructura tan especial de estos
problemas, tienen métodos de solución propios.
 Problemas de secuenciación. Este tipo de problemas, aunque son fáciles de
formular, resultan bastantes difíciles de resolver. Se supone por ejemplo en
el caso de un taller que puede efectuar un solo tipo de trabajo a la vez (orden),
el que se tiene contratado a entregar en g días, a partir de una cierta fecha
base, y que además, tiene una gran duración de trabajo de d. (d. > 0) días y
al cuales asocian una multa de p. pesos por día de retrasos después de los
g. días estipulados. Se supone que el taller recibe n órdenes de trabajo en la
Página 6 de 24

lecha base. @Cual debe ser el orden de secuenciación de trabajos que


minimice el costo penal total?
 El problema del agente viajero. Este problema concierne en un agente viajero
que saliendo de una terminal de ciudad debe visitar una sola vez n-l ciudades
diferentes, y regresar al punto de partida. Si el costo de dirigirse a la ciudad j
desde la ciudad 1' es: 1 (q a q), se debe terminar la secuencia de visita de
ciudades, tal que el costo total asociado sea el mínimo. Este problema se
presentó por primera vez en 1960, en un artículo de Miller, Tucker, Zemling,
pero hay una variedad de métodos que resuelven el problema dependiendo
del tamaño de: 1, el número de ciudades.
 Problema tipo mochila. Este tipo de problemas de optimización de carácter
entero puede darse en dos versiones. En la primera se proporciona un cierto
espacio con determinado volumen o capacidad, y este debe ser llenado con
objetos de valor y volumen o capacidades especificados. El problema
consiste en llenar ese espacio con el conjunto de objetos más valioso, sin
exceder los límites físicos de dicho espacio. La segunda versión consiste en
dividir a un objeto en varias porciones de diferente valor, el problema consiste
en encontrar la división de mayor valor.
 Problemas de inversión. Se supone por ejemplo que el organismo Nacional
Financiera S.A, tiene que escoger una alternativa en cada uno de tres
proyectos de inversión. El primer proyecto está relacionado con la
construcción de panes de generadores eléctricos. El segundo proyecto con
el ensamblado de esas partes de generadores eléctricos y el tercer proyecto
con la distribución y venta de los generadores eléctricos incluyendo a su
posible exportación. Cada proyecto tiene una serie de alternativas.
Asociadas a cada alternativa se tiene calculado el valor presente del retorno
total de la inversión (en millones de pesos), el número de empleos que se
generan y el flujo de inversión (en millones de pesos) que se necesitan para
los próximos 5 años. Las restricciones del sistema son que no hay capacidad
económica para generar más de 10 mil empleos y que los flujos máximos de
capital son 700 millones en el año 1, 300 millones en el año 2, 150 millones
Página 7 de 24

respectivamente en los años 3,4 y 5. ¿Qué alternativas conviene seleccionar


de los proyectos I, II y III a fin de maximizar el ingreso total neto anual?
 Problemas con costos fijos. Todos Ios problemas que en su función de costo
influyen un costo fijo. Este tipo de costos aparecen frecuentemente en
problemas de transportes, inventarios, localización de plantas, distribución
geográfica de electores, etc.
 Problemas de cubrimiento y partición de un conjunto. Este tipo de modelos
de carácter entero se ha utilizado en problemas de acceso de información,
programación de entrega de paquetería por transporte terrestre, distribución
política electoral, problemas matemáticos de coloración y programación de
horarios de tripulación aéreos, ferrocarrileros, terrestres y marítimos.
 Dicotomías y problemas de aproximación. Una dicotomía ocurre en un
programa matemático cuando se tienen condiciones de tipo esta restricción
o la otra restricción, pero no ambas. Este tipo de condiciones se pueden
representar por medio de una estructura entera.
 Balance de líneas de producción. Este tipo de problemas consisten en decidir
qué actividades deben se desempeñadas por cada trabajador, a medida que
un producto se desplaza por una línea de producción.
Página 8 de 24

3.2 DEFINICIÓN Y MODELOS DE PROGRAMACIÓN ENTERA


Un modelo de programación entera es un modelo que contiene restricciones y una
función objetivo idénticas a las formuladas por planeación lineal. La única diferencia
es que una o más de las variables de decisión tienen que tomar un valor entero en
la solución final.
Existen tres tipos de modelos de programación entera:
Pura, Binaria, Mixta
PROGRAMACIÓN ENTERA PURA.
Un modelo entero puro (PLE) es, como su nombre lo indica, un problema en el que
se exige que todas las variables de decisión tengan valores enteros. Por ejemplo

PROGRAMACIÓN ENTERA MIXTA


DEFINICIÓN:

Un modelo de programación entera es aquel que contiene restricciones y una


función objetivo idénticas a las formuladas en programación lineal, la única
diferencia en que una o más variables de decisión deben tomar valor entero en
la solución final.
Algunas de las variables de decisión tienen valores enteros. Las demás cumplen
con la suposición de divisibilidad.
Un problema en el que solo se requieren que algunas variables tengan valores
enteros mientras que otras pueden asumir cualquier número no negativo (es decir,
cualquier valor continuo) se llama programación lineal entera mixta (PLEM). Por
ejemplo, supóngase que en el problema solo x1 y x2 deben ser enteros y x3 no.
TIPOS DE RESTRICCIONES USADAS EN LA PROGRAMACIÓN ENTERA
MIXTA:

1) Excluyentes: Solo sirve para elegir una alternativa de varias posibles


2) Pre-requisito: Cuando necesitas realizar una acción antes de proceder con la
siguiente
3) Incluyente: Dicha restricción se da para cuando realizas una acción "A" entonces
Página 9 de 24

debes hacer la acción "B"


4) Costo Fijo: Cuando se nombra un costo fijo, es sinónimo de uso de variable mixta
PROGRAMACIÓN ENTERA BINARIA
En algunos problemas se restringe el valor de las variables a 0 o 1. Son de particular
interés debido a que se pueden usar las variables 0–1 para representar decisiones
dicotómicas (sí o no). Diversos problemas de asignación, ubicación de plantas,
planes de producción y elaboración de cartera, son de programación lineal entera
0–1.
Existen dos métodos para generar las restricciones especiales que fuercen la
solución óptima del problema, hacia la solución óptima entera deseada:
Método de ramificar y acotar.
Método de planos de corte.
Desafortunadamente, ninguno de los dos métodos es efectivo en la solución de
problemas de programación lineal entera.
Página 10 de 24

3.3 MÉTODO GRÁFICO DE PROGRAMACIÓN ENTERA


Cada una de las ecuaciones que forman un sistema lineal de dos ecuaciones con
dos incógnitas es la de una función de primer grado, es decir, una recta. El método
gráfico para resolver este tipo de sistemas consiste, por tanto, en representar en
unos ejes cartesianos, o sistema de coordenadas, ambas rectas y comprobar si se
cortan y, si es así, dónde.

Esta última afirmación contiene la filosofía del proceso de discusión de un sistema


por el método gráfico. Hay que tener en cuenta, que, en el plano, dos rectas sólo
pueden tener tres posiciones relativas (entre sí): se cortan en un punto, son
paralelas o son coincidentes (la misma recta). Si las dos rectas se cortan en un
punto, las coordenadas de éste son el par (x, y) que conforman la única solución del
sistema, ya que son los únicos valores de ambas incógnitas que satisfacen las dos
ecuaciones del sistema, por lo tanto, el mismo es compatible determinado. Si las
dos rectas son paralelas, no tienen ningún punto en común, por lo que no hay ningún
par de números que representen a un punto que esté en ambas rectas, es decir,
que satisfaga las dos ecuaciones del sistema a la vez, por lo que éste será
incompatible, o sea sin solución. Por último, si ambas rectas son coincidentes, hay
infinitos puntos que pertenecen a ambas, lo cual nos indica que hay infinitas
soluciones del sistema (todos los puntos de las rectas), luego éste será compatible
indeterminado.

Método Gráfico

El procedimiento geométrico, es únicamente adecuado para resolver problemas


muy pequeños (con no más de dos variables debido al problema de (dimensional
dad). Este método provee una gran introducción a los problemas de Programación
Lineal.
Página 11 de 24

PASOS A SEGUIR PARA DAR SOLUCIÓN POR MÉTODO GRÁFICO

1.- Identificar el tipo de problema, ya sea maximización o Minimización.

2.- Tabular cada una de las ecuaciones para graficarlas (obtenga para cada
ecuación dos puntos dando un valor cero a una de las variables, para luego obtener
el valor de la otra variable, después a la otra variable asígnele un valor de cero para
obtener el valor de la otra variable). Entonces grafique estos puntos. -

3.- Asigne un valor inicial a Z, que sea un múltiplo de los coeficientes de las variables
en la función objetivo y obtenga dos punto Como en el paso 2 para graficar esta
función, ahora asigne otro valor de z tal que la función objetivo mejore y obtenga
dos puntos para que esta sea graficada.

4.- Determinar la zona de soluciones factibles, observe en que dirección se


encuentran los puntos que satisfacen a cada ecuación, esto es; evaluar el origen
(punto (0,0)) en cada ecuación, si este satisface a la ecuación, entonces todos los
puntos hacia donde se encuentre el origen satisfacen a la ecuación. Caso contrario
su sentido será opuesto a donde se encuentre el origen.

5. - Obtener la solución óptima moviendo la línea de Z paralelamente en la dirección


en que optimice a la función objetivo y dentro de la zona de soluciones factibles. El
último punto que esta línea toque en esta zona será el punto óptimo.
Página 12 de 24

3.4 MÉTODO DE RAMIFICACIÓN Y ACOTACIÓN.


El método de ramificación y acotación, más conocido por su nombre en inglés
Branch and Bound, recibe su nombre precisamente por las dos técnicas en las que
basa su desarrollo, que son la ramificación y la acotación.
El método de ramificación y acotación comienza por resolver el PLA, de modo que
si la solución al PLA verifica las condiciones de integridad, entonces también es la
solución al problema entero, en caso contrario se comienza con la ramificación del
problema. La ramificación consiste en dividir cada problema en dos nuevos
subproblemas, obtenidos mediante la imposición de restricciones excluyentes que
dividen el conjunto de oportunidades del problema original en dos partes, pero
eliminando en ambas partes la solución no entera del problema original. Cuando
en la solución al PLA una variable que ha de ser entera xi toma el valor xbi no entero,
entonces se generan a partir de dicho valor dos restricciones xi ≤ [xbi] y xi ≥ [xbi]+1
(siendo [xbi] la parte entera por defecto de xbi), que añadidas cada uno por
separado al problema original, da lugar a dos nuevos subproblemas. Vamos a
explicar este proceso a través de un ejemplo particular:
Consideremos el siguiente problema
Max F(x) = 4x1 + 5x2 (1)
S.a. 2x1 + x2 ≤ 8
X2 ≤ 5
X1, x2 ≥ 0 y enteras
La solución al PLA, prescindiendo de la condición de que las variables han de ser
enteras es:
X1 = 1,5, x 2 =5 y F(x) = 31
Como dicha solución no verifica las condiciones de integridad se elige la variable
x1 que no es entera y a partir de ella se generan dos restricciones
X1 ≤ 1 y x1 ≥ 2
Que añadidas cada una de ellas al problema original dan lugar a dos nuevos
subproblemas que serían los siguientes:
Max F(x) = 4x1 + 5x2 (1.1) Max F(x) = 4x1 + 5x2 (1.2)
S.a. 2x1 + x2 ≤ 8 s.a. 2x1 + x2 ≤ 8
X2 ≤ 5 x2 ≤ 5
X1 ≤ 1 x1 ≥ 2
X1, x2 ≥ 0 x1, x2 ≥ 0
Página 13 de 24

De este modo se han eliminado todas las posibles soluciones no enteras del
conjunto de oportunidades tales que 1< x1 < 2.
El proceso se repite con cada uno de los dos subproblemas obtenidos, los cuales
dará lugar a otros dos subproblemas cada uno de ellos y así sucesivamente hasta
que en todos los subproblemas tengan solución entera o infactible.
Utilizando únicamente la ramificación, el número de subproblemas a resolver crece
exponencialmente, por este motivo para evitar el tener que resolver todos los
subproblemas, la ramificación se combina con la acotación.

La acotación se basa en el hecho de que dado que los conjuntos de oportunidades


del subproblema 1.1. (S11) y del subproblema 1.2 (S12) son a su vez subconjuntos
del conjunto de oportunidades del problema 1 (S1) la solución óptima de los dos
subproblemas siempre será inferior (problema de máximo o superior para
problemas de mínimo) que la solución óptima del problema 1 por ser los conjuntos
de elección menores. Así pues, el proceso de acotación consiste, para problemas
de máximo, en tomar como cota inferior aquella solución entera con mayor valor
de la función objetivo obtenida y dado que cualquier otro subproblema con solución
no entera sabemos que al ramificarlo nos dará como resultado valores de la función
objetivo menores o iguales, nos permite descartar como subproblemas a ramificar
todos aquellos que tengan como solución óptima un valor de la función inferior a la
cota establecida.
De este modo se reduce el número de subproblemas a ramificar y por lo tanto el
tiempo necesario para la resolución de los problemas enteros. El proceso a seguir
en la resolución de problemas enteros mediante el método de ramificación y
acotación se resume en el siguiente esquema algorítmico:
Esquema del algoritmo de ramificación y acotación.
Ejemplo
Max F(X) = 8x1 + 10x2
S.a. 4x1 + 6x2 ≤ 24
8x1 + 3x2 ≤ 24
x1≥0, x2≥0, x1, x2∈Z+
Resolviendo en primer lugar el PLA, es decir
Max F(X) = 8x1 + 10x2
S.a. 4x1 + 6x2 ≤ 24
8x1 + 3x2 ≤ 24
Página 14 de 24

x1≥0, x2≥0
Se obtiene la solución x1 = 2, x2 = 8/3, f(x) = 128/3, dado que ésta solución no es
entera se ramifica a partir de la variable x2 del siguiente modo subproblema 1 y
subproblema 2:
Max F(X) = 8x1 + 10x2 Max F(X) = 8x1 + 10x2
s.a. 4x1 + 6x2 ≤ 24 s.a. 4x1 + 6x2 ≤ 24
8x1 + 3x2 ≤ 24 8x1 + 3x2 ≤ 24
X2 ≥ 3 x2>2
x1≥0, x2≥0 x1≥0, x2≥0
Solución x1=1,5, x2=3, F(x)=42 solución x1=2,5, x2=2,
F(x)=3

Como la solución del subproblema 1, tiene el mayor valor de la función objetivo y no


es entera ramificaremos este subproblema a partir de la variable x1, del siguiente
modo: subproblema 1.1 subproblema 1.2
Max F(X) = 8x1 + 10x2. Máx. (x) = 8x1 + 10x2
S.a. 4x1 + 6x2 ≤ 24. S.a. 4x1 + 6x2 ≤ 24
8x1 + 3x2 ≤ 24 8x1 + 3x2 ≤ 24
X2 ≥ 3 x2>3
X1 ≤ 1 x1>2
x1≥0, x2≥0 x1≥0, x2≥0
Solución x1=1, x2=10/3, F(x)=124/3. Solución infactible.

Dado que de todos los subproblemas todavía no ramificados (subproblemas 2, 1.1


y 1.2) el que tiene una mayor solución factible no entera es el subproblema 1.1,
ramificaremos este subproblema a partir de la variable x2, es decir subproblema
1.1.1 subproblema 1.1.2
Max F(X) = 8x1 + 10x2. Max F(X) = 8x1 + 10x2
S.a. 4x1 + 6x2 ≤ 24 s.a. 4x1 + 6x2 ≤ 24
8x1 + 3x2 ≤ 24 8x1 + 3x2 ≤ 24
X2 ≥ 3 x2 ≥ 3
Página 15 de 24

X1 ≤ 1 x1 ≤ 1
X2 ≤ 3 x2 ≥ 4
x1≥0, x2≥0. x1≥0, x2≥0
Solución x1=1, x2=3, F(x)=38 solución x1=0, x2=4, F(x)=40

Dado que ya conocemos una solución entera x1=0, x2=4, F(x)=40, ésta solución
actuará como cota inferior y solamente deberán ser ramificados aquellos
subproblemas con soluciones factible no enteras que tengan un valor para la función
objetivo que 40. Como el único subproblema por ramificar es el subproblema 2 y la
función objetivo vale 38, el proceso se da por terminado, siendo por tanto la solución
óptima al problema entero
X1 = 0, x2 = 4, F(x) = 40.
Página 16 de 24

3.5 MÉTODO HEURÍSTICO PARA PROBLEMAS BINARIOS.


Se basa en la utilización de reglas empíricas para llegar a una solución. El método
heurístico conocido como “IDEAL”, formulado por Bransford y Stein (1984), incluye
cinco pasos: Identificar el problema; definir y presentar el problema; explorar las
estrategias viables; avanzar en las estrategias; y lograr la solución y volver para
evaluar los efectos de las actividades (Bransford & Stein, 1984). El matemático
Polya (1957) también formuló un método heurístico para resolver problemas que se
aproxima mucho al ciclo utilizado para programar computadores. A lo largo de este
curso se utilizará este método propuesto por Polya. Según Polya (1957), cuando se
resuelven problemas, intervienen cuatro operaciones mentales:
1. Entender el problema
2. Trazar un plan
3. Ejecutar el plan (resolver)
4. Revisar Numerosos autores de textos escolares de matemáticas hacen
referencia a estas cuatro etapas planteadas por Polya.
Sin embargo, es importante notar que estas son flexibles y no una simple lista de
pasos como a menudo se plantea en muchos de esos textos (Wilson, Fernández &
Hadaway, 1993). Cuando estas etapas se siguen como un modelo lineal, resulta
contraproducente para cualquier actividad encaminada a resolver problemas. Es
necesario hacer énfasis en la naturaleza dinámica y cíclica de la solución de
problemas. En el intento de trazar un plan, los estudiantes pueden concluir que
necesitan entender mejor el problema y deben regresar la etapa anterior; o cuando
han trazado un plan y tratan de ejecutarlo, no encuentran cómo hacerlo entonces,
la actividad siguiente puede ser intentar con un nuevo plan o regresar y desarrollar
una nueva comprensión del problema (Wilson, Fernández & Hadaway, 1993;
Guzdial, 2000).
1. COMPRENDER EL PROBLEMA. Leer el problema varias veces Establecer los
datos del problema Aclarar lo que se va a resolver (¿Cuál es la pregunta?) Precisar
el resultado que se desea lograr Determinar la incógnita del problema Organizar la
información Agrupar los datos en categorías Trazar una figura o diagrama.
2. HACER EL PLAN. Escoger y decidir las operaciones a efectuar. Eliminar los
datos inútiles. Descomponer el problema en otros más pequeños.
3. EJECUTAR EL PLAN. Ejecutar en detalle cada operación. Simplificar antes de
calcular. Realizar un dibujo o diagrama.
4. ANALIZAR LA SOLUCIÓN. Dar una respuesta completa Hallar el mismo
resultado de otra manera. Verificar por apreciación que la respuesta es adecuada.
Página 17 de 24

HEURÍSTICA:
Ciencia que estudia los procesos de decisión respecto a un campo de conocimiento
concreto, como son las estrategias cognitivas. Su contrapartida formal en
computación es el algoritmo, la heurística es aplicable a cualquier ciencia e incluye
la elaboración de medios auxiliares, principios, reglas, estrategias y programas que
faciliten la búsqueda de vías de solución a problemas; o sea, para resolver tareas
de cualquier tipo para las que no se cuente con un procedimiento algorítmico de
solución. Según Horst Müller: Los Procedimientos Heurísticos son formas de trabajo
y de pensamiento que apoyan la realización consciente de actividades mentales
exigentes. Los Procedimientos Heurísticos como Método científico pueden dividirse
en principios, reglas y estrategias. Principios Heurísticos: constituyen sugerencias
para encontrar (directamente) la idea de solución; posibilita determinar, por tanto, a
la vez, los medios y la vía de solución. Dentro de estos principios se destacan la
analogía y la reducción. Reglas Heurísticas: actúan como impulsos generales
dentro del proceso de búsqueda y ayudan a encontrar, especialmente, los medios
para resolver los problemas.
Las Reglas Heurísticas que más se emplean son:
* Separar lo dado de lo buscado. * Representar magnitudes dadas y buscadas con
variables. * Determinar si se tienen fórmulas adecuadas.
* Utilizar números (estructuras más simples) en lugar de datos.
* Reformular el problema. Estrategias Heurísticas: se comportan como recursos
organizativos del proceso de resolución, que contribuyen especialmente a
determinar la vía de solución del problema abordado.
Existen dos estrategias:
>El trabajo hacia adelante: se parte de lo dado para realizar las reflexiones que han
de conducir a la solución del problema.
>El trabajo hacia atrás: se examina primeramente lo que se busca y, apoyándose
de los conocimientos que se tienen, se analizan posibles resultados intermedios de
lo que se puede deducir lo buscado, hasta llegar a los dados. Se denomina
heurística a la capacidad de un sistema para realizar de forma inmediata
innovaciones positivas para sus fines.
La capacidad heurística es un rasgo característico de los humanos, desde cuyo
punto de vista puede describirse como el arte y la ciencia del descubrimiento y de
la invención o de resolver problemas mediante la creatividad y el pensamiento
lateral o pensamiento divergente. La palabra heurística procede del término griego
εὑρίσκειν, que significa «hallar, inventar» (etimología que comparte con eureka). La
palabra heurística aparece en más de una categoría gramatical. Cuando se usa
como sustantivo, identifica el arte o la ciencia del descubrimiento, una disciplina
Página 18 de 24

susceptible de ser investigada formalmente. Cuando aparece como adjetivo, se


refiere a cosas más concretas, como estrategias heurísticas, reglas heurísticas o
silogismos y conclusiones heurísticas. Claro está que estos dos usos están
íntimamente relacionados ya que la heurística usualmente propone estrategias
heurísticas que guían el descubrimiento. La popularización del concepto se debe al
matemático George Pólya, con su libro Cómo resolverlo (How to solve it). Habiendo
estudiado tantas pruebas matemáticas desde su juventud, quería saber cómo los
matemáticos llegan a ellas. El libro contiene la clase de recetas heurísticas que
trataba de enseñar a sus alumnos de matemáticas. Cuatro ejemplos extraídos de él
ilustran el concepto mejor que ninguna definición:
* Si no consigues entender un problema, dibuja un esquema.
* Si no encuentras la solución, haz como si ya la tuvieras y mira qué puedes deducir
de ella (razonando a la inversa).
* Si el problema es abstracto, prueba a examinar un ejemplo concreto.
* Intenta abordar primero un problema más general (es la “paradoja del inventor”:
el propósito más ambicioso es el que tiene más posibilidades de éxito).
Existen muchos métodos heurísticos de naturaleza muy diferente, por lo que es
complicado dar una clasificación completa. Además, muchos de ellos han sido
diseñados para un problema específico sin posibilidad de generalización o
aplicación a otros problemas similares. El siguiente esquema trata de dar unas
categorías amplias, no excluyentes, en donde ubicar a los heurísticos más
conocidos: Métodos de Descomposición El problema original se descompone en
subproblemas más sencillos de resolver, teniendo en cuenta, aunque sea de
manera general, que ambos pertenecen al mismo problema. Métodos Inductivos La
idea de estos métodos es generalizar de versiones pequeñas o más sencillas al
caso completo. Propiedades o técnicas identificadas en estos casos más fáciles de
analizar pueden ser aplicadas al problema completo. Algoritmos Heurísticos. R.
Martí / 3 Métodos de Reducción Consiste en identificar propiedades que se cumplen
mayoritariamente por las buenas soluciones e introducirlas como restricciones del
problema. El objeto es restringir el espacio de soluciones simplificando el problema.
El riesgo obvio es dejar fuera las soluciones óptimas del problema original. Métodos
Constructivos Consisten en construir literalmente paso a paso una solución del
problema. Usualmente son métodos deterministas y suelen estar basados en la
mejor elección en cada iteración. Estos métodos han sido muy utilizados en
problemas clásicos como el del viajante. Métodos de Búsqueda Local A diferencia
de los métodos anteriores, los procedimientos de búsqueda o mejora local
comienzan con una solución del problema y la mejoran progresivamente. El
procedimiento realiza en cada paso un movimiento de una solución a otra con mejor
valor. El método finaliza cuando, para una solución, no existe ninguna solución
accesible que la mejore.
Página 19 de 24

3.6 USO DE SOFTWARE


Programación Lineal Entera (PLE) con Lindo y Excel
En muchas situaciones de la vida real, debido a la indivisibilidad la mayoría de los
productos, no será suficiente con obtener como solución s un problemas de PL
valores decimales. Así, por ejemplo, no tiene mucho sentido que la solución a
nuestros problemas de maximizar beneficios sea fabricar 20,3 lámparas de tipo l y
13,8 lámparas de tipo ll, ni que la forma de minimizar |os costes de transporte sea
haciendo 5,4 viajes con el camión A y 32 con el B. En tales situaciones deberemos
incluir en el planteamiento la restricción adicional de que todas las variables han de
ser valores enteros, por lo que estaremos ante un problema de Programación Lineal
Entera (PLE).

Una primera aproximación a la solución de un problema PLE podría obtenerse


resolviendo el problema PL asociado (es decir, olvidándose de la restricción sobre
Ia no divisibilidad de las variables). De hecho, si la solución del PL resulta ser entera,
entonces esta será también la solución del PLE. Si alguna de las variables de la
solución no es entera, podríamos pensar en redondear el valor obtenido por el
entero más próximo (y que este' en la región factible). Este procedimiento puede ser
relativamente bueno cuando los valores redondeados son muy grandes, pero
resulta muy peligroso si estos valores son pequeños (en tal caso, es muy probable
que la solución del PLE sea muy diferente a la que se obtiene redondeando los
valores del PL).

Los procedimientos teóricos que se emplean en la resolución de estos problemas


de PLE son básicamente dos: el método Brancha & Bound, y el de Planos de Corte
de Gomory. Desde el punto de vista computacional, tanto e| LINDO como la hoja de
cálculo Excel facilitan sobremanera la resolución de un PLE: tan solo es necesario
indicarle al| programa qué variables han de tomar valores enteros. Veamos un
ejemplo con LINDO:
Página 20 de 24

Aquí |e hemos indicado s| programa que ambas variables eran enteras mediante e|
comando GIN, y LINDO nos ha devuelto en el output |s solución entera X = 6, Y =
0, con Ia que el valor de la función objetivo es de 66. Podemos ver la diferencia
entre este problema PLE y su asociado PL en el siguiente output:

Observamos que la solución del PL es X = 5,286 e Y =1,429 (solución que no tendrá


sentido si X e Y representan objetos indivisibles), con la cual se obtiene un valor
para |s función objetivo de 72,429. Notar, finalmente, que si redondeásemos estos
valores, tomaríamos como solución X =5 e Y= 1, con lo que nuestra función objetivo
valdría 65, i.e.: la “solución de redondeo" nos da un valor peor que el Logrado
usando PLE (esto en el supuesto de que esta solución sea factible). En este ejemplo
puede parecer que Ia diferencia es poco, pero basta con imaginar e| caso extremo
de que cada unidad supusiese 1 millón de € para darse cuenta de las grandes
pérdidas que este “redondeo” causaría a nuestra empresa.
Página 21 de 24

En ocasiones, puede ocurrir que la variable no solo tenga que ser entera, sino que
además deba ser binaria (i.e., únicamente pueda tomar los valores 0 o 1).
Estaremos pues ante un problema de PLE Binaria.

Este tipo de variables es típico de las situaciones “todo o nada", como por ejemplo
el tener que decidir si construir o no una nueva factoría, o comprar o no un lote
grande de algún recurso para obtener descuentos (deberemos tener en cuenta el
coste de mantener el recurso en stock).

LINDO ofrece la posibilidad de indicar que una variable es binaria mediante el


comando INT.
Veamos un ejemplo:

De no haber exigido que la variable X fuese binaria, hubiésemos obtenido como


solución los valores X 0,4, A = 4, y B = 7, con una función objetivo de 124. Si ahora
redondeásemos el valor obtenido para X en esta solución, tomaríamos X = 0, con
lo que nuestra función objetivo serla de 84. Por supuesto, la solución que hemos
obtenido usando INT e5 mejor, pues nos da un valor para la función objetivo de 112.

El lado negativo de este comando es que si se utiliza con muchas variables en un


problema muy extenso aumentara el tiempo de computación necesario para obtener
la solución del programa.
Página 22 de 24

Resolver un problema con variables enteras o binarias usando Excel e5 tan sencillo
como añadir las correspondientes restricciones en la macro de Solver. Conviene
tener cuidado con la notación de ambos programas, pues para las variables enteras
LINDO usa el comando GIN y Solver la expresión int, mientras que para las
variables binarias LINDO usa el comando INT y Solver las letras bin. A continuación
se muestran las ventanas correspondientes al ejemplo binario anterior:
Página 23 de 24

CONCLUSIÓN:
Como ya vimos en los problemas de programación entera, surgen con frecuencia cuando
los valores de algunas o todas las variables de decisión que deben de restringirse a valores
enteros. Normalmente existen también muchas aplicaciones que necesitan decisiones de
sí o no incluyendo de las relaciones que se puedan representar por variables binarias.
Estos problemas son más difíciles de lo que serían sin la restricción de variables enteras,
en general podríamos decir que son menos eficientes que el método símplex.
Dice que los factores que determinan el tiempo de cálculo son el número de variables
enteras y la estructura del problema porque para un número fijo de variables enteras, se
puedan agregar variables continuas y esto puede no significar un incremento en el tiempo
de cálculo. Para estos problemas especiales de PEB que contienen alguna estructura
especial que se puede aprovechar mediante un algoritmo especial, por ello es posible
resolver problemas muy grandes y extensos y que pueda que problemas muy pequeños
no se puedan resolver.
Página 24 de 24

BIBLIOGRAFÍA:
https://universidad-une.com/contenido/a77731228_archivo_guia_estudio.pdf

http://www.est.uc3m.es/esp/nueva_docencia/comp_col_leg/ing_info/io/doc_generic
a/archivos/pe.pdf

Hemaruce.angelfire.com>metodografico

https://www.google.com.mx/search?rlz=1C1CHBD_esMX786MX786&ei=eAUGW4
rYF4yksAXp2bKwCg&q=metodo+heur%C3%ADstico+para+problemas+binarios+&
oq=metodo+heur%C3%ADstico+para+problemas+binarios+&gs_l=psy-
ab.3..33i21k1j33i160k1l2.3865.5987.0.6224.9.9.0.0.0.0.291.872.0j2j2.4.0....0...1c.1
.64.psy-ab..5.4.869....0.sBxk2s-G0-Q#

https://www.inf.utfsm.cl/~esaez/fio/s2_2003/apuntes/entera_s2_2003.pdf

http://gfebres.net/Downloads/eCourses/Docs/2012.Taha.InvestigacionDeOperacio
nes9naEdicion.pdf

También podría gustarte

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy