Programaci´on Lineal Entera - est.uc3m.es · PDF fileProgramaci´on Lineal Entera...

Click here to load reader

  • date post

    22-Sep-2018
  • Category

    Documents

  • view

    267
  • download

    1

Embed Size (px)

Transcript of Programaci´on Lineal Entera - est.uc3m.es · PDF fileProgramaci´on Lineal Entera...

  • Programacion Lineal Entera

    Los modelos de programacion entera son una extension de los modelos

    lineales en los que algunas variables toman valores enteros.

    Con frecuencia las variables enteras solo toman valores en 0-1, ya que

    este tipo de variables permiten representar condiciones logicas.

    Este tipo de modelos permite representar sistemas mucho mas complejos.

    A cambio, la resolucion de los mismos se complica excesivamente. No se

    puede utilizar la suavidad de las funciones para inferir el comportamiento

    de las mismas cerca del optimo.

    Problemas con unas solas decenas de variables pueden ser casi imposibles

    de resolver.

    1

  • Programacion Entera: contenidos

    1. Introduccion

    2. Algunos modelos basicos y modelizacion con vari-

    ables binarias

    a) Problema de la mochila

    b) Problema de asignacion y de asignacion generali-

    zada

    c) Problema del cubrimiento

    d) Relaciones logicas

    3. Resolucion del problema.

    a) Relajaciones lineales y relacion fundamental.

    b) Calidad de una solucion entera: brecha de subop-

    timalidad.

    c) Ramificacion y acotacion (Branch and Bound).

    2

  • Programacion Entera: ejemplos

    mn ctxAx bx 0xi entera para i I {1, . . . , n}

    X Si I = {1, . . . , n} Programacion Lineal Entera Pura.

    X Si I 6= {1, . . . , n} Programacion Lineal Entera Mixta.

    X Si xi {0,1}, i I Programacion Binaria o 01.

    3

  • Problema de la Mochila: ejemplo

    Un ingeniero informatico autonomo quiere optar a realizar un proyecto

    informatico de entre 5 que salen a concurso.

    Solo tiene presupuesto para pagar las tasas de solicitud en 3 proyectos.

    A que 3 proyectos optar?

    Beneficio esperado (en miles de euros) que puede obtener a los 3 anos

    con cada uno de los proyectos.

    Estimacion de la probabilidad de que no le concedan cada uno de los

    proyectos

    Proyecto 1 2 3 4 5Beneficio (miles euros) 90 150 80 100 120Probabilidad de rechazo 0.4 0.7 0.4 0.5 0.6

    Problema: que proyectos debera solicitar para obtener un beneficio mayor

    y asegurarse de que la suma de las probabilidades de rechazo no sea

    superior a 1.5

    4

  • Problema de la Mochila: ejemplo (cont.)

    Variables de decision:

    xi =

    1, si se solicita el proyecto i,

    0, si no se soliciota el proyecto i.i = 1,2,3,4,5

    Restricciones:

    Lmite presupuestario:

    x1 + x2 + x3 + x4 + x5 3

    Suma de las probabilidades de rechazo no exceda 1.5

    0,4x1 + 0,7x2 + 0,4x3 + 0,5x4 + 0,6x5 1,5

    Condicion de variables binarias:

    xi {0,1}, i = 1,2,3,4,5

    5

  • Problema de la Mochila: ejemplo (cont.)

    Objetivo: maximizar el beneficio esperado

    90x1 + 150x2 + 80x3 + 100x4 + 120x5

    Como cambiaras el modelo anterior si se hubiera pedido que la

    probabilidad de no obtener ningun proyecto fuese, a lo sumo, del 10 %?

    Si seleccionamos, por ejemplo, los proyectos 1, 2 y 3:

    P{no obtener ningun proyecto} = P{rechazan P1 y P2 y P3} = (0,4)(0,7)(0,4) =

    P{no obtener ningun proyecto} 0,1 (0,4)(0,7)(0,4) 0,1

    log((0,4)(0,7)(0,4)) log(0,1) log(0,4) + log(0,7) + log(0,4) log(0,1)

    log(0,4)x1 log(0,7)x2 log(0,4)x3 log(0,5)x4 log(0,6)x5 1

    6

  • Problema de la Mochila

    Se dispone de n objetos para llenar una mochila.

    El objeto j tiene un peso pj y tiene una utilidad (valor) cj.

    La mochila admite un peso maximo de b.

    El problema consiste en decidir que objetos se introducen en la mochila

    de forma que se maximice la utilidad de los objetos seleccionados.

    Variables:

    xj =

    1 si el objeto j es seleccionado,

    0 en otro caso.j = 1, . . . , n

    7

  • Problema de la Mochila

    Restricciones:

    Lmite de peso de la mochila:n

    j=1

    pjxj b

    Condicion de variables binarias: xj {0,1} j = 1, . . . , n

    Funcion objetivo: maxn

    j=1

    cjxj

    Se pueden considerar variantes en las que se incluya tambien el volumen,

    etc.

    O la posibilidad de que haya mas de una unidad de cada objeto. En-

    tonces, las variables seran xj igual al numero de unidades del objeto j

    seleccionadas.

    8

  • Problema de asignacion

    El modelo de asignacion permite asignar eficientemente un conjunto de

    personas a un conjunto de trabajos, maquinas a tareas, coches de polica

    a sectores de una ciudad, vendedores a zonas, etc.

    El objetivo es minimizar los costes, tiempos de desplazamiento, o maxi-

    mizar la efectividad.

    Es un modelo muy frecuente como submodelo en otros mas complejos.

    9

  • Problema de asignacion. Ejemplo

    Juan es el jefe de un bufete de jovenes abogados y esta interesado en la

    utilizacion mas efectiva de sus recursos de personal buscando la forma de

    hacer las mejores asignaciones de abogado-cliente.

    El 1 de Marzo le llegan 4 nuevos clientes.

    Revisando a su personal encuentra que 4 abogados: Ana, Bruno, Carmen

    y Domingo.

    Todos pueden ser asignados a los casos.

    Cada uno de ellos solo se puede hacer cargo de un caso.

    10

  • Problema de asignacion. Ejemplo (cont.)

    Para decidir la mejor asignacion Juan tiene en cuenta una tasa de efec-

    tividad (de 1 a 9) construida sobre actuaciones anteriores de dichos abo-

    gados, ya que no todos son igual de buenos (especialistas) en todo tipo

    de procesos:

    tasa de efectividad segun caso de cliente

    Abogado divorcio (1) fusion desfalco (3) herencias (4)empresarial (2)

    ana (1) 6 2 8 5bruno (2) 9 3 5 8carmen (3) 4 8 3 4domingo (4) 6 7 6 4

    11

  • Problema de asignacion. Ejemplo (cont.)

    Para determinar la asignacion mas efectiva Juan debe resolver el siguiente

    problema de asignacion

    max 6x11 + 2x12 + 8x13 + 5x14 + 9x21 + 3x22 + 5x33 + 8x44+

    4x31 + 8x32 + 3x33 + 4x34 + 6x41 + 7x42 + 6x43 + 4x44

    s.a.

    4

    i=1

    xij = 1, j = 1, . . . ,4,

    4

    j=1

    xij = 1, i = 1, . . . ,4,

    xij {0,1}, i = 1, . . . ,4, j = 1, . . . ,4.

    donde las variables xij, i = 1, . . . ,4, j = 1, . . . ,4, se definen como

    xij =

    1, si el abogado i lleva el caso del cliente j,

    0, en otro caso.

    12

  • Problema de Asignacion Generalizada. Ejemplo

    Es una generalizacion del modelo anterior. Cada abogado puede hacerse

    cargo de mas de un cliente simultaneamente, siempre y cuando no supere

    su capacidad

    Un sistema de procesamiento compartido tiene 3 ordenadores diferentes

    (Oj, j = 1,2,3) y tiene que procesar 6 tareas (Ti i = 1, . . . ,6)

    Todas las tareas se pueden realizar en cualquier ordenador, pero no pueden

    fraccionarse (se deben completar en el ordenador en que se inician)

    Los tiempos de procesamiento de cada tarea i en cada ordenador j, tij,

    vara segun el ordenador

    El tiempo disponible de cada ordenador para ejecutar las tareas esta limi-

    tado

    13

  • Problema de Asignacion Generalizada. Ejemplo (cont.)

    OrdenadorTarea O1 O2 O3

    T1 18 16 12T2 14 21 19T3 23 27 33T4 16 24 23T5 17 24 24T6 25 28 30

    T. disp. (Cj) 47 41 46

    A que ordenador debemos mandar cada tarea si queremos minimizar el

    tiempo total de procesamiento?

    Variables

    xij =

    1, si la tarea i se asigna al ordenador j,

    0, en otro caso.,

    i = 1, . . . ,6, j = 1,2,3.

    14

  • Problema de Asignacion Generalizada. Ejemplo (cont.)

    Funcion objetivo

    T = 18x11 + 16x12 + 12x13 + 14x21 + 21x22 + 19x23+

    + 23x31 + 27x32 + 33x33 + 16x41 + 24x42 + 23x43+

    + 17x51 + 24x52 + 24x53 + 25x61 + 28x62 + 30x63

    Restricciones

    X Cada tarea se procesa en un solo ordenador:

    3

    j=1

    xij = 1, i = 1, . . . ,6.

    X Limitacion de tiempo disponible en cada ordenador:

    18x11 + 14x21 + 23x31 + 16x41 + 17x51 + 25x61 4716x12 + 21x22 + 27x32 + 24x42 + 24x52 + 28x62 4112x13 + 19x23 + 33x33 + 23x43 + 24x53 + 30x63 46

    15

  • Problema de Asignacion Generalizada. Ejemplo (cont.)

    T = mn6

    i=1

    3

    j=1

    tijxij

    3

    j=1

    xij = 1, i = 1, . . . ,6

    6

    i=1

    tijxij Cj, j = 1,2,3

    xij {0,1}

    Como cambiaras el modelo para que el tiempo de procesamiento total

    fuese el tiempo que tardan en completarse todas las tareas que se procesan

    en paralelo en los 3 ordenadores?

    16

  • Problema de Asignacion Generalizada. Ejemplo (cont.)

    Funcion objetivo

    T = max{

    18x11 + 14x21 + 23x31 + 16x41 + 17x51 + 25x61,

    16x12 + 21x22 + 27x32 + 24x42 + 24x52 + 28x62,

    12x13 + 19x23 + 33x33 + 23x43 + 24x53 + 30x63}

    T = mnmax

    6

    i=1

    ti1xi1,6

    i=1

    ti2xi2,6

    i=1

    ti3xi3

    ,

    3

    j=1

    xij = 1, i = 1, . . . ,6

    6

    i=1

    tijxij Cj, j = 1,2,3

    xij {0,1}

    17

  • Problema de Asignacion Generalizada. Ejemplo (cont.)

    T = mn z

    6

    i=1

    ti1xi1 z

    6

    i=1

    ti2xi2 z

    6

    i=1

    ti3xi3 z

    3

    j=1

    xij = 1, i = 1, . . . ,6

    6

    i=1

    tijxij Cj, j = 1,2,3

    xij {0,1}

    18

  • Problema de Cubrimiento. Ejemplo

    Un tecnico de sistemas del laboratorio de calculo de la Escuela Politecnica

    Superior quiere acceder a cinco archivos distintos. Hay copia de estos

    archivos en distintas cintas de backup:

    CINTAS

    f1 C1, C2, C5, C6, C8, C9, C10f2 C1, C3f3 C2, C5, C7, C10f4 C3, C6, C8f5 C1, C2, C4, C6, C7, C9, C10

    Los tamanos de las cintas de backup C1, . . . ,C10 son:

    (30,50,