Está en la página 1de 9

Alumna: Anayeli Pérez Fonseca

Nombre de la actividad: Actividad 12 Programación por


metas y no lineal
Materia: Modelos de optimización
Fecha de entrega: lunes 19 de abril de 2021
Profesor: Ricardo del campo Escalera
1. ¿Qué es la programación por metas?

R= La programación por metas es un enfoque para tratar problemas de


decisión general que comprenden metas múltiples o inconmensurables,
de acuerdo a la importancia que se les asigne a estas metas. El método
de programación de metas permite alcanzar varios objetivos de manera
simultánea. La Programación de metas establece un objetivo numérico
específico para cada uno de los objetivos, formular una función objetivo
para cada uno y después buscar una solución que minimice la suma
ponderada de las desviaciones de estas funciones objetivo de sus
metas.

2. Analizar un ejemplo de programación por metas.

Ejercicio explicado  de Programación por metas

En cierto país de 20 000 habitantes se tienen las siguientes bases tributarias:


550 millones por predial. 35 millones por alimentos y medicinas. 55 millones por
ventas. El consumo anual de gasolina es de 7.5 millones de galones.

Se tienen las siguientes metas:

1. Tener un ingreso por impuestos de 16 millones.


2. Que el impuesto para alimentos y medicinas no exceda el 10% del total
de impuestos
3. Que el impuesto sobre ventas no exceda el 20% del total de impuestos.
4. Que el impuesto para gasolina no exceda de 2 centavos por galón.
Variables y restricciones

 X1 = tasa tributaria predial


 X2 = tasa tributaria por alimentos y medicinas
 X3 = tasa tributaria por ventas
 X4 = impuesto para gasolina en centavos por galón.
Metas

Las metas quedaría expresadas de la siguiente forma:

1. Tener un ingreso de impuestos de 16 millones.


550x1 + 35x2 + 55x3 + 0.075x4 >= 16
2. Que el impuesto para alimentos y medicinas no exceda el 10% del total
de impuestos
35x2 <= .1 (550x1 + 35x2 + 55x3 + 0.075x4)

Haciendo las operaciones correspondientes, y simplificando, la meta anterior


quedaría:

55x1 – 31.5x2 + 5.5x3 + 0.0075x4 >= 0

3. Que el impuesto sobre ventas no exceda el 20% del total de impuestos.


55x3 <= .2 (550x1 + 35x2 + 55x3 + 0.075x4)

Haciendo las operaciones correspondientes, y simplificando, la meta anterior


quedaría:

110x1 + 7x2 – 44x3 + 0.015x4 >= 0

4. Que el impuesto para gasolina no exceda de 2 centavos por galón.


x4 <= 2

La planificación por metas (incluyendo las variables de desviación) sería:

550x1 + 35x2 + 55x3 + 0.075x4  + n1 – p1 = 16

55x1 – 31.5x2 + 5.5x3 + 0.0075x4 +n2 – p2  = 0

110x1 + 7x2 – 44x3 + 0.015x4 +n3 – p3  = 0

X4 + n4 – p4 = 0

Las variables de desviación no deseadas serían: n1, n2, n3, p4.

La función de logro sería:

Min g(n1, n2 , n3,  p4)


3. ¿Qué es la programación lineal?

R= La programación lineal es el campo de la programación matemática


dedicado a maximizar o minimizar (optimizar) una función lineal,
denominada función objetivo, de tal forma que las variables de dicha función
estén sujetas a una serie de restricciones expresadas mediante un sistema
de ecuaciones o inecuaciones también lineales. El método tradicionalmente
usado para resolver problemas de programación lineal es el Método
Simplex. Él objetivo de la programación lineal es calcular el valor de las
variables de una función que maximizan o minimizan esta. … Tanto la
función como las restricciones son expresiones lineales. La función se llama
función objetivo, y las variables, variables de decisión.

¿Qué es la programación no lineal?

R= Programación no lineal (PNL) es el proceso de resolución de un sistema


de igualdades y desigualdades sujetas a un conjunto de restricciones sobre
un conjunto de variables reales desconocidas, con una función objetivo a
maximizar (o minimizar), cuando alguna de las restricciones o la función
objetivo no son lineales. Programación No Lineal (PNL) es aquel donde las
variables de decisión se expresan como funciones no lineales ya sea en la
función objetivo y/o restricciones de un modelo de optimización.

4. ¿Qué es el algoritmo de ramificación y acotamiento?

R= Este método funciona a modo de proceso de enumera miento de las


posibles soluciones enteras al problema original, esto lo hace dividiendo
(ramificado) el problema original en sus problemas más sencillos, a los qué
generalmente se les quita las restricciones más complicadas de resolver (que
son generalmente las restricciones que hacen que las variables sean enteras)
para poder solucionarlo. Un Algoritmo de Ramificación y Acotamiento es una
estrategia para en- contrar la solución óptima de problemas de optimización,
explorando exhaus- tivamente todo el espacio de soluciones.

5. Analizar un ejemplo de ramificación y acotamiento.

R= Consideremos el siguiente modelo de programación entera el cuál


resolveremos con el algoritmo de ramificación y acotamiento:
El paso inicial consiste en resolver este problema como si fuese un modelo de
Programación Lineal (relajación continua). Si la solución de dicho problema
llegara a respetar las condiciones de integralidad para las variables de
decisión, ésta ya sería la solución óptima del problema entero.
Si bien este procedimiento se puede extender a problemas de mayor
dimensión, utilizamos un modelo en 2 variables para poder representar los
pasos del algoritmo gráficamente. El gráfico a continuación muestra dicha

resolución:

La solución óptima del problema lineal asociado (que llamaremos P0)


es X1=2,8 y X2=1,6 con valor óptimo V(P0)=20,8. Claramente esta
solución no cumple las condiciones de integralidad para las variables de
decisión por tanto es necesario generar cotas o restricciones adicionales de
modo de poder obtener soluciones enteras. Para ello debemos seleccionar una
de las 2 variables de decisión con valores fraccionarios para poder generar
cotas. En estricto rigor es indistinto cuál de ellas seleccionemos debido a que
el método nos debe llevar a conclusiones similares (aun cuando la cantidad de
pasos requeridos o rapidez de convergencia cambie).
En nuestro ejemplo generaremos cotas adicionales para la variable X1
aproximando su valor actual al entero inferior más cercano (P1) y entero
superior más cercano (P2).
La resolución gráfica del problema 1 (P1) nos da como solución
óptima X1=2 y X2=2 que es una solución entera. El valor óptimo del problema 1
es V(P1)=20. Notar que V(P1)<V(P0) lo cual es natural dado que el dominio de
soluciones factibles del P1 es menor (subconjunto) al dominio de soluciones
factibles de P0.

Análogamente la resolución gráfica (Método Gráfico) del problema 2 (P2)


determina que X1=3 y X2=4/3 con V(P2)=20 según se observa a continuación:
Luego no sería del todo necesario seguir desarrollando el algoritmo dado que si
generamos cotas para la variable X2 del P2 en ningún caso podríamos obtener una
solución entera con valor óptimo superior a 20 (valor que reporta en la función
objetivo la actual solución entera de P1) y por tanto podríamos concluir que X1=2 y
X2=2 es la solución óptima del problema entero. No obstante el siguiente diagrama
muestra los pasos adicionales en caso que quisiera agregar cotas adicionales a partir
del P2.

Un argumento similar al expuesto previamente en este caso explicaría la no necesidad


de seguir ramificando el P21. Se propone al lector verificar que se obtiene la misma
solución óptima si luego del P0 ramificamos a través de X2 agregando las restricciones
X2<=1 y X2>=2.
Conclusiones:
Una ventaja importante de la programación meta es su flexibilidad en el sentido
de que permite al tomador de decisiones, experimentar con una multitud de
variaciones de las restricciones y de prioridades de las metas cuando se
involucra con un problema de decisión de objetivos múltiples.
 A manera de conclusión podemos afirmar que la programación lineal es una
herramienta muy útil, tanto para personas con empresas independientes como
para grandes compañías. ... La programación lineal es un procedimiento o
algoritmo matemático, mediante el cual se resuelve un problema
indeterminado.
Primer punto clave de los métodos de ramificación y acotación: Encontrar un
buen orden de recorrido. (o ramificación) de los nodos, es decir, definir una
buena función de prioridad de los nodos vivos.
Los problemas prácticos de optimización con frecuencia incluyen un
comportamiento no lineal que debe tomarse en cuenta. A veces es posible
reformular las no linealidades para que se ajusten al formato de programación
lineal, como se puede hacer con los problemas de programación separable. Sin
embargo, es frecuente la necesidad de usar una formulación de programación
no lineal.

Referencias bibliográficas:
Programación por metas.
https://www.google.com/url?
sa=t&source=web&rct=j&url=https://www.youtube.com/watch%3Fv
%3D5XAVPSj8cJU&ved=2ahUKEwjPhdq9oIvwAhUDKKwKHe87Cq0Qxa8BegQIBhAB&usg=
AOvVaw0iisWMM7nd3rP3tObLV7kW

Programación lineal.

https://www.google.com/url?
sa=t&source=web&rct=j&url=https://www.youtube.com/watch%3Fv
%3DwsywXvBMjso&ved=2ahUKEwicxsCjoIvwAhVCXawKHdBsAyoQxa8BegQIBBAB&usg=A
OvVaw3x6nQYA8mSD7Q119XHohnS

Algoritmo de ramificación y acotamiento.

https://www.google.com/url?
sa=t&source=web&rct=j&url=https://sites.google.com/site/optimizacionenteraydinamica/i
ntroduccion/metodos-de-solucion-en-programacion-entera/metodos-de-
ramificacion&ved=2ahUKEwiyouGMoIvwAhUE7qwKHdkcBXgQo7QBegQIAhAB&usg=AOvVa
w1HwIfs2JTkPhIFvStp5a1m

También podría gustarte