Anda di halaman 1dari 16

PROGRAMACIÒN LINEAL

La programación lineal es una técnica de modelización matemática desarrollada a


partir de la década de 1930. Desde entonces, se ha aplicado con frecuencia en los
procesos de toma de decisión de numerosos ámbitos económicos y productivos,
como la planificación de empresa y la ingeniería industrial.

Esta da respuesta a situaciones en las que se exige maximizar o minimizar


funciones que se encuentran sujetas a determinadas limitaciones, que llamaremos
restricciones. Su empleo es frecuente en aplicaciones de la industria, la economía,
la estrategia militar, etc.

Función objetivo

La Programaciòn lineal consiste en optimizar (maximizar o minimizar) una función


objetivo, que es una función lineal de varias variables:
f(x, y) = ax + b y .

Restricciones

La función objetivo está sujeta a una serie de restricciones, expresadas


por inecuaciones lineales:

a1x + b1y ≤ c1

a2x + b2y ≤c2

... ... ...

anx + bny ≤cn

Cada desigualdad del sistema de restricciones determina un semiplano.


Solución factible

El conjunto intersección, de todos los semiplanos formados por las restricciones,


determina un recinto, acotado o no, que recibe el nombre de región de validez o
zona de soluciones factibles.

Solución óptima

El conjunto de los vértices del recinto se denomina conjunto de solu cio ne s factibles
básicas y el vértice donde se presenta la solución óptima se llama solución
máxima (o mínima según el caso).

Valor del programa lineal

El valor que toma la función objetivo en el vértice de solución óptima se llama valor
del programa lineal.
Pasos para resolver un problema de programación lineal

1. Elegir las incógnitas.


2. Escribir la función objetivo en función de los datos del problema.
3. Escribir las restricciones en forma de sistema de inecuaciones.
4. Averiguar el conjunto de soluciones factibles representando gráficamente las
restricciones.
5. Calcular las coordenadas de los vértices del recinto de soluciones factibles
(si son pocos).
6. Calcular el valor de la función objetivo en cada uno de los vértices para ver
en cuál de ellos presenta el valor máximo o mínimo según nos pida el
problema (hay que tener en cuenta aquí la posible no existencia de solución
si el recinto no está acotado).
Ejemplo de programación lineal

Unos grandes almacenes encargan a un fabricante pantalones y chaquetas


deportivas. El fabricante dispone para la confección de 750 m de tejido de algodón
y 1000 m de tejido de poliéster. Cada pantalón precisa 1 m de algodón y 2 m de
poliéster. Para cada chaqueta se necesitan 1.5 m de algodón y 1 m de poliéster. El
precio del pantalón se fija en 50 € y el de la chaqueta en 40 €. ¿Qué número de
pantalones y chaquetas debe suministrar el fabricante a los almacenes para que
éstos consigan una venta máxima?
 Elección de las incógnitas.
x = nú me ro d e p ant a l one s
y = nú me ro d e ch aqu et a s

 Función objetivo
f(x ,y )= 50 x + 4 0 y

 Restricciones
Para escribir las restricciones vamos a ayudarnos de una tabla:

p a n t a l on e s c h a q ue t a s di s p o ni bl e

algodón 1 1,5 750

poliéster 2 1 1000

x + 1.5y ≤ 750 2x+3y≤1500


2x + y ≤ 1000
Como el número de pantalones y chaquetas son números naturales, tendremos dos
restricciones más:
x ≥ 0

y ≥ 0

 Hallar el conjunto de soluciones factibles


Tenemos que representar gráficamente las restricciones.
Al ser x ≥ 0 e y ≥ 0, trabajaremos en el primer cuadrante.
Representamos las rectas, a partir de sus puntos de corte con los ejes.

Resolvemos gráficamente la inecuación: 2x +3y ≤ 1500, para ello tomamos un punto


del plano, por ejemplo el (0,0).
2·0 + 3·0 ≤ 1 500
Como 0 ≤ 1 500 entonces el punto (0,0) se encuentra en el semiplano donde se
cumple la desigualdad.
De modo análogo resolvemos 2x + y ≤ 1000.
2·0 + 0 ≤ 1 00
La zona de intersección de las soluciones de las inecuaciones sería la solución al
sistema de inecuaciones, que constituye el conjunto de las soluciones factibles.
 Calcular las coordenadas de los vértices del recinto de las soluciones
factibles.
La solución óptima, si es única, se encuentra en un vértice del recinto. éstos son las
soluciones a los sistemas:
2x + 3y = 1500; x = 0 (0, 500)
2x + y = 1000; y = 0 (500, 0)
2x + 3y =1500; 2x + y = 1000 (375, 250)

 Calcular el valor de la función objetivo


En la función objetivo sustituimos cada uno de los vértices.
f(x, y) = 50x + 40y
f(0, 500) = 50·0 + 40·500 = 20000 €
f(500, 0) = 50·500 + 40·0 = 25000 €
f(375, 250) = 50·375 + 40·250 = 28750 € Máx im o

La solución óptima es fabricar 375 p a nt a lo ne s y 2 5 0 c h aq u et a s para obtener


un ben ef ic i o d e 2 8 75 0 € .
PRUEBA DE SENSIBILIDAD
Una prueba de sensibilidad permite la definición de una ventana de proceso estable
y se usa en el diseño conceptual de un proceso de conformado. En las etapas
iniciales de diseño del producto, por ejemplo, durante el diseño de la pieza, diseño
de herramienta, o ingeniería del proceso, los ingenieros tienen que definir muchos
parámetros de diseño tales como:
 Radio de la pieza
 Geometria del pisador
 Geometría del addendum (ej. punzón y radio de herramienta)
 Uso y posición de los frenos
 Fuerzas del pisador, etc.
Estas decisiones influyen directamente en la calidad de los procesos de embutición
y están basados principalmente en los estándares y experiencia de la compañía.
Puesto que los cambios en los procesos de desarrollo restantes son difíciles de
realizar, estas decisiones son cruciales en el proceso de producción.
La prueba de sensibilidad se puede realizar para apoyar el proceso de toma de
decisiones con hechos. El análisis incluye múltiples simulaciones con valores de
parámetros de diseño automáticamente seleccionados. El grado en que el
parámetro de diseño influye en los resultados define la sensibilidad. La ventana de
proceso para el parámetro de diseño se define como los valores extremos con los
cuales el proceso de conformado se puede realizar con éxito.
La prueba de sensibilidad aporta información del grado en qué el parámetro de
diseño ha de modificarse para conseguir el nivel de calidad deseado. Si se conoce
la influencia y la sensibilidad del parámetro de diseño, se puede determinar mejor
el valor del parámetro en particular. Mostrando que el parámetro de diseño (input)
influye en la calidad (output) y en qué medida ocurre, el proceso de conformado se
hace transparente.
Ejemplo

Diagrama de entrada del parámetro de diseño


para un análisis de sensibilidad
Un análisis de sensibilidad permite la definición
de una ventana de proceso estable

En la imagen se muestra un ejemplo del análisis de la sensibilidad. Cuando


observamos la salida a través de la ventana de proceso completo, hay dos áreas en
las que el criterio de calidad se ha cumplido. El área izquierda se caracteriza por un
pico relativo mientras que el área derecha indica una tendencia más constante. Si
el correspondiente parámetro de diseño se sitúa en el área izquierda durante la fase
de producción, puede haber problemas. Un valor de parámetro bien definido
comporta una buena calidad del producto. Si los valores cambiasen ligeramente, se
produciría el efecto contrario. El área derecha, por otra parte, asegura un proceso
de producción estable porque el nivel de calidad deseado se consigue a través de
una ventana mayor. De esta forma, el análisis de sensibilidad permite una definición
de una ventana de proceso estable

DIAGRAMA DE GANTT
El diagrama o gráfica de Gantt es una herramienta sumamente útil cuando de
formulación y gerencia de proyectos se trata, ya que permite definir, de una manera
gráfica, práctica y sistemática, la duración de las distintas actividades que deben
ejecutarse para completar de forma exitosa un determinado proyecto .
En este tipo de diagrama las actividades del proyecto se muestran siempre de
manera vertical, mientras que los tiempos aparecen representados de
manera horizontal.
En otras palabras, la gráfica de Gantt no es más que un gráfico de barras,
una estrategia de planeación que puede servir como una especie de guía a la hora
de poner en marcha todas las labores necesarias para ir de un punto A hasta un
punto B.
El diagrama o gráfica de Gantt funciona como una especie de calendario,
conformado por barras, en el que se establece la fecha de inicio y de culminación
de cada actividad correspondiente a un proyecto, y en donde además pueden
incorporarse datos relacionados con el material, el capital, el personal requerido,
entre otros aspectos fundamentales, para tener una visión más clara de lo que
implica el proyecto.
Es lo más parecido a un plan de acción, que puede ser monitoreado de manera
gráfica, para conocer si efectivamente está siendo cumplido o si requiere de la
realización de determinados ajustes
Ventajas de utilizar una Gráfica de Gantt

 Brinda una perspectiva visual que facilita el entendimiento del proyecto a


desarrollar.
 Permite ordenar eficientemente las actividades requeridas para la ejecución
del proyecto.
 Facilita el control y supervisión de los procesos.
 Da un estimado del tiempo que tomará cada actividad individualmente y del
tiempo que tomará la ejecución del proyecto en su totalidad.
 Ayuda a conocer si el desarrollo de una actividad interfiere con la ejecución
de otra en términos de tiempo, permitiendo ajustar la duración de cada una
para una mejor distribución.
EJEMPLO
Utilizaremos como referencia el siguiente ejemplo basado en la planificación de la
puesta en marcha de un local de comidas para repasar de forma visual los pasos
necesarios para realizar un diagrama o gráfica de Gantt:
DIAGRAMA PERT
Las Técnicas de Revisión y Evaluación de Proyectos, comúnmente abreviada como
PERT (del inglés, Project Evaluation and Review Techniques), es un modelo para
la administración y gestión de proyectos inventado en 1957 por la Oficina de
Proyectos Especiales de la Marina de Guerra del Departamento de Defensa de EE.
UU.
PERT es básicamente un método para analizar las tareas involucradas en completar
un proyecto dado, especialmente el tiempo para completar cada tarea, e identificar
el tiempo mínimo necesario para completar el proyecto total. Estimación basada en
3 valores para mejorar el resultado de la estimación final, aplicable tanto a coste
como a duración, tomando en consideración los factores de riesgo y variabilidad
asociados con el proceso de estimación. La estimación se lleva a cabo con los
siguientes valores:
O (Valor Optimista)
P (Valor Pesimista)
M (Valor más problable – «Most Likely»)

Hay dos maneras de llegar al resultado de duración estimada para una actividad
basándonos en la técnica de estimación por 3 puntos:
– Basado en la distribución Triangular también conocida como «Simple Average»
(O+P+M)/3
– Basado en la distribución Beta también conocida como PERT (O+P+4M)/6
Está comprobado (con estudios basados en teorías de probabilidad y estadísticas)
que una estimación PERT basada en un modelo de distribución Beta es más precisa
y realista que la basada en el método triangular.
Ejemplo de ejercicio de estimación de actividad:

Un programador ha de ampliar el código de un programa introduciendo una serie de


parámetros nuevos, la duración de esta actividad ha sido estimada con los
siguientes valores:
Valor Optimista : 30 minutos
Valor Pesimista: 45 minutos
Valor más probable: 35 minutos
¿Cuál sería el resultado de la duración estimada para la actividad basándonos en
una distribución triangular? ¿y cuál sería la duración estimada basándonos en una
distribución BETA?
 Cálculo con distribución Triangular: (30+45+35)/3 = 36,6
 Cálculo con distribución BETA (PERT):(30+45+4*35/6 = 35,8
Según los cálculos, lo más probable y cercano a la realidad final será una duración
de 35,8 minutos basado en la distribución BETA (PERT).
TEORIA DE COLAS
La teoría de colas es el estudio matemático del comportamiento de líneas de espera.
Esta se presenta, cuando los “clientes” llegan a un “lugar” demandando un servicio
a un “servidor”, el cual tiene una cierta capacidad de atención. Si el servidor no está
disponible inmediatamente y el cliente decide esperar, entonces se forma la línea
de espera.
Los objetivos de la teoría de colas consisten en:

 Identificar el nivel óptimo de capacidad del sistema que minimiza el coste


global del mismo.
 Evaluar el impacto que las posibles alternativas de modificación de la
capacidad del sistema tendrían en el coste total del mismo.
 Establecer un balance equilibrado (“óptimo”) entre las consideraciones
cuantitativas de costes y las cualitativas de servicio.
 Hay que prestar atención al tiempo de permanencia en el sistema o en la
cola: la “paciencia” de los clientes depende del tipo de servicio específico
considerado y eso puede hacer que un cliente “abandone” el sistema.
Ejemplo. práctico de teoría de colas:
Centro de reparación Apple Store

El servicio técnico de la tienda Apple Store debe hacer todos los cambios de batería
del Iphone, pero hay algunos casos en los que se complica ya que deben por política
de empresa, cambiar la pantalla. El tiempo de reparación está distribuido de forma
exponencial con una media de 30 minutos por teléfono entre abrir cambiar la batería,
cerrar y comprobar. A pesar de que hay cita previa, nadie llega exactamente a la
hora y los clientes con su teléfono van llegando durante todo el día. Asumiremos
por facilidad, que ese día no sacan ningún teléfono nuevo, y los clientes llegan de
forma más o menos escalonada. Para reparaciones: Llegan de media 10 al día en
las 8 horas que está abierta la tienda. Queremos conocer cuál es la capacidad de
reparación y cuánto tiempo está el servicio técnico sin reparar teléfonos. Como la
tasa de llegada de teléfonos (lambda) es de 10/8 teléfonos a la hora.
MU (tasa de reparación) es de 2 teléfonos a la hora.
ro = lambda / mu =
Ro0= 1- lambda / mu = 1 – 5/8=3/8
¿De media cuantos teléfonos hay por reparar?
L = ro / 1- ro =
¿Cuál es el tiempo medio total que un usuario con su teléfono está en la Apple store
para una reparación?
W= 1 / mu ( 1-ro)) tantos minutos.
WINQSB
WINQSB es un paquete de herramientas muy versátil que permite el análisis y
resolución de modelos matemáticos, problemas administrativos, de producción,
proyectos, inventarios, transporte, entre muchos otros. Ofrece una interfaz básica
pero amigable, y es la aplicación por excelencia utilizada por profesionales de
Ingeniería Industrial y áreas administrativas para la resolución de sus modelos de
programación lineal, continua o entera.
"Linear and integer programming " es el módulo de WinQSB creado con el fin de
resolver problemas de programación lineal y programación lineal entera. Un
problema de programación lineal implica una función objetivo lineal, un número
limitado de restricciones lineales, y una serie de variables que pueden ser acotadas
con valores limitados.
EJEMPLO
Un herrero con 80 Kg. de acero y 120 Kg. de aluminio quiere hacer bicicletas de
paseo y de montaña que quiere vender, respectivamente a 20.000 y 15.000 pesos
cada una para sacar el máximo beneficio. Para la de paseo empleará 1 Kg. De acero
y 3 Kg. de aluminio, y para la de montaña 2 Kg. de ambos metales. ¿Cuántas
bicicletas de paseo y de montaña deberá fabricar para maximizar las utilidades?

EL MODELO MATEMÁTICO

Acero Aluminio Precio de Venta

Bicicleta de paseo (x) 1 kg 3 kg $ 20.000

Bicicleta de montaña (y) 2 kg 2 kg $ 15.000

Disponibilidad 80 kg 120 kg

Declaración de variables

x = Cantidad de bicicletas de paseo a producir


y = Cantidad de bicicletas de montaña a producir

Restricciones de capacidad

Aluminio:
x + 2y <= 80
Acero:
3x + 2y <= 120

Función Objetivo

Zmax = 20000x + 15000y


INGRESANDO A LINEAR AND INTEGER PROGRAMMING
(WINQSB)
Una vez se haya ingresado al módulo Linear and Integer Programming, se abrirá
una ventana de inicio del módulo, tal como se muestra a continuación:

En esta ventana podremos entonces crear un nuevo problema, o cargar uno que ya
hayamos desarrollado. Una vez demos clic en "Nuevo Problema (New Problem)" se
abrirá un menú emergente que nos permitirá ingresar los parámetros básicos del
problema:

El programa requiere que se definan las especificaciones del problema, que incluye
el nombre de problema, el número de variables, el número de restricciones, el
criterio de la función objetivo, los tipos de variable por defecto, y el formato de
entrada de datos, ya sea en forma de matriz o en forma de modelo normal.

El nombre de problema, los nombres de variables, nombres de restricción, el


número de variables, número de restricciones, el criterio de la función objetivo, tipos
de variables, y la entrada de datos formato se pueden modificar mediante el menú
Formato y menú Editar una vez se haya abierto el modelo.
Para el problema que estamos abordando es necesario que ingresemos los
siguientes parámetros:

Número de variables: 2 (x , y )
Número de restricciones: 2 (Disponibilidad de Aluminio y Acero)
Función Objetivo: Maximizar (Utilidades)
Tipos de variables por defecto: Enteras no negativas (Serán bicicletas,
unidades enteras)
Formato de entrada: Matriz (Recomendado)
Una vez se registren los parámetros y al dar clic en el botón OK, se mostrará
la siguiente ventana, en aras de utilizar las mismas variables que en el modelo,
mostraremos el método de renombrar las variables:

Desde el menú EDIT, también podremos modificar el nombre de las restricciones,


tal como se aprecia en la siguiente imagen:
La interfaz para ingresar los valores que controlan el problema es la siguiente:

En ella hemos registrado los datos que controlan nuestro problema de estudio. El
siguiente paso, consiste en resolver el problema, para ello damos clic en el
botón "Solve and Analize": Este comando resuelve el problema. Si se especifica
alguna variable como un entero o binario, el programa utilizará automáticamente el
método de Branch and Bound (Rama y Cotas) para resolver el problema. El método
simplex modificado es utilizado para resolver problemas de programación lineal
continua.

Esta opción mostrará automáticamente un tabulado resumen de la solución si el


problema tiene una solución óptima, mostrará la inviabilidad de análisis si el
problema no es factible, o mostrará si el análisis no acotación si el problema no está
acotado en función objetivo o valores de las variables.
Este mensaje nos indica que el problema ha sido resuelto, y que existe una solución
óptima que ha sido encontrada. Al dar clic en Aceptar, nos llevará al cuadro resumen
de la solución:

Interpretar cada uno de los valores del cuadro solución, es cuan o más importante
que obtener la solución óptima, dado que de dicha interpretación podremos extraer
un buen análisis de sensibilidad:
Solution value: Valor solución, es el valor que toman las variables de decisión
en nuestra solución óptima, en este caso nos indica que se deberán producir 20
bicicletas tipo paseo y 30 bicicletas tipo montaña.

Unit Cost or Profit: El costo unitario o contribución es el valor que les fue
asignado a las variables por nosotros en la función objetivo.

Total Contribution: Es la contribución total a la solución objetivo, es el producto


del valor solución * costo unitario o contribución.
Basic Status: Después de que el problema se resuelve , esto representa si la
variable es una variable de base, en el límite inferior, o en el límite superior en
la tabla simplex final.

Allowable MIN, MAX C(j): Para un coeficiente de la función objetivo en


particular. Este es el rango en que la base actual de la solución sigue siendo la
misma.

Objective Function: Nos muestra el resultado de nuestra función objetivo, en


este caso la solución óptima tiene una función objetivo (utilidad) de $ 850.000

Left Hand Side: Del lado izquierdo, es el valor que toma la ecuación de cada
restricción luego de reemplazar las variables que la componen por los valores
solución. Por ejemplo, la ecuación de la restricción de Acero que es x + 2y <=
80, al reemplazar los valores solución quedará: (20) + 2(30) <= 80, el valor del
lado izquierdo será entonces 80.

Right Hand Side: Del lado derecho, es el valor asignado por nosotros a las
restricciones como máximo o mínimo recurso disponible.

Slack o Surplus: Cuando la restricción en cuestión tiene el operador <=,


corresponde a una holgura, es decir, se puede interpretar como el recurso no
utilizado. Cuando la restricción en cuestión tiene el operador >=, corresponde a
un exceso, es decir, se puede interpretar como el recurso utilizado por encima
de la restricción de mínimo uso.

Shadow Price: El precio sombra de una restricción, es el cambio marginal de la


función objetivo cuando el valor del lado derecho de la restricción aumenta en
una unidad. En nuestro ejemplo sería así: por cada kg de acero adicional que
tengamos disponible, la función objetivo aumentará en $ 1250.

Anda mungkin juga menyukai