SlideShare una empresa de Scribd logo
1 de 6
Descargar para leer sin conexión
Planificaci´on de una consultoria
Problema individual. Optimizaci´on
Laboratorio de Modelizaci´on
Grado en Matem´aticas
Adil Ziani
adil.ziani@um.es
27/02/2017
1
1. 7.30 Planificaci´on de una consultoria
1.1. Enunciado
Una consultor´ıa que consta de 6 departamentos tiene que planificar c´omo acometer 6 proyec-
tos que tendr´a que ejecutar durante un a˜no. Los departamentos est´an jerarquizados, de modo
que el departamento 1 es el principal (y al que est´an destinados los empleados m´as preparados)
y el departamento 6 corresponde al nivel m´as bajo. Igualmente, los proyectos tambi´en tienen su
complejidad. En principio cada departamento deber´ıa ejecutar el proyecto de mismo ´ındice, pero
se permite, con cierto l´ımite, que los departamentos apoyen proyectos de menor complejidad,
aunque esto supone que sus empleados sean infrautilizados. En la siguiente tabla se resumen las
caracter´ısticas de cada proyecto y de cada departamento, as´ı como de la viabilidad de que cada
departamento participe en cada proyecto.
Donde,
C1: Salario base anual por empleado
2
C2: Salario empleado por hora
C3: Horas de trabajo anuales por empleado
C4: Coste de hora extra
C5: M´aximo de horas extra anuales por empleado
C6: N´umero de empleados actuales
C7: Coste fijo de contratar a un empleado adicional
C8: Coste fijo de despedir a un empleado actual
Obtener la pol´ıtica de contrataci´on de cada departamento y el n´umero de horas que cada de-
partamento asigna a cada proyecto con el objetivo de que el beneficio neto final sea m´aximo.
1.2. Respuesta
Tenemos una consoltor´ıa con 6 departamentos, que quiere llevar en marcha 6 proyectos
durante el pr´oximo a˜no y queremos ver que plantilla de empleados formar y que hace cada de-
partamento con el fin de tener un beneficio neto lo m´aximo posible, todo ello sujeto a algunas
restricciones que iremos viendo.
Lo que queremos decidir se refleja en las variables de decisi´on:
Xi,j = n´umero de horas que el departamento i dedica al proyecto j, (en horario laboral).
Yi,j = n´umero de horas extra que el departamento i dedica al proyecto j.
Ci = n´umero de empleados que se contratan para el departamento i.
Di = n´umero de empleados que se despiden del departamento i.
xi = n´umero de empleados que habr´a en departamento i.(variable auxiliar)
El objetivo es maximizar el beneficio neto de la consultor´ıa, si observamos la tabla anterior,
cada proyecto genera un ingreso por hora y cada hora requiere un salario(base m´as cada hora
trabajada) para el empleado, ademas de gastos de contrataci´on y despedida, datos que se reflejan
en la tabla. Entonces la funci´on objetivo corresponde a ingresos − costes:
j∈ proye i∈ depart
(V [i, j] ∗ Ingresos[j] ∗ (X[i, j] + Y [i, j]) − C2[i] ∗ X[i, j] − C4[i] ∗ Y [i, j]) −
i∈depart
(C7[i] ∗ C[i] + C8[i] ∗ D[i] + C1[i] ∗ x[i])
donde Vi,j = 1 si el departamento i puede realizar el proyecto j y 0 en caso contrario.
Ahora queda ver las restricciones.
3
Hay restricciones sobre el n´umero m´aximo de horas que se puede dedicar a cada proyecto,
esto es:
∀j ∈ proy,
i∈depart
X[i, j] + Y [i, j] MaxHorasProy[j]
Hay restricciones sobre el n´umero m´aximo de horas que puede trabajar un departamento,
esto es:
∀i ∈ depart,
j∈proy
X[i, j] C3[i] ∗ x[i]
Hay restricciones sobre n´umero de horas extra m´aximas que puede hacer cada empleado,
seg´un el departamento al que pertenece, esto es:
∀i ∈ depart,
j∈proy
Y [i, j] C5[i] ∗ x[i]
A˜nadimos una resticci´on que relaciona las variables C, D, x, pues los empleados que habr´a
en cada departamento son los que ya hab´ıa mas lo nuevos que se contraten menos los que
se despide, esto es:
∀i ∈ depart, x[i] = C6[i] + C[i] − D[i]
Y finalmente las restricciones de no negatividad de las variables, y la integridad en las
variables de contrataci´on y despedida.
Dicho problema de programaci´on lineal entera-mixta, lo hemos resuelto usando el el lenguaje
AMPL y solver GUROBI, y la soluci´on que devuelve es:
(a) N´umero horas que cada departamento dedica a cada pro-
yecto
(b) N´umero horas extra que cada departamento de-
dica a cada proyecto
4
(c) N´umero contrata-
dos en cada departa-
mento
(d) N´umero despedi-
dos de cada departa-
mento
Con un objetivo de 518300 unidades monetarias.
Observaci´on: Hemos supuesto que todos los empleados trabajan las mismas horas en cada de-
partamento al que pertenecen, y que por tanto se reparten el salario por hora equitativamente.
##################################################
En el anexo se incluye el c´odigo.
Anexo : C´odigo
Archivo .dat
data ;
set Proyectos := P1 P2 P3 P4 P5 P6 ;
set Departamentos := D1 D2 D3 D4 D5 D6;
param : Ingresos Maxhoras:=
P1 40 3500
P2 35 5800
P3 30 25000
P4 25 45000
P5 20 30000
P6 15 85000;
param V ( tr ) :
D1 D2 D3 D4 D5 D6:=
P1 1 0 0 0 0 0
P2 1 1 0 0 0 0
P3 1 1 1 0 0 0
P4 0 1 1 1 0 0
P5 0 0 1 1 1 0
P6 0 0 0 1 1 1;
5
param : C1 C2 C3 C4 C5 C6 C7 C8:=
D1 52000 18 1760 20 200 2 10000000 10000000
D2 41600 16 1760 18 200 3 10000000 10000000
D3 31200 14 1840 16 300 10 20000 6000
D4 20800 9 1880 15 500 15 10000 5000
D5 16640 8 1920 12 500 20 8000 4000
D6 12480 7 1920 9 500 35 6000 3000;
Archivo .mod
model ;
set Proyectos ;
set Departamentos ;
param Ingresos { Proyectos };
param Maxhoras { Proyectos };
param V {Departamentos , Proyectos };
param C1{Departamentos };
param C2{Departamentos };
param C3{Departamentos };
param C4{Departamentos };
param C5{Departamentos };
param C6{Departamentos };
param C7{Departamentos };
param C8{Departamentos };
var X{Departamentos , Proyectos } >=0, i n t e g e r ;
var C{Departamentos} >=0, i n t e g e r ;
var D{Departamentos} >=0, i n t e g e r ;
var x{Departamentos} >=0, i n t e g e r ;
var Y{Departamentos , Proyectos } >=0, i n t e g e r ;
maximize obj : sum{ j in Proyectos , i in Departamentos :V[ i , j ]==1}(( Ingresos [ j ] ) ∗(X[ i
, j ]+Y[ i , j ] ) − C2 [ i ]∗X[ i , j ]−C4 [ i ]∗Y[ i , j ] )−
sum{ i in Departamentos }(C7 [ i ]∗C[ i ] + C8 [ i ]∗D[ i ] + C1 [ i ]∗ x [ i ] ) ;
subject to MaxHorasProyectos{ j in Proyectos }: sum{ i in Departamentos : V[ i , j ]==1} (
X[ i , j ] + Y[ i , j ] ) <=Maxhoras [ j ] ;
subject to MaxHorasExtra{ i in Departamentos }: sum{ j in Proyectos : V[ i , j ]==1} Y[ i , j
] <=C5 [ i ]∗ x [ i ] ;
subject to MaxHorasDepartamento{ i in Departamentos }: sum{ j in Proyectos : V[ i , j
]==1} X[ i , j ] <= C3 [ i ]∗ x [ i ] ;
subject to FlujoContratacion { i in Departamentos }: x [ i ] = C6 [ i ]+C[ i ]−D[ i ] ;
6

Más contenido relacionado

Similar a Programación lineal entera AMPL

manual-microsoft-project-aplicado-a-la-construccion-v2-1-gantt
manual-microsoft-project-aplicado-a-la-construccion-v2-1-ganttmanual-microsoft-project-aplicado-a-la-construccion-v2-1-gantt
manual-microsoft-project-aplicado-a-la-construccion-v2-1-gantt
tania sanchez
 
3. funcion financiera (amortizacion). completo
3. funcion financiera (amortizacion). completo3. funcion financiera (amortizacion). completo
3. funcion financiera (amortizacion). completo
Cristhian Sarango
 
3. Función Financiera (Amortización).
3. Función Financiera (Amortización). 3. Función Financiera (Amortización).
3. Función Financiera (Amortización).
Stefania001
 

Similar a Programación lineal entera AMPL (20)

Microsoft proyect
Microsoft proyectMicrosoft proyect
Microsoft proyect
 
manual-microsoft-project-aplicado-a-la-construccion-v2-1-gantt
manual-microsoft-project-aplicado-a-la-construccion-v2-1-ganttmanual-microsoft-project-aplicado-a-la-construccion-v2-1-gantt
manual-microsoft-project-aplicado-a-la-construccion-v2-1-gantt
 
Teoria de los costos
Teoria de los costosTeoria de los costos
Teoria de los costos
 
Ejercicios resueltos-pert-ing
Ejercicios resueltos-pert-ingEjercicios resueltos-pert-ing
Ejercicios resueltos-pert-ing
 
Taller 3
Taller 3Taller 3
Taller 3
 
Métodos para Evaluar Proyectos de Inversión
Métodos para Evaluar Proyectos de InversiónMétodos para Evaluar Proyectos de Inversión
Métodos para Evaluar Proyectos de Inversión
 
Investigaciones_de_operaciones_______Pg_15__57_.pdf.pdf
Investigaciones_de_operaciones_______Pg_15__57_.pdf.pdfInvestigaciones_de_operaciones_______Pg_15__57_.pdf.pdf
Investigaciones_de_operaciones_______Pg_15__57_.pdf.pdf
 
Msp (microsoft project)
Msp (microsoft project)Msp (microsoft project)
Msp (microsoft project)
 
Abm como calcular el coste hora persona anexo1
Abm como calcular el coste hora persona anexo1 Abm como calcular el coste hora persona anexo1
Abm como calcular el coste hora persona anexo1
 
La planificación
La planificaciónLa planificación
La planificación
 
3. funcion financiera (amortizacion). completo
3. funcion financiera (amortizacion). completo3. funcion financiera (amortizacion). completo
3. funcion financiera (amortizacion). completo
 
3. Función Financiera (Amortización).
3. Función Financiera (Amortización). 3. Función Financiera (Amortización).
3. Función Financiera (Amortización).
 
Administración de proyectos
Administración de proyectosAdministración de proyectos
Administración de proyectos
 
curva-s
curva-scurva-s
curva-s
 
Manual project 2003
Manual project 2003Manual project 2003
Manual project 2003
 
Flujo de caja
Flujo de cajaFlujo de caja
Flujo de caja
 
Flujo de caja
Flujo de cajaFlujo de caja
Flujo de caja
 
Flujo de caja
Flujo de cajaFlujo de caja
Flujo de caja
 
Flujo de caja
Flujo de cajaFlujo de caja
Flujo de caja
 
Presentacion cpm y pert
Presentacion cpm y pertPresentacion cpm y pert
Presentacion cpm y pert
 

Más de adilazh1 (17)

Optimización de funciones fraccionarias
Optimización de funciones fraccionariasOptimización de funciones fraccionarias
Optimización de funciones fraccionarias
 
Ecuación funcional de Abel
Ecuación funcional de AbelEcuación funcional de Abel
Ecuación funcional de Abel
 
l&rsquo;analyse d&rsquo;une nouvelle journalistique.
l&rsquo;analyse d&rsquo;une nouvelle journalistique.l&rsquo;analyse d&rsquo;une nouvelle journalistique.
l&rsquo;analyse d&rsquo;une nouvelle journalistique.
 
Friedensreich Hundertwasser
Friedensreich HundertwasserFriedensreich Hundertwasser
Friedensreich Hundertwasser
 
La cousine Bette
La cousine BetteLa cousine Bette
La cousine Bette
 
Cónicas
CónicasCónicas
Cónicas
 
Mesozoico
MesozoicoMesozoico
Mesozoico
 
La tour eiffel présente
La tour eiffel présenteLa tour eiffel présente
La tour eiffel présente
 
Introducción al arte
Introducción al arteIntroducción al arte
Introducción al arte
 
Edad de los metales
Edad de los metalesEdad de los metales
Edad de los metales
 
Las Drogas
Las DrogasLas Drogas
Las Drogas
 
Música del Renacimiento
 Música del Renacimiento Música del Renacimiento
Música del Renacimiento
 
La música de la Edad Media
La música de la Edad MediaLa música de la Edad Media
La música de la Edad Media
 
música del romantecismo
 música del romantecismo música del romantecismo
música del romantecismo
 
Circuitos eléctricos
Circuitos eléctricosCircuitos eléctricos
Circuitos eléctricos
 
La Música del Barroco
La Música del BarrocoLa Música del Barroco
La Música del Barroco
 
La música del Clasicismo
La música del ClasicismoLa música del Clasicismo
La música del Clasicismo
 

Último

Moral con citas CIC.pptx materia Teología
Moral con citas CIC.pptx materia TeologíaMoral con citas CIC.pptx materia Teología
Moral con citas CIC.pptx materia Teología
AraDiaz8
 
*CODIGO- TRIBUTARIO - ECUADOR-FINAN .pdf
*CODIGO- TRIBUTARIO - ECUADOR-FINAN .pdf*CODIGO- TRIBUTARIO - ECUADOR-FINAN .pdf
*CODIGO- TRIBUTARIO - ECUADOR-FINAN .pdf
Mayu Eliz
 
TEORÍA DE LA ARGUMENTACIÓN JURÍDICA 2024 (1).pdf
TEORÍA DE LA ARGUMENTACIÓN JURÍDICA 2024 (1).pdfTEORÍA DE LA ARGUMENTACIÓN JURÍDICA 2024 (1).pdf
TEORÍA DE LA ARGUMENTACIÓN JURÍDICA 2024 (1).pdf
DayanaAnzueto
 

Último (20)

Tema 1 Introducción a la Administración Financiera
Tema 1 Introducción a la Administración FinancieraTema 1 Introducción a la Administración Financiera
Tema 1 Introducción a la Administración Financiera
 
exposición CONTABILIDAD FINANCIERA ciclo 1.pptx
exposición  CONTABILIDAD FINANCIERA ciclo 1.pptxexposición  CONTABILIDAD FINANCIERA ciclo 1.pptx
exposición CONTABILIDAD FINANCIERA ciclo 1.pptx
 
Moral con citas CIC.pptx materia Teología
Moral con citas CIC.pptx materia TeologíaMoral con citas CIC.pptx materia Teología
Moral con citas CIC.pptx materia Teología
 
bono APS.pptx ministerio de salud minsa 2022
bono APS.pptx ministerio de salud minsa 2022bono APS.pptx ministerio de salud minsa 2022
bono APS.pptx ministerio de salud minsa 2022
 
Generalidades del Sistema de Pensiones Chileno.pptx
Generalidades del Sistema de Pensiones Chileno.pptxGeneralidades del Sistema de Pensiones Chileno.pptx
Generalidades del Sistema de Pensiones Chileno.pptx
 
*CODIGO- TRIBUTARIO - ECUADOR-FINAN .pdf
*CODIGO- TRIBUTARIO - ECUADOR-FINAN .pdf*CODIGO- TRIBUTARIO - ECUADOR-FINAN .pdf
*CODIGO- TRIBUTARIO - ECUADOR-FINAN .pdf
 
INTERES COMPUESTO TALLER MATEMATICA FINANCIERA 1
INTERES COMPUESTO TALLER MATEMATICA FINANCIERA 1INTERES COMPUESTO TALLER MATEMATICA FINANCIERA 1
INTERES COMPUESTO TALLER MATEMATICA FINANCIERA 1
 
EE.FF Estado de Resultados por función y naturaleza
EE.FF Estado de Resultados por función y naturalezaEE.FF Estado de Resultados por función y naturaleza
EE.FF Estado de Resultados por función y naturaleza
 
_ECONOMÍA TRADICIONAL, caracteristicas y fundamentos.pptx
_ECONOMÍA TRADICIONAL, caracteristicas y fundamentos.pptx_ECONOMÍA TRADICIONAL, caracteristicas y fundamentos.pptx
_ECONOMÍA TRADICIONAL, caracteristicas y fundamentos.pptx
 
TEORÍA DE LA ARGUMENTACIÓN JURÍDICA 2024 (1).pdf
TEORÍA DE LA ARGUMENTACIÓN JURÍDICA 2024 (1).pdfTEORÍA DE LA ARGUMENTACIÓN JURÍDICA 2024 (1).pdf
TEORÍA DE LA ARGUMENTACIÓN JURÍDICA 2024 (1).pdf
 
Costos de produccion de los diferentes cultivos
Costos de produccion de los diferentes cultivosCostos de produccion de los diferentes cultivos
Costos de produccion de los diferentes cultivos
 
La devaluación. Albanys Gabriela Vegas UFT
La devaluación. Albanys Gabriela Vegas UFTLa devaluación. Albanys Gabriela Vegas UFT
La devaluación. Albanys Gabriela Vegas UFT
 
SARAbank para llenar 2018 SIMULADOR DE CAJA.pptx
SARAbank para llenar 2018 SIMULADOR DE CAJA.pptxSARAbank para llenar 2018 SIMULADOR DE CAJA.pptx
SARAbank para llenar 2018 SIMULADOR DE CAJA.pptx
 
ROL DEL GERENTE MODERNO EN LA PLANEACION
ROL DEL GERENTE MODERNO EN LA PLANEACIONROL DEL GERENTE MODERNO EN LA PLANEACION
ROL DEL GERENTE MODERNO EN LA PLANEACION
 
Presentacion 11. Introduccion Costos ABC y Presupuestos.pptx
Presentacion 11. Introduccion Costos ABC y Presupuestos.pptxPresentacion 11. Introduccion Costos ABC y Presupuestos.pptx
Presentacion 11. Introduccion Costos ABC y Presupuestos.pptx
 
PRESENTACIÓN - UNIDAD 2-SEMANA 5 MATEMATICAS.pptx
PRESENTACIÓN - UNIDAD 2-SEMANA 5 MATEMATICAS.pptxPRESENTACIÓN - UNIDAD 2-SEMANA 5 MATEMATICAS.pptx
PRESENTACIÓN - UNIDAD 2-SEMANA 5 MATEMATICAS.pptx
 
AGENTES ECONOMICOS DENTRO DEL PERU FUNCIONES
AGENTES ECONOMICOS DENTRO DEL PERU FUNCIONESAGENTES ECONOMICOS DENTRO DEL PERU FUNCIONES
AGENTES ECONOMICOS DENTRO DEL PERU FUNCIONES
 
S9_Nuevo+format.doxnnmmmmemkekekkekennennenekk
S9_Nuevo+format.doxnnmmmmemkekekkekennennenekkS9_Nuevo+format.doxnnmmmmemkekekkekennennenekk
S9_Nuevo+format.doxnnmmmmemkekekkekennennenekk
 
exposiciòn contabilidad forense ciclo- I
exposiciòn contabilidad forense ciclo- Iexposiciòn contabilidad forense ciclo- I
exposiciòn contabilidad forense ciclo- I
 
exposicion contabilidad gerencial ciclo I.pptx
exposicion contabilidad gerencial ciclo I.pptxexposicion contabilidad gerencial ciclo I.pptx
exposicion contabilidad gerencial ciclo I.pptx
 

Programación lineal entera AMPL

  • 1. Planificaci´on de una consultoria Problema individual. Optimizaci´on Laboratorio de Modelizaci´on Grado en Matem´aticas Adil Ziani adil.ziani@um.es 27/02/2017 1
  • 2. 1. 7.30 Planificaci´on de una consultoria 1.1. Enunciado Una consultor´ıa que consta de 6 departamentos tiene que planificar c´omo acometer 6 proyec- tos que tendr´a que ejecutar durante un a˜no. Los departamentos est´an jerarquizados, de modo que el departamento 1 es el principal (y al que est´an destinados los empleados m´as preparados) y el departamento 6 corresponde al nivel m´as bajo. Igualmente, los proyectos tambi´en tienen su complejidad. En principio cada departamento deber´ıa ejecutar el proyecto de mismo ´ındice, pero se permite, con cierto l´ımite, que los departamentos apoyen proyectos de menor complejidad, aunque esto supone que sus empleados sean infrautilizados. En la siguiente tabla se resumen las caracter´ısticas de cada proyecto y de cada departamento, as´ı como de la viabilidad de que cada departamento participe en cada proyecto. Donde, C1: Salario base anual por empleado 2
  • 3. C2: Salario empleado por hora C3: Horas de trabajo anuales por empleado C4: Coste de hora extra C5: M´aximo de horas extra anuales por empleado C6: N´umero de empleados actuales C7: Coste fijo de contratar a un empleado adicional C8: Coste fijo de despedir a un empleado actual Obtener la pol´ıtica de contrataci´on de cada departamento y el n´umero de horas que cada de- partamento asigna a cada proyecto con el objetivo de que el beneficio neto final sea m´aximo. 1.2. Respuesta Tenemos una consoltor´ıa con 6 departamentos, que quiere llevar en marcha 6 proyectos durante el pr´oximo a˜no y queremos ver que plantilla de empleados formar y que hace cada de- partamento con el fin de tener un beneficio neto lo m´aximo posible, todo ello sujeto a algunas restricciones que iremos viendo. Lo que queremos decidir se refleja en las variables de decisi´on: Xi,j = n´umero de horas que el departamento i dedica al proyecto j, (en horario laboral). Yi,j = n´umero de horas extra que el departamento i dedica al proyecto j. Ci = n´umero de empleados que se contratan para el departamento i. Di = n´umero de empleados que se despiden del departamento i. xi = n´umero de empleados que habr´a en departamento i.(variable auxiliar) El objetivo es maximizar el beneficio neto de la consultor´ıa, si observamos la tabla anterior, cada proyecto genera un ingreso por hora y cada hora requiere un salario(base m´as cada hora trabajada) para el empleado, ademas de gastos de contrataci´on y despedida, datos que se reflejan en la tabla. Entonces la funci´on objetivo corresponde a ingresos − costes: j∈ proye i∈ depart (V [i, j] ∗ Ingresos[j] ∗ (X[i, j] + Y [i, j]) − C2[i] ∗ X[i, j] − C4[i] ∗ Y [i, j]) − i∈depart (C7[i] ∗ C[i] + C8[i] ∗ D[i] + C1[i] ∗ x[i]) donde Vi,j = 1 si el departamento i puede realizar el proyecto j y 0 en caso contrario. Ahora queda ver las restricciones. 3
  • 4. Hay restricciones sobre el n´umero m´aximo de horas que se puede dedicar a cada proyecto, esto es: ∀j ∈ proy, i∈depart X[i, j] + Y [i, j] MaxHorasProy[j] Hay restricciones sobre el n´umero m´aximo de horas que puede trabajar un departamento, esto es: ∀i ∈ depart, j∈proy X[i, j] C3[i] ∗ x[i] Hay restricciones sobre n´umero de horas extra m´aximas que puede hacer cada empleado, seg´un el departamento al que pertenece, esto es: ∀i ∈ depart, j∈proy Y [i, j] C5[i] ∗ x[i] A˜nadimos una resticci´on que relaciona las variables C, D, x, pues los empleados que habr´a en cada departamento son los que ya hab´ıa mas lo nuevos que se contraten menos los que se despide, esto es: ∀i ∈ depart, x[i] = C6[i] + C[i] − D[i] Y finalmente las restricciones de no negatividad de las variables, y la integridad en las variables de contrataci´on y despedida. Dicho problema de programaci´on lineal entera-mixta, lo hemos resuelto usando el el lenguaje AMPL y solver GUROBI, y la soluci´on que devuelve es: (a) N´umero horas que cada departamento dedica a cada pro- yecto (b) N´umero horas extra que cada departamento de- dica a cada proyecto 4
  • 5. (c) N´umero contrata- dos en cada departa- mento (d) N´umero despedi- dos de cada departa- mento Con un objetivo de 518300 unidades monetarias. Observaci´on: Hemos supuesto que todos los empleados trabajan las mismas horas en cada de- partamento al que pertenecen, y que por tanto se reparten el salario por hora equitativamente. ################################################## En el anexo se incluye el c´odigo. Anexo : C´odigo Archivo .dat data ; set Proyectos := P1 P2 P3 P4 P5 P6 ; set Departamentos := D1 D2 D3 D4 D5 D6; param : Ingresos Maxhoras:= P1 40 3500 P2 35 5800 P3 30 25000 P4 25 45000 P5 20 30000 P6 15 85000; param V ( tr ) : D1 D2 D3 D4 D5 D6:= P1 1 0 0 0 0 0 P2 1 1 0 0 0 0 P3 1 1 1 0 0 0 P4 0 1 1 1 0 0 P5 0 0 1 1 1 0 P6 0 0 0 1 1 1; 5
  • 6. param : C1 C2 C3 C4 C5 C6 C7 C8:= D1 52000 18 1760 20 200 2 10000000 10000000 D2 41600 16 1760 18 200 3 10000000 10000000 D3 31200 14 1840 16 300 10 20000 6000 D4 20800 9 1880 15 500 15 10000 5000 D5 16640 8 1920 12 500 20 8000 4000 D6 12480 7 1920 9 500 35 6000 3000; Archivo .mod model ; set Proyectos ; set Departamentos ; param Ingresos { Proyectos }; param Maxhoras { Proyectos }; param V {Departamentos , Proyectos }; param C1{Departamentos }; param C2{Departamentos }; param C3{Departamentos }; param C4{Departamentos }; param C5{Departamentos }; param C6{Departamentos }; param C7{Departamentos }; param C8{Departamentos }; var X{Departamentos , Proyectos } >=0, i n t e g e r ; var C{Departamentos} >=0, i n t e g e r ; var D{Departamentos} >=0, i n t e g e r ; var x{Departamentos} >=0, i n t e g e r ; var Y{Departamentos , Proyectos } >=0, i n t e g e r ; maximize obj : sum{ j in Proyectos , i in Departamentos :V[ i , j ]==1}(( Ingresos [ j ] ) ∗(X[ i , j ]+Y[ i , j ] ) − C2 [ i ]∗X[ i , j ]−C4 [ i ]∗Y[ i , j ] )− sum{ i in Departamentos }(C7 [ i ]∗C[ i ] + C8 [ i ]∗D[ i ] + C1 [ i ]∗ x [ i ] ) ; subject to MaxHorasProyectos{ j in Proyectos }: sum{ i in Departamentos : V[ i , j ]==1} ( X[ i , j ] + Y[ i , j ] ) <=Maxhoras [ j ] ; subject to MaxHorasExtra{ i in Departamentos }: sum{ j in Proyectos : V[ i , j ]==1} Y[ i , j ] <=C5 [ i ]∗ x [ i ] ; subject to MaxHorasDepartamento{ i in Departamentos }: sum{ j in Proyectos : V[ i , j ]==1} X[ i , j ] <= C3 [ i ]∗ x [ i ] ; subject to FlujoContratacion { i in Departamentos }: x [ i ] = C6 [ i ]+C[ i ]−D[ i ] ; 6