Articulo de referencia

Problema de asignación generalizada

En matemáticas aplicadas , el problema de asignación generalizada máxima es un problema de optimización combinatoria . Este problema es una generalización del problema de asigna...

En matemáticas aplicadas , el problema de asignación generalizada máxima es un problema de optimización combinatoria . Este problema es una generalización del problema de asignación en el que tanto las tareas como los agentes tienen un tamaño. Además, el tamaño de cada tarea puede variar de un agente a otro.

Este problema, en su forma más general, se plantea de la siguiente manera: Hay varios agentes y varias tareas. A cada agente se le puede asignar cualquier tarea, lo que implica un costo y una ganancia que pueden variar según la tarea asignada. Además, cada agente tiene un presupuesto y la suma de los costos de las tareas que se le asignan no puede excederlo. Se requiere encontrar una asignación en la que ningún agente exceda su presupuesto y se maximice la ganancia total de la asignación.

En casos especiales

En el caso especial en que los presupuestos de todos los agentes y los costos de todas las tareas son iguales a 1, este problema se reduce al problema de asignación . Cuando los costos y las ganancias de todas las tareas no varían entre los diferentes agentes, este problema se reduce al problema de la mochila múltiple. Si hay un solo agente, entonces, este problema se reduce al problema de la mochila .

Explicación de la definición

A continuación, tenemos n tipos de artículos,a1{\displaystyle a_{1}}a través deanorte{\displaystyle a_{n}}y m tipos de contenedoresb1{\displaystyle b_{1}}a través debmetro{\displaystyle b_{m}}Cada contenedorbi{\displaystyle b_{i}}está asociado con un presupuestoti{\displaystyle t_{i}}. Para un contenedorbi{\displaystyle b_{i}}, cada artículoaj{\displaystyle a_{j}}tiene gananciaspagij{\displaystyle p_{ij}}y un pesowij{\displaystyle w_{ij}}Una solución es una asignación de elementos a contenedores. Una solución factible es una solución en la que para cada contenedorbi{\displaystyle b_{i}}El peso total de los artículos asignados es como máximoti{\displaystyle t_{i}}La ganancia de la solución es la suma de las ganancias por cada asignación de artículo a contenedor. El objetivo es encontrar una solución factible que maximice la ganancia.

Matemáticamente, el problema de asignación generalizada puede formularse como un programa entero :

maximizar i=1metroj=1nortepagijincógnitaij.sujeto a j=1nortewijincógnitaijtii=1,,metro;i=1metroincógnitaij1j=1,,norte;incógnitaij{0,1}i=1,,metro,j=1,,norte;{\displaystyle {\begin{aligned}{\text{maximize }}&\sum _{i=1}^{m}\sum _{j=1}^{n}p_{ij}x_{ij}.\\{\text{subject to }}&\sum _{j=1}^{n}w_{ij}x_{ij}\leq t_{i}&&i=1,\ldots ,m;\\&\sum _{i=1}^{m}x_{ij}\leq 1&&j=1,\ldots ,n;\\&x_{ij}\in \{0,1\}&&i=1,\ldots ,m,\quad j=1,\ldots ,n;\end{aligned}}}

Complejidad

El problema de asignación generalizada es NP-difícil . [ 1 ] Sin embargo, existen relajaciones de programación lineal que dan lugar a una(11/mi){\displaystyle (1-1/e)}-aproximación. [ 2 ]

Algoritmo de aproximación voraz

Para la variante del problema en la que no todos los elementos deben asignarse a un contenedor, existe una familia de algoritmos para resolver el GAP mediante una traducción combinatoria de cualquier algoritmo para el problema de la mochila en un algoritmo de aproximación para el GAP. [ 3 ]

Utilizando cualquierα{\displaystyle \alpha }-algoritmo de aproximación ALG para el problema de la mochila , es posible construir un (α+1{\displaystyle \alpha +1})-aproximación para el problema de asignación generalizado de manera voraz utilizando un concepto de ganancia residual. El algoritmo construye una programación en iteraciones, donde durante la iteraciónj{\displaystyle j}una selección tentativa de artículos para desecharbj{\displaystyle b_{j}}Se selecciona. La selección para el contenedorbj{\displaystyle b_{j}}podría cambiar ya que los artículos podrían volver a seleccionarse en una iteración posterior para otros contenedores. La ganancia residual de un artículoincógnitai{\displaystyle x_{i}}para contenedorbj{\displaystyle b_{j}}espagij{\displaystyle p_{ij}}siincógnitai{\displaystyle x_{i}}no se selecciona para ningún otro contenedor opagij{\displaystyle p_{ij}}pagik{\displaystyle p_{ik}}siincógnitai{\displaystyle x_{i}}se selecciona para el contenedorbk{\displaystyle b_{k}}.

Formalmente: Usamos un vectorT{\displaystyle T}para indicar el cronograma tentativo durante el algoritmo. Específicamente,T[i]=j{\displaystyle T[i]=j}significa el artículoincógnitai{\displaystyle x_{i}}está programado en el contenedorbj{\displaystyle b_{j}}yT[i]=1{\displaystyle T[i]=-1}significa que el artículoincógnitai{\displaystyle x_{i}}no está programado. La ganancia residual en la iteraciónj{\displaystyle j}se denota porPAGj{\displaystyle P_{j}}, dóndePAGj[i]=pagij{\displaystyle P_{j}[i]=p_{ij}}si el artículoincógnitai{\displaystyle x_{i}}no está programado (es decir,T[i]=1{\displaystyle T[i]=-1}) yPAGj[i]=pagijpagik{\displaystyle P_{j}[i]=p_{ij}-p_{ik}}si el artículoincógnitai{\displaystyle x_{i}}está programado en el contenedorbk{\displaystyle b_{k}}(es decirT[i]=k{\displaystyle T[i]=k}).

Formalmente:

ColocarT[i]=1 para i=1norte{\displaystyle T[i]=-1{\text{ for }}i=1\ldots n}
Paraj=1,,metro{\displaystyle j=1,\ldots ,m}hacer:
Llama a ALG para encontrar una solución para el contenedorbj{\displaystyle b_{j}}utilizando la función de beneficio residualPAGj{\displaystyle P_{j}}. Denotemos los elementos seleccionados porSj{\displaystyle S_{j}}.
ActualizarT{\displaystyle T}usandoSj{\displaystyle S_{j}}, es decir,T[i]=j{\displaystyle T[i]=j}a pesar deiSj{\displaystyle i\in S_{j}}.

Véase también

Referencias

  1. Özbakir, Lale; Baykasoğlu, Adil; Tapkan, Pınar (2010), Algoritmo de abejas para el problema de asignación generalizado , Applied Mathematics and Computation, vol.  215, Elsevier, pp. 3782–3795 , doi : 10.1016/j.amc.2009.11.018 .
  2. Fleischer, Lisa; Goemans, Michel X.; Mirrokni, Vahab S.; Sviridenko, Maxim (2006). Algoritmos de aproximación ajustada para problemas de asignación general máxima . Actas del decimoséptimo simposio anual ACM-SIAM sobre algoritmos discretos - SODA '06. págs. 611–620 . 
  3. Cohen, Reuven; Katzir, Liran; Raz, Danny (2006). "Una aproximación eficiente para el problema de asignación generalizado". Information Processing Letters . 100 (4): 162– 166. CiteSeerX 10.1.1.159.1947 . doi : 10.1016/j.ipl.2006.06.003 . 

Lecturas adicionales

  • Kellerer, Hans; Pferschy, Ulrich; Pisinger, David (19 de marzo de 2013). Problemas con la mochila . Saltador. ISBN 978-3-540-24777-7.