ejercicios de investigacion de operaciones

Páginas: 5 (1151 palabras) Publicado: 28 de enero de 2016
"""
Tarea 04, Problema 05: Problema del Apostador.
@author: Luis I. Reyes Castro
"""

# Importamos los modulos necesarios
import pulp

# Construirmos cuatro PLs: Uno para cada vendedor y uno para el Maximin
prob = pulp.LpProblem( 'Tarea_04_Problema_05', pulp.LpMaximize)

# Construimos las variables de decision
x = { i : pulp.LpVariable( 'x_' + str(i), 0) for i in range(1,5) }
z =pulp.LpVariable('z')

# Ingresamos las restricciones
prob += x[1] + x[2] + x[3] + x[4] <= 500, \
'Monto_Maximo_a_Ser_Apostado'
prob += z <= -3 * x[1] + 4 * x[2] - 7 * x[3] + 15 * x[4], \
'Funcion_de_Utilidad_del_Resultado_1'
prob += z <= +5 * x[1] - 3 * x[2] + 9 * x[3] + 4 * x[4], \
'Funcion_de_Utilidad_del_Resultado_2'
prob += z <= +3 * x[1] - 9 * x[2] + 10 * x[3] - 8 * x[4], \'Funcion_de_Utilidad_del_Resultado_3'

# Ingresamos la funcion de utilidad
prob += z

# Imprimimos al terminal el PL
print(prob)

# Ordenamos al objeto que representa el PL que lo solucione
prob.solve()

# Imprimimos al terminal el estado de la solucion
print( 'Estado (en ingles):', pulp.LpStatus[prob.status])

# Iteramos sobre las variables de decision del problema, imprimiendo al terminal
# el valor optimo de cadavariable
print( 'Valores optimos de las variables de decision:')
for var in prob.variables() :
# Imprimimos al terminal el nombre de la variable de decision, seguido del simbolo igual,
# y del valor optimo de la variable
print( var.name, '=', var.varValue)

# Imprimimos al terminal la utilidad optima
print( 'Utilidad_Optima =', pulp.value(prob.objective) )





"""
Tarea 04,Problema 06: Problema de GYE Recycling (Parte II).
@author: Luis I. Reyes Castro
"""

# Importamos los modulos necesarios
import collections
import pulp

# Construimos cuatro PLs: Uno para cada vendedor y uno para el Problema Maximin
PL = collections.OrderedDict()
PL['v1'] = pulp.LpProblem( 'Tarea_04_Problema_06_v1', pulp.LpMaximize)
PL['v2'] = pulp.LpProblem( 'Tarea_04_Problema_06_v2',pulp.LpMaximize)
PL['v3'] = pulp.LpProblem( 'Tarea_04_Problema_06_v3', pulp.LpMaximize)
PL['Maximin'] = pulp.LpProblem( 'Tarea_04_Problema_06_MaxiMin', pulp.LpMaximize)

# Construimos las variables de decision
x = { i : pulp.LpVariable( 'x_' + str(i), 0) for i in range(1,5) }
z = pulp.LpVariable('z')

# Ingresamos las restricciones de disponibilidad de recursos
for key in PL:
PL[key] += 1.05 * x[1] +2.41 * x[3] + 1.87 * x[4] <= 20.1, \
'Disponibilidad_de_Botellas_de_Gaseosa'
PL[key] += 2.24 * x[2] + 1.38 * x[3] + 1.01 * x[4] <= 35.6, \
'Disponibilidad_de_Botellas_de_Desinfectante'
PL[key] += 1.04 * x[1] + 1.89 * x[2] + 1.21 * x[4] <= 36.1, \
'Disponibilidad_de_Botellas_de_Aceite'

# Ingresamos la funcion de utilidad del vendedor 1
PL['v1'] += 840 * x[1] + 475 * x[2] + 570* x[3] + 685 * x[4]
PL['Maximin'] += z <= 840 * x[1] + 475 * x[2] + 570 * x[3] + 685 * x[4], \
'Funcion_de_Utilidad_del_Vendedor_1'

# Ingresamos la funcion de utilidad del vendedor 2
PL['v2'] += 785 * x[1] + 435 * x[2] + 630 * x[3] + 620 * x[4]
PL['Maximin'] += z <= 785 * x[1] + 435 * x[2] + 630 * x[3] + 620 * x[4], \
'Funcion_de_Utilidad_del_Vendedor_2'

# Ingresamos la funcion de utilidad delvendedor 3
PL['v3'] += 740 * x[1] + 565 * x[2] + 595 * x[3] + 580 * x[4]
PL['Maximin'] += z <= 740 * x[1] + 565 * x[2] + 595 * x[3] + 580 * x[4], \
'Funcion_de_Utilidad_del_Vendedor_3'

# Ingresamos la funcion de utilidad del problema maximin
PL['Maximin'] += z

# Iteramos sobre los cuatros PLs
for key in PL:
# Imprimimos el problema al terminal
print('================================================================' )
print(PL[key])
# Lo solucionamos
PL[key].solve()
# Imprimimos la solucion y utilidad optima al terminal
print( 'Estado (en ingles):', pulp.LpStatus[PL[key].status])
print( 'Valores optimos de las variables de decision:')
for var in PL[key].variables() :
print( var.name, '=', var.varValue)
print( 'Utilidad_Optima =',...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Un ejercicio de Investigación Operativa
  • Ejercicios Investigacion De Operaciones
  • Ejercicios Investigacion De Operaciones
  • Ejercicios De Investigacion De Operaciones
  • Ejercicios resueltos investigación de operaciones
  • Investigación Operaciones Ejercicios
  • Ejercicios de investigación de operaciones
  • ejercicios investigación de operaciones

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS