Introducion a GAMS

download Introducion a GAMS

of 20

Transcript of Introducion a GAMS

  • 8/18/2019 Introducion a GAMS

    1/20

    Introduccion a

    GAMS

  • 8/18/2019 Introducion a GAMS

    2/20

    Rafael Merlano Porto

    Ingeniero Industrial – UTBEspecialista Gerencia de Proyectos

    MSc. Ingeniería – UTB

    Rafael Merlano Porto

    Ingeniero Industrial – UTBEspecialista Gerencia de Proyectos

    MSc. Ingeniería – UTB

    ER !"#ER !"#

  • 8/18/2019 Introducion a GAMS

    3/20

    I$TR%&U''I($ A GAMS

    .Meta)uristicas.

    En los *lti+os a,os )an aparecidouna serie de +-todos a/o el no+rede Meta)eurísticas con el prop0sitode otener +e/ores resultados 1uelosalcan2ados por los +-todos)eurísticos tradicionales.El su3/o 4+eta5 signi3ca 4+6s all657 aun ni8el superior7 las +eta)eurísticasson estrategias para dise,ar o+e/orar los procedi+ientos)eurísticos con +iras a otener un

    alto rendi+iento.

    9ue introducido por 9red Glo8er en:;< y a partir de entonces )anaparecido+uc)as propuestas de pautas o guías

    para dise,ar +e/ores procedi+ientosde

  • 8/18/2019 Introducion a GAMS

    4/20

    I$TR%&U''I($ A GAMSPLANTEAMIENTO Y SOLUCION

    .Meta)uristicas

    %pti+i2aci0n aleatoriaB*s1ueda localAlgorit+os 8oraces  yAscensi0n de colinasAscensi0n de colinas con reiniciali2aci0naleatoriaB*s1ueda pri+ero el +e/orEnfriamiento o Recocido simulado%pti+i2aci0n asada en colonias de )or+igasAlgorit+os de En/a+reBúsueda ta!úAl"oritmos #en$ticosAlgorit+os Me+-ticosGRASPMeta>RaPSAlgorit+os Multiarran1ueInteligencia en/a+re

    B*s1ueda por difusi0n estoc6stica%pti+i2aci0n e?tre+a

    • Meta)eurísticasconstruti8as

    @ Meta)eurísticas e8oluti8as@ Meta)eurísticas de*s1ueda

    http://es.wikipedia.org/w/index.php?title=Optimizaci%C3%B3n_aleatoria&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=B%C3%BAsqueda_local&action=edit&redlink=1http://es.wikipedia.org/wiki/Algoritmos_voraceshttp://es.wikipedia.org/wiki/Ascensi%C3%B3n_de_colinashttp://es.wikipedia.org/w/index.php?title=Ascensi%C3%B3n_de_colinas_con_reinicializaci%C3%B3n_aleatoria&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=Ascensi%C3%B3n_de_colinas_con_reinicializaci%C3%B3n_aleatoria&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=B%C3%BAsqueda_primero_el_mejor&action=edit&redlink=1http://es.wikipedia.org/wiki/Simulated_annealinghttp://es.wikipedia.org/wiki/Optimizaci%C3%B3n_por_colonia_de_hormigashttp://es.wikipedia.org/wiki/Optimizaci%C3%B3n_por_colonia_de_hormigashttp://es.wikipedia.org/wiki/Algoritmos_de_Enjambrehttp://es.wikipedia.org/wiki/B%C3%BAsqueda_tab%C3%BAhttp://es.wikipedia.org/wiki/Algoritmos_Gen%C3%A9ticoshttp://es.wikipedia.org/w/index.php?title=Algoritmos_Mem%C3%A9ticos&action=edit&redlink=1http://es.wikipedia.org/wiki/GRASPhttp://es.wikipedia.org/w/index.php?title=Meta-RaPS&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=Algoritmos_Multiarranque&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=Inteligencia_enjambre&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=B%C3%BAsqueda_por_difusi%C3%B3n_estoc%C3%A1stica&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=Optimizaci%C3%B3n_extrema&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=Optimizaci%C3%B3n_extrema&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=Optimizaci%C3%B3n_extrema&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=B%C3%BAsqueda_por_difusi%C3%B3n_estoc%C3%A1stica&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=Inteligencia_enjambre&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=Algoritmos_Multiarranque&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=Meta-RaPS&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=Meta-RaPS&action=edit&redlink=1http://es.wikipedia.org/wiki/GRASPhttp://es.wikipedia.org/w/index.php?title=Algoritmos_Mem%C3%A9ticos&action=edit&redlink=1http://es.wikipedia.org/wiki/Algoritmos_Gen%C3%A9ticoshttp://es.wikipedia.org/wiki/B%C3%BAsqueda_tab%C3%BAhttp://es.wikipedia.org/wiki/Algoritmos_de_Enjambrehttp://es.wikipedia.org/wiki/Optimizaci%C3%B3n_por_colonia_de_hormigashttp://es.wikipedia.org/wiki/Optimizaci%C3%B3n_por_colonia_de_hormigashttp://es.wikipedia.org/wiki/Simulated_annealinghttp://es.wikipedia.org/wiki/Simulated_annealinghttp://es.wikipedia.org/w/index.php?title=B%C3%BAsqueda_primero_el_mejor&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=Ascensi%C3%B3n_de_colinas_con_reinicializaci%C3%B3n_aleatoria&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=Ascensi%C3%B3n_de_colinas_con_reinicializaci%C3%B3n_aleatoria&action=edit&redlink=1http://es.wikipedia.org/wiki/Ascensi%C3%B3n_de_colinashttp://es.wikipedia.org/wiki/Algoritmos_voraceshttp://es.wikipedia.org/w/index.php?title=B%C3%BAsqueda_local&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=Optimizaci%C3%B3n_aleatoria&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=Optimizaci%C3%B3n_extrema&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=Optimizaci%C3%B3n_extrema&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=B%C3%BAsqueda_por_difusi%C3%B3n_estoc%C3%A1stica&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=Inteligencia_enjambre&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=Algoritmos_Multiarranque&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=Meta-RaPS&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=Meta-RaPS&action=edit&redlink=1http://es.wikipedia.org/wiki/GRASPhttp://es.wikipedia.org/w/index.php?title=Algoritmos_Mem%C3%A9ticos&action=edit&redlink=1http://es.wikipedia.org/wiki/Algoritmos_Gen%C3%A9ticoshttp://es.wikipedia.org/wiki/B%C3%BAsqueda_tab%C3%BAhttp://es.wikipedia.org/wiki/Algoritmos_de_Enjambrehttp://es.wikipedia.org/wiki/Optimizaci%C3%B3n_por_colonia_de_hormigashttp://es.wikipedia.org/wiki/Optimizaci%C3%B3n_por_colonia_de_hormigashttp://es.wikipedia.org/wiki/Simulated_annealinghttp://es.wikipedia.org/wiki/Simulated_annealinghttp://es.wikipedia.org/w/index.php?title=B%C3%BAsqueda_primero_el_mejor&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=Ascensi%C3%B3n_de_colinas_con_reinicializaci%C3%B3n_aleatoria&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=Ascensi%C3%B3n_de_colinas_con_reinicializaci%C3%B3n_aleatoria&action=edit&redlink=1http://es.wikipedia.org/wiki/Ascensi%C3%B3n_de_colinashttp://es.wikipedia.org/wiki/Algoritmos_voraceshttp://es.wikipedia.org/w/index.php?title=B%C3%BAsqueda_local&action=edit&redlink=1http://es.wikipedia.org/w/index.php?title=Optimizaci%C3%B3n_aleatoria&action=edit&redlink=1

  • 8/18/2019 Introducion a GAMS

    5/20

    I$TR%&U''I($ A GAMSSOLUCI%N POR #AMS

    Prole+a>Una 'o+pa,ía farica ! productos7 cada producto pasan por tresdeparta+entos de la planta. El consu+o de +ateriales para cadaproducto7 la capacidad por cada &pto en oras y la utilidad porproducto se +uestra en la siguiente tala. . Se desea conocer el

    progra+a opti+o de faricaci0n.

  • 8/18/2019 Introducion a GAMS

    6/20

    I$TR%&U''I($ A GAMSSOLUCION POR #AMS

    Plantea+iento Prole+a>

    1

    2

    1 2

    1

     de productos tipo 1 a fabricar

    de productos tipo 2 a fabricar

    ,

    Maximizar Z= 3X +5X

    s.a

    X

  • 8/18/2019 Introducion a GAMS

    7/20

    I$TR%&U''I($ A GAMSSOLUCION POR #AMS

    Prole+a "!

    Sean i faricas de en8asados y / +ercados deconsu+o. 'ada farica tiene una capacidad

    +6?i+a de producci0n de cfCiD ca/as y cada+ercado de+anda una cantidad c+C/D . Sesupone 1ue la capacidad de las faricas es+ayor o superior a la de+anda total para 1ue el

    prole+a sea factile.

    El costo de transporte entre cada farica i y cada+ercado / por ca/a es de ctCi/D. Se deseasatisfacer la de+anda de cada +ercado al+íni+o costo.

     i

  • 8/18/2019 Introducion a GAMS

    8/20

    I$TR%&U''I($ A GAMSPROBLEMA & '(

      PlantasCiD

    Al+acenesC/D

  • 8/18/2019 Introducion a GAMS

    9/20

    I$TR%&U''I($ A GAMSPROBLEMA &O() SOLUCI%N POR #AMS

      ' 1..... (

      ' 1..... (

     

    ,

    arametros

     de tra"sporte

     

    ij

    ij

      j

    i

    Conjuntosi Fabricas i N  

      j Almacenes j M 

    Variables

     X Cajas a transportar 

     Z Funcion Objetivo Costos totales

    ct Costo

    cm Capacidad de los almacenes

    cf Capacida

    = =

    = =

    =

    =

    =

    =

    =

     ) M

    i=1 *=1

    i*

    1

    i*

    1

     

    +

    Mi" z= -

    !im de ema"da maxima

    X *, ' cada a!mace"(

    !im de capaciad maxima

    X i, ' cada fabrica(

    &

    ij ij

      j

    i

    i

      j

    ij

    d de las fabricas

    ct X 

     sa

    ite

    b Para

    ite

    cf Para

     X 

    =

    =

    ≥ ∀

    ≤ ∀

    ∑ ∑

  • 8/18/2019 Introducion a GAMS

    10/20

    I$TR%&U''I($ A GAMSSOLUCI%N POR #AMS

    El progra+a GAMSCGeneral Modeling Syste+D7 es un softFaredesarrollado por A. Brooe7 & Hendric y A Meerraus.A diferencia de otros pa1uetes de softFare de i+ple+entaci0nde algorit+os +ate+6ticos 1ue per+iten resol8er los

    prole+as de opti+i2aci0n 7 el progra+a GAMS7 presenta la8enta/a de plantear un lengua/e de +odeli2aci0n7 1ue per+iteel poder escriir en un editor la for+ulaci0n +ate+6tica delprole+a y posterior+ente aplicarle una serie de SOL*ERS  oprogra+as de resoluci0n

    #AMS tiene la 8enta/a de resol8er prole+a lineales7 enteros 7enteros –inariosCMIPD

  • 8/18/2019 Introducion a GAMS

    11/20

    I$TR%&U''I($ A GAMSSOLUCI%N POR #AMS

    Para poder e/ecutar el progra+a GAMS7 es necesariocrear un 3c)ero de datos 7 donde se recoge toda lainfor+aci0n del prole+a7 aun1ue introducido de

    for+a particular..os 3c)eros se organi2an en una serie de lo1ues1ue son oligatorios y otros 1ue son opcionales.

    . Blo1ues oligatorios.

    arialesJJJJJJJJ..ARABES EcuacionesJJJJJJJ.EKUATI%$S ModeloJJJJJJJJJ..M%&E Soluci0nJJJJJJJJJS%E

  • 8/18/2019 Introducion a GAMS

    12/20

    I$TR%&U''I($ A GAMSSOLUCI%N POR #AMS

    .!. Blo1ues optati8os.

    'on/untosJJJJJJJ.. SET &atos JJJJ JJJJJJ&ATA isuali2aci0nJJJJJJ..&ISPAL

    Soluci0nJJJJJJJJJS%E

    .. Blo1ues optati8os de te?to7 o líneas de co+entario.

    'o+en2ando cada línea con un 4N5 CasteriscoD7 est6n

    pro)iidos los acentos7 la letra ,. 'uando )ay 1ue escriir 8arias lineas para no tener 1ueescriir cada 8e2 un asterisco se utili2a el co+ando+,ONTE-T57 ade+6s se puede utili2ar cual1uier car6cter7para indicar 1ue se 3nali2a el te?to7 utili2ar el co+andoO.TE-T

  • 8/18/2019 Introducion a GAMS

    13/20

    I$TR%&U''I($ A GAMSSOLUCI%N POR #AMS

    !.". Blo1ues oligatorios

    !. Blo1ue de 8arialesEste lo1ue dee co+en2ar con la palara ARIABES7 en estelo1ue se de3nen las 8ariales 1ue se 8an a usar en el +odelo7indicando de 1ue clase son.

    !.! Blo1ue de ecuacionesEste lo1ue dee co+en2ar con la palara EKUATI%$S7 se deendeclarar y de3nir las ecuaciones 1ue se 8an a usar en el+odelo.

    !. Blo1ue de +odeloEste lo1ue dee co+en2ar con la palara M%&E7 se deende3nir las ecuaciones 1ue se co+ponen el +odelo.

    !.OBlo1ue de soluci0nEste lo1ue se dee indicar el algorit+o utili2ado para resol8er

    el +odelo de3nido pre8ia+ente. Se dee iniciar con la palara

  • 8/18/2019 Introducion a GAMS

    14/20

    I$TR%&U''I($ A GAMSSOLUCI%N POR #AMS

    !.#. Blo1ues %P'I%$AES

    !.#. Blo1ue de con/untos SET'onsiste en de3nir una serie de con/untos por lo generalíndices 7 y asignarles unos 8alores a estos con/untos.

    !.#.! Blo1ue de &AT%S$o se trata de un *nico lo1ue 7 si no 1ue puede contenerdiferentes grupos. Se usa para de3nir una serie de datos 3/osdentro del +odelo

    PARAMATERSJJJ.Par6+etros  TABESJJJJJJ..Tala S'AARSJJJJJ. Escalares

    !.#. Blo1ue de &ISPALEste lo1ue per+ite indicar la clase de salida de datos yfor+ato 1ue desea+os del prole+a.

  • 8/18/2019 Introducion a GAMS

    15/20

    I$TR%&U''I($ A GAMSPROBLEMAS PROPUESTOS

    Prole+a>"!Una 'o+pa,ía farica # productos7 cada producto pasa porcuatro departa+entos de la planta. El consu+o de +aterialespara cada producto7 la capacidad por cada &pto en oras y lautilidad por producto se +uestra en la siguiente tala. Se desea

    conocer el progra+a opti+o de faricaci0n

  • 8/18/2019 Introducion a GAMS

    16/20

    I$TR%&U''I($ A GAMSPROBLEMAS PROPUESTOS

    Prole+a>"Una cadena de su+inistro confor+ada por dosC!D plantas dondepueden faricar dosC!D productos 7 tresCD al+acenes y tresCDcentros de consu+o7 desea opti+i2ar el plan de7 distriuci0n y8entas7 de acuerdo a los costos de transporte7 las

    disponiilidades y re1ueri+ientos de cada centro. os datos sesu+inistran en la siguientes talas.

    i almacén /1, 2, 3/  j centros de consumo /1, 2, 3/ k producto /1, 2/ l planta /1, 2/;

  • 8/18/2019 Introducion a GAMS

    17/20

    I$TR%&U''I($ A GAMSPROBLEMA & '/

      PlantasCiDAl+acenesCiD

    'entros deconsu+oC/D

     ProductosCD

     ProductosCD

  • 8/18/2019 Introducion a GAMS

    18/20

    I$TR%&U''I($ A GAMSPROBLEMAS PROPUESTOS

    Prole+a>"

     Tala de costo cCi7/7D7 unitariode transporte desde cadaal+ac-nCiD7 a cada centro deconsu+oC/D7 del productoCD

      Productos  !. ! .! O. !!. O #!.! <!. ! . ! O.! !. ! O

     Tala de costo sCl7i7D7 unitariode transporte desde cadaplantaCD7 al al+ac-nCiD7 delproductoCD

      Productos  !. #.! <. O Q!. # #!.! <!. O #

  • 8/18/2019 Introducion a GAMS

    19/20

    I$TR%&U''I($ A GAMSPROBLEMAS PROPUESTOS

    Prole+a>"

    Para+eter fCiD costo 3/o deapertura de un al+ac-n #""! O#""

    #

  • 8/18/2019 Introducion a GAMS

    20/20

    I$TR%&U''I($ A GAMSPROBLEMAS PROPUESTOS

    Prole+a>"

    Para+eter 8CD 8olu+en o pesosde una unidad o producto tipo .  olu+en

      !