Está en la página 1de 3

INSTRUCCIONES DE AMPL

Clase 1.

Ejercicio de vuelo 3 tripulaciones diapositivas 14 de febrero montería

Conjuntos :

J: secuencia factible de m, m E j

I: tipos de vuelos n , n E i

Parametros:

Cj: costo asociado de asignar m a una tripulación

Aij: { 1 si el vuelo n pertenece a la secuencia m .

0 de lo contrario

Variable de decisión

Xj:{ 1 si se asigna una secuencia m a una tripulación

0 de lo contrario.

Función objetivo

Minimizar Z= ∑𝑛𝑗=1 𝐶𝑗𝑋𝑗

Sujeto a

∑𝑗 𝑋𝑗 = 3

∑ 𝐴𝑖𝑗𝑋𝑗 ≥ 1 ∀ 𝑖
𝑗

𝑋𝑗 ∈ {1,0}
AMPL

Crear un archivo para el modelo y un archivo para los datos

File new , guardar donde descomprimi el archivo

Archivo .mod donde vamos a trabajar el modelo

Archivo .dat para los datos

Comentario con #
CONJUNTOS

Para definir parámetros param ; (donde ponemos N o M que es el limite superior del cojunto)

Para conjunto set :=;

PARAMETROS

Param (nombre parámetro){n in j } para dos subíndices hago lo mismo separo con una coma y
cierto corchetes

VARIABLE DECISION

Var x{n in j } binary (se pone binary para cuando es binaria, int para cuando es entera )

FUncion objetivo

Minimize z : sum {n in j} c[n]*x[n];

Maximize z

RESTRICCIONES

Subject to cobertura{m in i}: sum{n in j } a[m,n]*x[n]>=1;

(TODO ESTO VA EN EL MOD)

Data;

Param N:= poner el numero de la cota superior ;

Param m:= mismo de arriba;

Param c:=

1 2

2 4

3 6

4 7

Filas costos

PARA Correr

Me paro en .dom click derecho y sent to ampl

Y luego de que no este error hago lo mismo en .dat

Luego me paro en la consola

Escribo : option solver gurobi;

Y luego abajo solve; y un enter


Para ver la solución

Se pone display x;
1 1 2 2 3 3
1 2 1 2 1 2
1250 1100 1200
1050 890 1700
1340 1100 1200
989 899 1800
1000 1349 1500
1150 1239 1345;

También podría gustarte