SlideShare una empresa de Scribd logo
En dos versiones con restricciones de clase de la
Múltiples problemas de mochila 1
H. Shachnai2 y Tamir T.2
Abstracto. Estudiamos dos variantes del problema mochila clásica, enla que necesitamos colocar artículos de
diferentes tipos en varias mochilas; cada mochilatiene una capacidadlimitada y un límite en el númerode
diferentes tipos de elementos que puede contener: queremos en los múltiples problemas de mochilaconrestricciones de clase (CMKP)
maximizar el númerototal de artículos envasados; en el problemade colocaciónjusta (FPP)nuestroobjetivoes el mismo lugar
porción (grande)de cada conjunto. Buscamos una colocaciónperfecta,en la que ambos problemas estánresueltos óptimamente. Nos
primero demostrarque los dos problemas NP-hard; Entonces consideramos algunos casos especiales, donde una colocación perfecta
existe y puede encontrarse en tiempopolinomial. Para otros casos, le damos Soluciones aproximadas. Porúltimo, le damos
una solución casi óptima para el CMKP. Nuestros resultados parael CMKP y el FPP se muestranpara proporcionar eficientes
soluciones para dos problemas fundamentales que se presentan en subsistemas de almacenamiento multimedia.
Palabras claves. Mochila,embalaje,algoritmos de aproximación,la asignaciónde recursos, equidad, utilización,
Multimedia bajo demanda.
1. Introducción
1.1. planteamiento del problema.En el conocido múltiples problema mochila (MKP) [18]
M artículos de diferentes tamaños y valores tienen que ser embalado en N mochilas con limited
volúmenes. En este trabajo se estudian dos variantes de la MKP, en qué elementos de distinta M
tipos debe ser embalado en mochilas N , cada uno con un volumen limitado y una limitada
cantidad de compartimentos; objetos de diferentes tipos no pueden colocarse en el mismo compartimiento.
En concreto, la entrada es un universo U, que consiste en M distintos tipos de
artículos, dados que los subconjuntosde U 1 ; : : : ; U M hay j U yo j elementos de tipo , 1 · yo · M , y
U D U 1 [ U2 ¢ ¢ ¢ [ UM; todos los elementos tienen el mismo tamaño (unidad) y el mismo valor, que
es, para todos los u 2 U s . u / D w. u / D 1. existen N Mochilas: la mochila th j , Kj ,
tiene el volumen V j y un número limitado de compartimentos, C j en el cual los objetos pueden
colocarse, 1 · j · N . Por lo tanto,en la mochila de th j podemos colocar artículos de a lo sumo Cj
de diferentes tipos. La salida de nuestros problemas de optimización es una colocación,que especifica
por cada mochila K j a los tipos de elementos de K j asignados los compartimientos y cómo
muchos artículos de cada tipo se colocan en K j . Una colocación es legal si Kj asignados a más
C j compartimentos y el tamaño total de los artículos colocados en K j no exceda de V j , para
1 Una versión preliminarde este artículo aparecióen Procedimientos dediversiónconalgoritmos, Isola d' Elba, Italia,
Junio de 1998.
2 Departamento de informática, el Technion, Haifa32000,Israel. f hadas, tami g @cs.technion.ac.il.
Recibido el 01 de junio de 1998; revisado 05de diciembre de 1998. Comunicado porN. Megiddo.
Publicación online 06de octubrede 2000.
En dos versiones constreñida del problema mochila múltiples 443
todos los 1 · j · N . Una colocación determina un subconjunto U0 D U0
1 [ U0
2 [ ¢ ¢ ¢ [ U0
M de U,
tal que j U 0
Yo
j es el número de artículos empacado de U yo .
Los dos problemas de optimización estudiados en este trabajo son:
El-constreñida múltiples problema mochila (CMKP), en el cual nuestro objetivo
es maximizar el tamaño total de los elementos empaquetados,dada por
P M
yo D 1
j U 0
yo j.
El problema de colocación justa (FPP), donde el objetivo es maximizar el valor de
0 < c · 1 tal que 8 1 · yo · M ; j U 0
yo ¸ j c ¢ j U yo j.
A lo largo del papel asumimos
P M
yo D 1
j U yo j D P N
j D 1 V j , es decir, el número total
de los elementos de U es igual a la suma de los volúmenes de mochila. En particular, buscamos un
colocación perfecta , en que ambos problemas están resueltos óptimamente. De hecho,tal una colocación
da la máxima utilización de las capacidades de mochila, es decir, el total de ocupados volumen
es V D P N
j D 1 V j y la máxima imparcialidad, es decir, c D 1.
La Asunción j U j D V simplifica la presentación de nuestros resultados,porotra parte, cualquier
entrada para el problema de gestión de almacenamiento que motivado nuestro estudio,satisface esta
suposición.
Es importante señalar, sin embargo, que nuestros resultados tienen para las entradas generales para el
el CMKP y el FPP, es decir, para cualquier relación entre la j U j y V. Elaboramos en eso
en el apéndice.
1.2. Administración de almacenamiento de información en sistemas Multimedia.Nuestras dos variantes de la
mochila
problema están motivados por dos problemas fundamentales que se presentan en la administración del
almacenamiento
para los sistemas multimedia-on-demand (MOD). MOD servicios se están volviendo comunes en
Biblioteca recuperación de información, entretenimiento y aplicaciones comerciales. MODsystems
se espera que gestionen con los enormes requisitos de ancho de banda y almacenamiento de multimedia
datos.Además, MOD servidores deben soportarlos requerimientos de sincronización estricta: cada
usuario puede elegir un programa que desea ver y el tiempo que desea ver. El
el servicio debe ser suministrado dentro de un pequeño estado latente y garantizando una casi constante
velocidad de transferencia de los datos.
En un sistema MOD se mantiene una gran base de datos de archivos de programa video M en un centralizado
servidor. Cada archivo de programa se asocia con un parámetro de popularidad, dado por pi 2
[0; 1], donde
P M
yo D 1 p yo D 1. los archivos se almacenan en los discos N compartida. Cada uno de los discos
es caracterizado por (i) almacenamiento de capacidad, que es el número de archivos que pueden residir
en él y (ii) su capacidad de carga, dado por el número de flujos de datos que pueden ser leídos
simultáneamente desde ese disco. Suponiendo que fp1; : : : ; p M g son conocidos,podemos predecir
la carga prevista generada por cada uno de los programas en cualquier momento.
Queremos definir una asignación estática de almacenamiento y carga de cada archivo, por lo que la carga
generados debido a acceder a las peticiones para el archivo puede ser satisfecho. Nuestra asignación debería
permitir
transmisiones simultáneas de tantos programas de video como sea posible. En efecto, debe
reflejar las popularities de los programas, permitiendo que muchas transmisiones de popular
los programas y sólo pocas transmisiones a los menos populares. En otras palabras, queremos
como lograr una asignación justa de almacenamiento y capacidad de carga. Otro objetivo es
maximizar la utilización de la capacidad de carga del sistema.
El problema de asignación de archivos en discos,con el fin de maximizar la utilización (equidad), puede ser
formulado como una instancia de la CMKP (FPP): un disco j con capacidad de carga L j y almacenamiento
capacidad C j estará representada por una mochila K j con el volumen L j y C j compartimentos.
Un archivo estará representado por un conjunto U yo con el tamaño j U yo j que es proporcional al archivo
444 H. Shachnai y T. Tamir
popularidad. En concreto,jUD j PN
j D 1 L j y j U yo j D p yo j U j . 3 Una solución para cualquiera de nuestras dos
variantes de los problemas de mochila inducirá una asignación estática legal.
1.3. trabajos relacionados.Problemas relacionados con el trabajo previo sobre el MKP y otra mochila
suponerque (i) todos los elementos del mismo tipo tienen que sercolocados en el mismo saco,y
(ii) no hay límite en el número de diferentes tipos de elementos que pueden colocarse en una
mochila (véase, por ejemplo, [3], [7], [15], [20] y estudios detallados en [18] y [19]).
El caso especial de los MKP donde N D 1, conocido como el clásico 0 – 1 problema mochila,
admite un esquema de aproximación polinomial completamente (AAP). Es decir, para cualquier "> 0, un
.1 ¡ "/ -aproximación a la solución óptima puede ser encontrado en O . n =" 2 / , donde n es el
número de elementos [6], [7]. En contraste,el MKP es NP-hard en el sentido fuerte, por lo tanto
es poco probable que tengan un AAP, a menos que P D NP [19].
El CMKP está estrechamente relacionado con el problema de la mochila fraccionario:este problema puede
ser
óptimamente resuelto en tiempo polinomial (por un simple algoritmo voraz [5]). De hecho,los conjuntos
U 1 ; : : : ; U M puede ser sustituido por M artículos de tamaños j U 1 j ; : : : ; j U M j , donde cada elemento
se puede dividir entre varias mochilas. En nuestra versión generalizada de la mochila fraccionaria,
cada mochila tiene también una capacidad limitada y un límite en el número de elementos que puede
contener.
Mostramos abajo que este problema es NP-hard.
Trata de otros trabajos relacionados con programación multiprocesador [9] – [11], también conocida como la
makespan mínimo problema: teniendo en cuenta los procesadores n y m trabajos con integral designado
tiempos de procesamiento, el objetivo es programar los trabajos en los procesadores,tal que el general
se minimiza el tiempo de finalización del programa. Podemos representar una mochila por un
procesadory cada conjunto de elementos de tamaño k por un trabajo que requiere k unidades de tiempo de
procesamiento.
Por lo tanto,hay n D N procesadores y m D M puestos de trabajo. La restricción del compartimiento puede
estar representados en el problema de programación permitiendo que a lo sumo C j trabajos para ser
programada en
procesadorj , 8 1 · j · N . Tenga en cuenta, que es equivalente a maximizar minimizar el makespan
la utilización de los volúmenes de mochila. Investigaciones anteriores sobre el problema de programación
No hay límite en el número de puestos de trabajo que puede ser asignado a cada procesador,es decir, no
asume
C yo D M , 8 1 · yo · M (una encuesta aparece en [12]). En este caso el problema makespan
admite un esquema de aproximación de tiempo polinómico [9].
MOD sistemas han sido estudiados intensamente en los últimos años [1], [8], [16] [17], [21].
Sin embargo, el problema de la asignación recibió poca atención sólo en este contexto. En concreto,
la mayoría de los trabajos anteriores discute el problema de equilibrio de carga en los discos,en
que la meta es tener la carga total en el sistema distribuido uniformemente entre N discos.
La primera solución propuesta para el problema de balanceo de carga estaba entrelazado (véase, por ejemplo,
[2] y [4]), en que los datos de cada archivo se distribuyen en varios discos. Por lo tanto,la
carga pesada causada por un popular programa es compartida entre estos discos.
En algoritmos dinámicos [22] fueron sugeridos para equilibrar la carga en el sistema. El
papel también aborda el problema de determinar el número de copias de cada archivo que
debe mantenerse en el sistema; el objetivo es tener la capacidad de almacenamiento total asignada
a f yo reflejar su popularidad. Este criterio puede producir malos resultados cuando se utilizan para la solución
de
nuestros problemas de optimización: intuitivamente, el algoritmo destinará múltiples copias de un
archivos más populares, sin embargo, estas copias se pueden almacenar en discos,cuyas capacidades de carga
son
3 Por simplicidad, suponemos que p yo j U j es un entero (de lo contrariopodemos utilizaruna norma técnica [14]de redondeo).
En dos versiones constreñida del problema mochila múltiples 445
pequeño.En consecuencia,estos discos se sobrecarga y el sistema rechazará a menudo
solicitudes de ese archivo. Esto es debido al hecho de que la colocación de archivos en los discos se usa como
parámetros sólo los popularities archivo y capacidades de almacenamiento de los discos,mientras que la
carga
se omiten las capacidades (se da un ejemplo detallado en la sección 2.3.2).
1.4. nuestros resultados.Ahora resumimos los resultados presentados en este documento:
² El CMKP y el FPP están NP-hard.
² Para algunos casos una colocación perfecta siempre existe y puede encontrarse en polinomio
tiempo. Se dan tres condiciones simples para la existencia de una colocación perfecta. Para
cada condición, mostramos cómo el CMKP y el FPP pueden seróptimamente resuelto, cuando
esta condición es satisfecha.
² Cuando las condiciones no se cumplen, wederive Soluciones aproximadas por nuestra mochila dos
problemas. La proporción de aproximación depende de la "uniformidad" de las mochilas.
En concreto, dado r > 0 y ® ¸ 1 tal que 8 j ; r · V j = C j · ® ¢ r , le damos un
algoritmo que logra . 1 =®/ -aproximación para el CMKP y el FPP.
² Demostramos que si la cantidad de compartimentos en cada mochila es menos b, para algunos
b ¸ 1, es decir, C j ¸ b , 8 1 · j · N entonces el CMKP se puede aproximar a dentro
factor b =. b C 1/.
El resto del documento está organizado como sigue. Los resultados de dureza se dan en
Sección 2.4. En la sección 3 se discuten varios casos en los que existe una colocación perfecta
y puede encontrarse en tiempo polinomial. Se da una solución casi óptima para el CMKP en
Sección 4. En la sección 5 se describe cómo se pueden aplicar los resultados teóricos a almacenamiento de
información
gestión en sistemas MOD y en particular a subsistemas de discos heterogéneos . En
Sección 6 damos direcciones posibles para el trabajo futuro.
2. preliminares. Dado N mochilas con los volúmenes V 1 ; : : : ; V N el potencial de embalaje
de las mochilas, denotados por V, es el número total de elementos que pueden sercolocados en
las mochilas, es decir, V D P N
j D 1 V j . Para un universo U objetos del tamaño de unidad, repartido a los
establece U 1 ; : : : ; U M una solución a la CMKP o la FPP puede representarse como dos M £ N
matrices:
1. la matriz de indicadores,, un f0; 1 g -matrix, yo ; j D 1 iff un compartimiento de K j se asignaron
elementos de tipo U yo .
2. matriz de cantidad Q, Q; j 2 f 0 ; 1 ; : : : ; V j g Q yo ; j es el número de elementos de U yo que
se colocan en K j .
Una colocación legal tiene que satisfacerlas siguientes condiciones:
² Yo yo ; j D 0 ) Q; j D 0. esta condición refleja el hecho de que elementos de Uque puede ser colocado
en K j sólo si un compartimiento de K j fue asignado a los elementos de tipo .
² Por cada mochila K j ,
P
yo Q yo ; j · V j es decir, el número total de elementos colocados en K j
No exceder su capacidad.
² Por cada mochila K j ,
P
yo Yo yo ; j · C j , es decir, el número de diferentes tipos de artículos
colocado en K j no exceda la cantidad de compartimentos en K j .
446 H. Shachnai y T. Tamir
Las matrices y Q determinarán un subconjunto de elementos U 0 D U 0
1
[¢ ¢ ¢[ U 0
M que se coloca
en las mochilas.
D Definición 2.1. dada una solución para el CMKP (FPP), la cantidad llena de U ,
denota por Q yo es el número total de elementos lleno de U yo . Por lo tanto, Qi D jU0
yo j D P N
j D 1 Q yo ; j .
2.1. utilización de una colocación.Es nuestra primera medida por la calidad de una colocación
utilización:
D Definición 2.2. la utilización de una colocación es
P M
yo D 1 Q yo .
La máxima utilización posible de una colocación es V, lo que significa que todo el embalaje
se explota el potencial de las mochilas. Desde
P M
yo D 1
j U yo j D V también significa que exactamente
j U yo j elementos del conjunto de U yo se embalan. Otras colocaciones pueden utilizar sólo una parte de la
embalaje total potencial:
D Definición 2.3. una colocación es c utilizado sisu utilización es igual a c ¢ V, para algunos c 2
[0; 1].
Las preguntas principales son:"la máxima utilización posible se encuentran en polinomio
tiempo?" "Podemos encontrar una aproximación eficiente?"
TheCMKPaims en maximizar la utilización de los potenciales de embalaje: en la sección 4we
presentarun algoritmo de aproximación dual para theCMKP. La noción de aproximación dual
fue introducido en [13]. Se trata de aproximar la viabilidad de una solución para un determinado
problema, en lugar de su optimalidad; algoritmos de aproximación tradicional buscan factible
soluciones que son subóptimas, donde el rendimiento del algoritmo se mide por
el grado de suboptimality permitido.
En un algoritmo de aproximación dual el objetivo es encontrar una solución factible que
es superoptimal; el rendimiento del algoritmo se mide por el grado de inviabilidad
permitido. La aproximación de la relación general entre tradicionales (o primario)
algoritmos y algoritmos de aproximación dual se discute en el capítulo 9 de [12]. El
algoritmo de aproximación dual que presentamos en la sección 4 es superoptimal para el CMKP.
Nuestro algoritmo permite un pequeño grado de inviabilidad, es decir, es a lo sumo un compartimiento
añadido a cada una de las mochilas.
2.2. el problema de colocación justa.El segundo criterio para medir la calidad de
una colocación es equidad:
D Definición 2.4. una colocación es c-justo, para algunos c 2 [0; 1], if, para cada conjunto Uyo , Q ¸
c ¢ j U yo j.
Una óptima colocación es 1-justo. En una colocación 1-justo, para cada yo , exactamente jU j artículos
del conjunto deU yo se embalan. Desde
P M
yo D 1
j U yo j D V también significa que el potencial de embalaje
de las mochilas es plenamente explotadas.
En dos versiones constreñida del problema mochila múltiples 447
Varias preguntas surgen cuando se busca una colocación justa: "hace una colocación 1-Feria
existe para cualquier instancia del problema?" "Podemos encontrarlo eficientemente?" "Cuando una 1-Feria
colocación no existe, podemos encontrar (o aproximado) una colocación óptima eficacia? "
2.3. combina la utilización y la equidad
2.3.1. el problema de una colocación perfecta.Primero exploramos a la relación entre theCMKP
y el FPP.
D Definición 2.5. una colocación perfecta es una colocación en que todos los elementos de todos los
sistemas están llenos, y todas las mochilas están llenos.
Claramente, cualquier colocación perfecta es 1-Feria y utilizada 1.
Ahora mostramos que para algunos casos una colocación perfecta no existe. Considerar un
sistema simple que consta de dos mochilas, con C 1 D C 2 D 1 y V 1 D V 2 D 10, y
dos conjuntos de elementos: j U 1 j D 15 y j U 2 j D 5. son las colocaciones sólo legales:
1. cada sistema se embala en una mochila diferente. Diez ítems de U1 y cinco elementos de U2 son
embalado.
2. ambos compartimientos se asignan a U1, o ambos compartimientos se asignan a U2.
Claramente, estas ubicaciones son 0-justo.
Nota, que por el aumento de C 1 a 2 obtenemos una instancia, para que una colocación perfecta
existe: ahora podemos colocar artículos de U 1 en dos mochilas y elegir Q 1 ; 1 D Q 2 ; 1 D 5
y Q 1 ; 2 D 10.
Cuando no existe una colocación perfecta, nos gustaría encontrarla mejor posible.
Sin embargo, los dos objetivos de utilización y la equidad pueden entrar en conflicto. Considere una instancia
con dos Mochilas: V 1 D 20 ; C 1 D 2 Yo V 2 D 10 ; C 2 D 1; y tres conjuntos de elementos:
j U 1 j D 14 ; j U 2 j D 14 ; j U 3 j D 2.
Una colocación que alcanza la máxima utilización se presenta en la figura 1: 28
artículos son embalados, es decir, esta colocación es 28
30 -utilizado. Sin embargo, es 0-Feria — ningún elemento de
U 3 está lleno. Figura b presenta la mejor colocación posible con respecto a la justicia.
Es 10
14 -Feria y 26
30 -utilizado. En general, cualquier c-Feria de colocación es por lo menos c-utilizados.
2.3.2. algoritmossimples. En esta sección se muestran que dos simples algoritmos codiciosos
No son adecuados para la CMKP y el FPP. El primer algoritmo (presentado en [22],
en el contexto de sistemas MOD) puede utilizarse para la FPP: el algoritmo intenta
garantizar la "equidad" asignando a cada conjunto de elementos de un número de compartimentos
es proporcional a su tamaño. En concreto, utilizando un procedimiento de prorrateo, el algoritmo
primero se determina la cantidad de compartimentos, yo que se destinarán aU yo 1 · yo · M ;
luego selecciona un subconjunto de yo mochilas que almacenan los elementos de U yo . Finalmente, los
volúmenes
de las mochilas están divididas entre los conjuntos,con el fin de lograr la máxima imparcialidad.
Para darse cuenta de que este algoritmo no es apto para todos los problemas de la mochila, considerar
una instancia que consiste en tres sets, j U 1 j D 6 ; j U 2 j D j U 3 j D 3 y ocho mochilas,
con C j D 1 de 1 · j · 8. el volumen de la mochila primera es V1 D 5 y los volúmenes
de los restantes mochilas son V 2 D V 3 D ¢ ¢ ¢ D V 8 D 1; así el potencial de embalaje
de las mochilas es V D 12. el número total de compartimientos es ocho, por lo tanto,
por el criterio de "número de compartimientos", puesto que la mitad de los artículos pertenecen a U 1 cuatro
448 H. Shachnai y T. Tamir
Figura 1. Máximautilizaciónmáxima imparcialidadfrente a.
los compartimentos deben asignarse a este conjunto,mientras que U 2 y U 3 debe colocarse en dos
Mochilas para cada uno. Claramente, no existe ninguna colocación justa bajo estas condiciones:el conjunto
cuya
los artículos se almacenan en la mochila primera se asigna volumen extra, mientras que los otros dos
conjuntos
son "discriminados".
En la FPP nuestro objetivo es encontrar las colocaciones en cual Q yo la cantidad llena de U yo ,
refleja su tamaño. Tenga en cuenta que en el ejemplo anterior, si la cantidad de compartimentos asignados
para cada conjunto de ítems no está determinada antes de la colocación, luego una colocación perfecta
existe: por ejemplo, podemos colocar los elementos de U 1 en K 1 y K 2 artículos de U 2 en
K 3 ; K 4 y K 5 ; y los artículos de U 3 en K 6 ; K 7 y K 8 . De hecho,elementos de U1 se colocan
en solamente dos mochilas, pero puesto que una de estas mochilas es grande (K1), todos los artículos de
U 1 puede ser embalado.
El segundo algoritmo está basado en el algoritmo Más largo tiempo restante primero (LRTF)
[10]. LRTF proporciona un . 43
¡1 = n / -aproximación al problema makespan, donde
n es el número de máquinas. Cuando LRTF se adopta para la FPP, colocamos los artículos de
el conjunto restante más grande en la mochila con el mayor volumen restante.
En dos versiones constreñida del problema mochila múltiples 449
Tenga en cuenta que este algoritmo puede producir colocaciones pobres,nonfair. Considere una instancia
con dos Mochilas: V 1 D L C 1 ; C 1 D L y V 2 D L ; C 2 D 1, para algunos L > 1;
Supongamos que hay L C 1 establece, j U 1 j D L C conjuntos restantes 1y en el L j U yo j D 1.
La colocación óptima los paquetes de los artículos L de los conjuntos pequeños en K 1 y los artículos L de U 1
en K 2 . Este es un . L =. L C 1 // -Feria y . 2L =. 2L C 1 // -colocación utilizado. El LRTF
algoritmo elige primero Q 1 ; 1 D L C 1 y un elemento más de otro conjunto se coloca en
K 2 . Luego no se quedan compartimentos disponibles en K2. La colocación resultante es 0-justo y
.. L C 2 /=. 2L C 1 // -utilizados.
Por otra parte, considerar una variante de la LRTF, que ordena las mochilas por el cociente
V j = C j . Luego se colocan elementos del conjunto restante más grande en la mochila en la que
el cociente (actualizado) V j = C j es máxima. Tenga en cuenta que este algoritmo también produce ineficiente
soluciones para la FPP. Consideremos, por ejemplo, dos mochilas con V1 D 7; C 1 D 1 y V 2 D
12 ; C 2 D 2; y tres conjuntos con j U 1 j D 10 ; j U 2 j D 7, y j U 3 j D 2. en el óptimo
colocación U 2 se coloca en K 1 , mientras que U 1 y U 3 se colocan en K 2 . El algoritmo anterior
inicialmente los paquetes de siete artículos de U 1 en K 1 y no puede completar el embalaje de todos los
artículos de . En particular, es 0-Feria para U3. Utilizando una regla distinta, que coloca los artículos
desde el set con la restante más grande "desempacado fracción" en la mochila con el
más grande (actualizado) V j = C j cociente, puede aumentar la equidad, con una correspondiente disminución
en
utilización. Aún así, un algoritmo más complicado, que combina la clasificación por los cocientes
V j = C j con otras ideas, puede ser útil en la obtención de algoritmos de aproximación para el
CMKP (elaboramos en eso en la sección 4).
2.4. dureza del problema una colocación perfecta. La siguiente pregunta que consideramos es
Si podemos detectar eficientemente si existe una colocación perfecta.
T HEOREM 2.1. dado N mochilas con losvolúmenes V1; : : : ; V N radiantes , j compartimentos
en la mochila j y los conjuntosde elementos U 1 ; : : : ; U M es NP-hard para determinar si un perfecto
colocación existe para esta instancia.
P Techo .Mostramos una reducción del problema de la partición,que es conocido por ser NPhard
[6]. el problema de la partición se compone de un conjunto finito Ay tamaño s. un / para cada una 2 A .
El problema es determinar si existe un subconjunto A 0 de tal manera que
P
yo 2 A 0 s . yo / D P
yo 2 A n A 0 s . yo /.
Dada una instancia para la partición, considerar el problema de colocación consiste en dos
establece j U 1 j D j U 2 j , y j A j mochilas con C j D 1 y V j D s . un j /; 8 1 · j j · A j . Por
este problema, cada una colocación perfecta induce una deseada partición y viceversa.
Cualquier colocación perfecta es 1-Feria y utilizada 1. Por lo tanto,es la reducción anterior
conveniente para la CMKP y la FPP. Concluimos que cada uno de estos problemas es NP-hard.
3. encontrar una colocación perfecta
3.1. condicionessimples de la existencia de una colocación perfecta. En esta sección nos
presentes simple las condiciones para la existencia de una colocación perfecta. El primero de ellos considera
450 H. Shachnai y T. Tamir
entradas en las que el "número de compartimientos" restricción puede ser ignorada. Claramente, if,
para todas las mochilas, C j ¸ V j entonces existe una colocación perfecta y puede encontrarse en
tiempo polinómico. (Observar, eso si C j ¸ V j para todos 1 · j · N entonces podemos ávidamente
Coloque los conjuntos en las mochilas, hasta que todos los artículos son embalados.)
La siguiente condición simple considera los tamaños de los distintos conjuntos.
T HEOREM 3.1. dejar 0 < " · 1 ser el número máximo, tal que, para todos 1 · yo · M ,
j U yo ¸ j ." ¢ j U j /= M . Si, para todaslas mochilas, Cj ¸ . V j ¢ M /=." ¢ V / C 1, entonces existe
una colocación perfecta que utiliza como máximo M C N ¡ 1 diferentes compartimentos.
P Techo .Considerar el algoritmo codicioso simple, que los paquetes de los conjuntos de elementos llenando
las mochilas uno tras otro. Específicamente, la mochila Kj se llena hasta que contiene
V j artículos, luego continuamos a empacar en K j C 1 , y así sucesivamente. Desde
P
Yo
j U yo j D j U j D
V D P
j V j , el algoritmo finaliza cuando la última mochila, K N , está lleno de la
último elemento de U M . Por lo tanto,todo el potencial de embalaje de las mochilas es explotado y
los artículos son embalados. Intuitivamente, las condiciones indican que incluso los más pequeños conjuntos
son lo suficientemente grandes como para llenar cualquier mochila. Formalmente, jUij ¸ ." ¢
j U j /= M implica que cualquier
subconjunto de C j ¡ 1 Series incluye por lo menos . C j ¡ 1 / j U ¢ j "= M D . C j ¡ 1 / V ¢ "= M artículos.
Desde entonces, C j ¸ . V j ¢ M /=." ¢ V / C 1, tamaño total del subconjunto es menos V j . El adicional
compartimiento es necesario para un pequeño número de elementos del primer conjunto colocado en K j —
para
Este conjunto, el tamaño no predice, ya que algunos de sus artículos fueron colocados ya en anteriores
mochilas.
Si todos los elementos de un conjunto se colocan en una mochila, usamos sólo un compartimiento
para este sistema. Si se coloca en mochilas diferentes k , utilizamos k compartimentos para este sistema.
Puesto que el algoritmo hace a lo más N ¡ 1 se divide, el número total de compartimientos usados
este algoritmo es M C N ¡ 1.
3.2. relación capacidad uniforme. En esta sección presentamos una condición alternativa para
la existencia de una colocación perfecta. Exigimos que el volumen y la cantidad de compartimentos
en una mochila correlacionarse — mochilas con volumen alto deben tener muchos
compartimentos y viceversa.
D Definición 3.1. para cualquier 1 · j · N la relación entre capacidad de K j es V j = C j . El conjunto de
mochilas K 1 ; : : : ; K N tiene un cociente capacidad uniforme si existe una constante r > 0,
tal que V j = C j D r , 8 1 · j · N .
Intuitivamente, el cociente de la capacidad de una mochila K j da el número promedio de elementos
contenida en cada compartimiento cuando el volumen de K j es totalmente utilizado. Demostramos que,
para un conjunto de mochilas con relación de capacidad uniforme, si
P N
j D 1 C j ¸ M C N ¡ 1, entonces un
una colocación perfecta existe y puede encontrarse eficientemente. Esto se aferra para cualquier distribución
los tamaños de los conjuntos U 1 ; : : : ; U M .
T HEOREM 3.2. si la proporción de capacidad es uniforme y
P N
j D 1 C j ¸ M C N ¡ 1, y luego un
una colocación perfecta existe y puede encontrarse en O . M ¢ N C máximo . N LG N ; M LG M // pasos .
En dos versiones constreñida del problema mochila múltiples 451
P Techo .Presentamos un algoritmo de tiempo polinomial que rinde una colocación perfecta. El
algoritmo, denotado por A u procede colocando exactamente V j artículos de a lo sumo C j diferentes
establece en cada una de las mochilas. Suponemos que los conjuntos se dan en un nondecreasing
orden de sus tamaños,es decir, j U 1 j j · U 2 j · ¢ ¢ ¢ j · U M j.
En cada paso,guardamos los restos de los conjuntos en una lista ordenada, denotada por R. El
lista, R[1] ; : : : ; R [m], 1 · m · M , se actualiza durante el algoritmo, es decir, eliminamos
R series de que fueron completamente lleno, y nos desplazamos a sus lugar actualizados sets que fueron
sólo parcialmente lleno. R es la lista de petición de volumen, es decir, representa a cada entrada de R
la solicitud de volumen, que es el número de elementos sin empaquetar, de algún conjunto U yo . El
mochilas se dan en un orden nondecreasing de la cantidad de compartimentos tienen,
es decir, C 1 · C 2 · ¢ ¢ ¢ · C N .
La idea principal en el algoritmo es mantener el tamaño promedio de las solicitudes en R grande
lo suficiente. Específicamente, para cada 1 · k · N , vamos a mostrar que cuando la mochila K k es
lleno, o el tamaño promedio de petición es por lo menos r , o un algoritmo voraz trivial puede ser
aplica para empacar las peticiones restantes en las mochilas restantes.
El algoritmo utiliza dos procedimientos de mochila-relleno: algunas de las mochilas están llenos
usando el procedimiento de relleno de codicioso ; las otras mochilas se llenará con el movingwindow
procedimiento. Ahora describimos los dos procedimientos.
G REEDY -F ILLING. El procedimiento de relleno de codiciosos llena una mochila con artículos,a partir
desde el conjunto más pequeño, R[1] y continuando hasta la mochila está saturada,es decir, hasta que
contiene exactamente V j artículosde . Puede dividir el último set, es decir, será sólo una parte de sus
elementos
embalada en K j . Se da una descripción formal del procedimiento de relleno de codiciosos en
Figura 2.
M OVING -W INDOW . El procedimiento de mover la ventana llena una mochila, Kj , con el primer
secuencia de C j conjuntos cuyo tamaño total es menos V j . Buscamos la lista R usando una mudanza
ventana de tamaño C j . Inicialmente, la ventana cubre el conjunto de los más pequeños Cj establece.En cada
iteración que reemplazamos el más pequeño situado en la ventana por el siguiente conjunto de R, hasta que el
número
de los artículos que figuran en la ventana sea lo suficientemente grande como para saturar K j . Si el
subconjunto de
el C j conjuntos más grandes incluye menos de V j artículos, entonces nosotros no podemos saturar K j . Sin
embargo, nos
Relleno de codiciosos ( j )
yo à 1
repetir
Allocate un compartimiento de K j paralos artículos de la serie U k correspondientes a R[ ].
Coloque los artículos de U k en K j : Q k ; j D min f R [yo ] ; V j g
V j à V j ¡ Q k ; j
yo à yo C 1
hasta V j D 0
Retire de R los conjuntos que estaban completamente lleno en K j .
Actualizar el tamaño del nuevo conjunto más pequeño que fue sólo parcialmente embalado en K j .
Quitar K j de la lista mochila.
Figura 2. El procedimiento de relleno de codiciosos.
452 H. Shachnai y T. Tamir
Mover la ventana ( j )
yo à 1
un D R [1] C ¢ ¢ ¢ C R [Cj ] .
mientras (un < Vj y jRj ¸ Cj C )
un à un ¡ R [yo ] C R[Cj C i ]
yo à yo C 1
Llenar K j :
Allocate compartimentos de K j a todos los grupos correspondientes a las solicitudes
R [yo ] ; : : : ; R [ C Cj ¡ 1].
Para cada k, · k · yo C C j ¡ 2
Lugar en K j R [k] elementos del conjunto correspondiente.
Q k 0
; j D V j ¡ . R [yo ] C ¢ ¢ ¢ C R [ C Cj ¡ 2]/ .
Lugar en K j Q k 0
; j elementos del conjunto de U k 0 correspondientes a R[ C Cj ¡ 1].
Actualización de la lista R:
Retire de R los conjuntos R[ ] ; : : : ; R [ C Cj ¡ 2].
Si el conjunto U k 0 correspondientes a R[ C Cj ¡ 1] no está completamente embalado,
Movimiento R[ C Cj ¡ 1] a su nuevo lugar apropiado en el clasificado lista de R.
Quitar K j de la lista mochila.
Figura 3. El procedimiento de ventana móvil.
muestro a continuación que esto nunca ocurra. Una descripción formal del procedimiento de mover la ventana
se da en la figura 3. Tenga en cuenta que la ventana avanza hasta que cubre Cj establece,tal
eso V j > R [ ¡ 1] C ¢ ¢ ¢ C R [ C Cj ¡ 2] y V j · R [yo ] C ¢ ¢ ¢ C R[ C Cj ¡ 1]
(ver figura 4). En esta etapa claramente podemos colocar en Kj todos los elementos de los conjuntos
R [yo ] ; : : : ; R [ C Cj ¡ 2] y saturarK j mediante la adición de algunos de los elementos en el conjunto
R [ C Cj ¡ 1].
T Él A LGORITHM A u . El algoritmo se desarrolla en las iteraciones. En la iteración th j llenamos
K j por las siguientes reglas:
1. si hay menos de Cj fija, o si el subconjunto delCj conjuntos más pequeñas contiene más
que V j artículos, luego llenar K j usando el procedimiento de codicioso.
2. si el subconjunto delCj conjuntos más pequeñas contiene como máximo Vj artículos, luego llenar Kj usando
el
procedimiento de mover la ventana.
Fig. 4. La lista R.
En dos versiones constreñida del problema mochila múltiples 453
Ahora mostramos que el algoritmo termina con una colocación perfecta. Podemos distinguir
entre dos etapas en la ejecución de A u :
1. en la primera etapa, cada mochila Kj que está lleno contiene Cj ¡ 1 o Cj conjuntos de artículos.
Esta etapa incluye algunas ejecuciones y las ejecuciones de la mudanza-windowprocedure
del procedimiento de codicioso.
2. la segunda etapa comienza cuando,por primera vez, el número de conjuntos en Kj , para
algunos 1 · j · N es menor que C j . Esto puede claramente ocurrirá solamente cuando los avaros
se utiliza el procedimiento.
Tenga en cuenta que para algunos insumos, una de las etapas no se produzca. Para cada una de las dos etapas,
demostramos que cualquier mochila K j que se llena durante esta etapa contendrá exactamente V j
artículos de a lo sumo C j diferentes conjuntos.
Utilizamos la notación siguiente:
² C k es el número total de compartimientos que están disponibles después de k mochilas
lleno.
² M k es el número de conjuntos que no son completamente empacado después k mochilas llenas de.
² N k es el número de mochilas vacías después k mochilas llenas (Nk D N ¡ k ).
² r es la relación entre capacidad, es decir, 8 j ; V j = C j D r .
Ahora consideramos la primera etapa.
L EMMA 3.3. cada una de las mochilasque se llenan durante la primera etapa de la unaestancia será
contienen exactamente V j elementosque pertenecen a más C j diferentes conjuntos .
P Techo .Mostramos las siguientes invariantes para la relación entre el número de permanecer
conjuntosde , mochilas y compartimientos, durante la primera etapa. Deja Kb será la primera mochila
en la segunda etapa:b puede ser cualquier número entre 1 y N.
C LAIM 3.4. para cada 0 · k < b C k ¸ M k C N k ¡ 1.
P Techo .La prueba es por inducción sobre k, el número de mochilas que ya estaban
lleno.
Base . k D 0. es dado que
P N
j D 1 C j ¸ M C N ¡ 1. así, usando nuestra notación,
C 0 ¸ M 0 C N 0 ¡ 1.
Paso de inducción . Considerar la iteración de th k, en el cual Kk se llena.
1. después de esta iteración Kk ya no está disponible, por lo tanto Ck D Ck¡1 ¡ Ck .
2. por la definición de la primera etapa,embalamos plenamente en esta iteración Ck ¡ 1 o Ck establece.
Por lo tanto M k D M k ¡ 1 ¡ . C k ¡ 1 / o M k D M k ¡ 1 ¡ C k . Por lo tanto, Mk · M k ¡ 1 ¡ . C k ¡ 1/,
es decir, M k ¡ 1 ¸ M k C C k ¡ 1
3. claramente, Nk D Nk¡1 ¡ 1.
454 H. Shachnai y T. Tamir
Por la hipótesis de inducción, C k ¡ 1 ¸ M k ¡ 1 C N k ¡ 1 ¡ 1, por lo tanto
C k D C k ¡ 1 ¡ C k
¸ M k ¡ 1 C N k ¡ 1 ¡ 1 ¡ C k
¸ M k C C k ¡ 1 C N k C 1 ¡ 1 ¡ C k
D M k C N k ¡ 1:
C LAIM 3.5. para cada 1 · k < b el tamaño promedio del conjunto cuando llenamos K k es por lo menos r .
P Techo .Usando reclamo 3.4, después k ¡ 1 mochilas están llenos, el tamaño promedio del conjunto es
número de elementos restantes
número de conjuntos restantes
¸ potencial restante embalaje
número de conjuntos restantes
D r ¢ C k ¡ 1
M k ¡ 1
¸ r ¢ . M k ¡ 1 C N k ¡ 1 ¡ 1/
M k ¡ 1
¸ r:
Recordemos que al principio
P M
yo D 1
j U yo j D P N
j D 1 V j . Por lo tanto,en cualquier momento, el número de
de artículos sin paqueteares al menos el restante potencial del embalaje. Además, Nk¡1 ¸ 1 desde en
por lo menos K k sigue vacía después de k ¡ 1 mochilas llenas.
Concluimos que, para todos los k < b el mayor C k establece después . k ¡ 1 / iteraciones contienen en
por lo menos r ¢ C k artículos, que es igual a V k . Esto significa que si el procedimiento de ventana móvil
es aplicado, el windownever llega al final del R (los más grandes juegos) sin saturar K k .
Mochilas que son llenados por el procedimiento de codicioso claramente están saturados,desde los codiciosos
procedimiento se aplica incluso cuando el menor C k sistemas son lo suficientemente grandes como para
saturar K k .
Ahora analizamos la segunda etapa del algoritmo. Tenga en cuenta que llegar a la segunda
de la etapa cuando el menor C b ¡ 1 sistemas juntos contienen más de V b artículos.
L EMMA 3.6. cada una de las mochilasque se llenan durante la segunda etapa de unu será
contienen exactamente V j elementosque pertenecen a más C j diferentes conjuntos .
P Techo .Deja Rb ser la lista al final de la primera etapa. Primero demostramos que,para todos los
j ¸ b K j puede estar saturada por cualquier subconjunto de C j ¡ 1 sistemas de R b .
C LAIM 3.7. al principio de la segunda etapa,para cada j ¸ b, cualquier subconjunto de Cj ¡1
conjuntoscontiene más de V j artículos .
P Techo .Por definición, Kb es la primera mochila llenada en la segunda etapa. Por lo tanto menos
a C b ¡ 1 sistemas se embalan en K b . Esto sólo puede sucedersi el subconjunto delCb ¡ 1
conjuntos más pequeñas contiene más de V b D r ¢ C b artículosde . Por lo tanto,el tamaño promedio de los
menor C b ¡ 1 sistemas es más grande que . r ¢ C b /=. C b ¡ 1 / . Considere una mochila Kj ; j > b .
Se ordenan las mochilas que C j ¸ C b , y los conjuntos se ordenan en un nondecreasing
En dos versiones constreñida del problema mochila múltiples 455
orden de sus tamaños,por lo tanto,el tamaño promedio del menor C j ¡ 1 sistemas es más grande que
. r ¢ C b /=. C b ¡ 1 / . Además, desde Cj ¸ Cb ,
r ¢ C b
C b ¡ 1
¸ r ¢ C j
C j ¡ 1
:
Esto significa que el número total de elementos en el más pequeño C j ¡ 1 sistemas es más grande que
. C j ¡ 1 / ¢ r ¢ C j
C j ¡ 1
D r ¢ C j D V j :
Claramente, si el menor C j ¡ 1 establece en R b contienen más de V j artículos, entonces cualquier C j ¡ 1
se pone en R b contienen más de V j artículos.
Ahora utilizamos el reclamo 3.7 para mostrar que cualquier mochila llena después de K b contiene como
máximo
C j ¡ 1 diferentes sistemas y está saturado por elementos adicionales llenos desde un conjunto de R b .
Por el procedimiento de relleno de codiciosos, K b se llena hasta V b artículos son embalados. El último set
embalado en K b puede incluir algunos elementos más desempaquetados. La fracción de la izquierda de la
división
conjunto es ahora la más pequeño set en R b (desde incluso antes de la división era parte de los más pequeños
juego disponible). En otras palabras, la fracción es R[1]. Ahora pasamos a llenar KbC1. Considerar
el más pequeño C b C 1 conjuntosde . Estos conjuntos se componen de R[1] y adicional CbC1¡1
establece. Por
Reclamación 3.7 el adicional C b C 1 ¡ 1 sistemas incluyen más de V b C 1 artículos, por lo tanto (no importa
del tamaño de la fracción R[1]) el menor CbC1 conjuntos incluyen juntos más de VbC1
artículos y el procedimiento de relleno de codiciosos se utiliza: V b C 1 artículos de a lo sumo C b C 1 conjuntos
se colocan
en K b C 1 . Una vez más, el último conjunto podrá ser embalado sólo parcialmente. El mismo argumento
sostiene hasta
llegamos a una mochila K l , de tal manera que menos C l conjuntos quedan. Desde
P M
yo D 1
j U yo j D P N
j D 1 V j
al principio y desde entonces todas las mochilas antes de K l se satura,el número total
de artículos sin paquetearequivale a la total dejado el volumen. Por lo tanto,podemos llenar Kl usando los
codiciosos
procedimientode .Este argumento sostiene para todas las mochilas restantes,hasta KN está saturado
y no se quedan conjuntos.
Combinando lemas 3.3 y 3.6 concluimos que cada uno de las mochilas K j ; 1·
j · N se llena por exactamente V j artículos de a lo sumo C j diferentes conjuntos. Por lo tanto, el algoritmo de
termina con una colocación perfecta.
El algoritmo es polinomio: cada uno de los procedimientos de relleno toma O . M / pasos.Agregar
la complejidad de preprocesamiento de ordenar las listas, la complejidad total del algoritmo
es O . N ¢ M C N log N C M registro M /.
3.3. aproximar una colocación perfecta. Cuando las mochilas no tienen uniforme
relación de capacidad, el grado de falta se mide por la mínima ® tal que, para
algunos r > 0,
8 j ; r · V j
C j
(1) · ® ¢ r :
(Cuando ® D 1 tenemos relación capacidad uniforme, en cualquier otro caso ® > 1.) En esta sección
mostramos cómo se puede aproximar una colocación perfecta. La proporción de aproximación es
proporcional a ®.
456 H. Shachnai y T. Tamir
T HEOREM 3.8. deja que ® ¸ 1 es el mínimo número satisfactorio (1). Si C ¸ M C N ¡ 1,
a continuación,un . 1 =®/ -colocación utilizada puede encontrarse en tiempo polinómico .
P Techo .Considere la siguiente instancia, yo 0, el problema de colocación: por cada mochila
K j 1 · j · N el volumen de K j en 0 es V 0
j
D d r ¢ C j e . Que V0 D PN
j D 1 V 0
j .
Para cada conjunto, U yo el tamaño del conjunto de U yo en 0 denotada porj U 0
Yo
j , se determina mediante la resolución de la
problema de MAX-MIN siguiente:
Maximizar min
j U 0
Yo
j
j U yo j ; tal que
X M
yo D 1
j U 0
Yo
j D V 0
; j U 0
Yo
(2) j integer.
En primer lugar, tenga en cuenta que cualquier colocación legal de 0 induce una colocación legal por el
original
instancia. Esto se deduce la siguiente afirmación:
C LAIM 3.9. para cada 1 · j · N V 0
j
· V j .
P Techo .Por cada 1 · j · N V j es un entero. Por lo tanto,para el logro de la mochila
el ratio de capacidad mínima, V j D r ¢ C j D d r ¢ C j e D V 0
j . Por cada mochila Kj tales
eso V j = C j > r existe algunos "> 0 tal que V j D . r C "/ ¢ C j D d . r C "/ ¢ C j ¸ e
d r ¢ C j e D V 0
j .
A continuación, mostramos que una colocación perfecta existe y se puede encontrar eficientemente para 0.
Tenga en cuenta que las mochilas en 0 no necesariamente tienen relación capacidad uniforme, sin embargo, el
falta es lo suficientemente pequeño como para demostrar que el algoritmo A u presentado en la sección 3.2 es
conveniente para 0 . Seguimos la prueba del teorema 3.2 para demostrar que unaestancia llena cada mochila
con exactamente V 0
j artículos de a lo sumo C j conjuntosde . Es fácil verificar que reclamos 3.4 y 3.5 mantenga
para I 0 . Deja Kk ser una mochila llenada durante la primera etapa de Au. Por reclamo 3.5, la media
establecer el tamaño cuando llenamos K k es por lo menos r . De hecho,V0
j puede ser mayor que r ¢ C j , sin embargo, puesto que
el número de elementos que se incluyen en la ventana es un entero y desde V 0
j
D d r ¢ C j e es el
número entero más pequeño no menor que r ¢ C j , concluimos que cada vez que la mudanza de la ventana
procedimiento es aplicado, la ventana no alcanza el final de R sin saturarK k .
Asimismo, para la segunda etapa de A u Reclamo 3.7 depara 0 y concluimos que todos los
mochilas están saturados. Por reclamo 3.9, una colocación legal en 0 es una colocación legal para
la instancia original. Desde V0 ¸ . 1 =®/ V una colocación perfecta en 0 induce una colocación
es decir . 1 =®/ -utilizado para el original instancia .
R EMARK 3.1. para resolver el CMKP, cualquier opción de establecer tamaños que satisface, 8; j U 0
Yo
j ·
j U yo j y
P M
yo D 1
j U 0
Yo
j D V 0 se puede aplicar aquí. La solución de (2) también resuelve eficientemente
la FPP: para cada sistema U yo , j U 0
Yo
¸ j . 1 =®/ j U yo ¡ j! 1.
Con el fin de lograr una buena aproximación que nos gustaría tener ® lo más cerca posible
1. En la sección 5 se muestra que los compartimentos se pueden mover entre las mochilas,
entonces ® D C k =. C k ¡ 1 / , donde K k es la mochila con la capacidad máxima relación.
Este modelo es relevante para subsistemas de almacenamiento MOD, en la cual pueden serrecursos de
almacenamiento
se movió entre los discos.
En dos versiones constreñida del problema mochila múltiples 457
4. algoritmo de aproximación para el CMKP. En esta sección presentamos una aproximación dual
algoritmo de theCMKP. Específicamente, nosotros demostrares suficiente con añadir uno
compartimiento para cada mochila, con el fin de eliminar la brecha entre el rendimiento
de un óptimo, algoritmo de tiempo probablemente exponencial y un algoritmo de tiempo polinomial.
Hay que recordar que un algoritmo de aproximación dual se encuentra una solución factible que es
superoptimal.
Su rendimiento se mide por el grado de inviabilidad permitido. La propuesta
algoritmo está permitido publicar artículos de C j C 1 (en lugar de Cj ) diferentes conjuntos en
K j 1 · j · N .
T HEOREM 4.1. dado una instancia de la CMKP, mediante la adición de un solo compartimiento para
cada mochila podemosencontraruna colocación en tiempo polinómico,cuya utilización es menos
la máxima utilización posible para I .
P Techo .Sea una instancia de la CMKP. Denotar porC generada a partir de la instancia
mediante la adición de un compartimiento para cada mochila. Presentamos un algoritmo de tiempo polinomial
que encuentra una colocación legal en C . El algoritmo, denotado por unr procede por relleno
K j a lo sumo V j artículos de a lo sumo C j C 1 diferentes sistemas, 8 1 · j · N . El número total
de artículos llenos de C por A r es el número total de artículos llenos de por lo menos
un algoritmo óptimo.
Como en el caso de uniforme-cociente (sección 3.2), suponemos que los conjuntos de elementos se dan
en orden nondecreasing de sus tamaños,es decir, los conjuntos de satisfacer j U 1 j j · U 2 j · ¢ ¢ ¢ j · U M j.
Mantenemos los sets restantes en una lista ordenada,denotada por R, que se actualiza durante la
algoritmo. Este algoritmo también utiliza los dos procedimientos de mochila-relleno: relleno de codiciosos
y mover la ventana introducido en la sección 3.2. Sin embargo, el procedimiento de ventana móvil
ha cambiado un poco: ahora la ventana cubre C j C 1 Series (en vez de Cj ). Además, si el subconjunto
de la C j C 1 sistemas más grande incluye menos de V j artículos, entonces nosotros no podemos saturar K j , y
hacemos lo mejor que podamos: llenamos K j con estos C j C 1 Series (en el uniforme-ratio caso esto
nunca sucede).
Las mochilas se dan en un orden nonincreasing por su relación de capacidad,es decir, V 1 = C 1¸
V 2 = C 2 ¸ ¢ ¢ ¢ ¸ V N = C N . Las mochilas ordenados se mantienen en una lista que se denota por L0. Otro
lista de mochilas, denotado por L 00 , pueden crearse durante la ejecución del algoritmo de.
T Él A LGORITHM A r . En general, el algoritmo utiliza el procedimiento de mover la ventana a
llenar la mochila según su orden en L 0 es decir, en la iteración th j llenamos K j y
quitarlo de L 0.
Tenga en cuenta que el procedimiento de mover la ventana coloca en K j artículos de
exactamente C j C conjuntos de 1.
A veces no es posible embalar desde esa cantidad de conjuntos (véase abajo): de tal
casos nos movemos K j a L 00 o buscarotra mochila para que la mudanza de la ventana
procedimiento puede seraplicado. Mochilas que se mueven de L0 a L00 están llenos con el
procedimiento codicioso, después de L 0 está vacía.
Se utilizan las siguientes reglas cuando A r examina K j 2 L 0.
² Si K j D; , es decir, L 0 es vaciar, llenar secuencialmente todas las mochilas en L 00 usando el greedyfilling
procedimiento.
² Si hay menos de C j C 1 establece en R, mover K j hasta el final de L 00.
458 h Shachnai y T. Tamir
² Si el subconjunto delC j sistemas más pequeños en R contiene como máximo V j artículos, llenar K j con
artículos
de C j C 1 diferentes conjuntos,utilizando el procedimiento de ventana móvil.
² Si el subconjunto delC j sistemas más pequeños en R contiene más de V j Buscar artículos,
la primera mochila K k 2 L 0 para el cual el subconjunto delmenor C k incluye conjuntos
a lo sumo V k artículos de . Si existe tal una mochila, llenar Kk usando el procedimiento de ventana en
movimiento;
K j será examinado nuevamente en la siguiente iteración. Si no hay ninguna tal mochila
en L 0 llenamos secuencialmente todas las mochilas en L 0 y L 00 usando el codicioso-relleno
procedimiento.
Optimalidad . Denotar por G D fKg1 ; K g 2 ; : : : ; K g n
g el conjunto de mochilas que no son
saturado por A r y denotan porw 1 w; 2 ;:::; w n la resultante pérdida de volumen en cada uno
mochila no saturado,es decir, el volumen de K g yo es completamente no explotados y único V g yo
¡ w yo
los artículos se colocan en K g yo . Demostramos que no hay ninguna colocación legal de que el
utilización total excede
P N
j D 1 V j ¡ w 1 C w 2 C ¢ ¢ ¢ C w n / . Para probar esto, podemos distinguir
entre las cuatro etapas de A r :
1. mochilas de L0 son llenados por su orden en L0usando traslado-windowprocedure;
algunas de las mochilas pueden ser movidos a L 00.
2. mochilas de L0 se llenan mediante el movimiento-windowprocedure, pero no necesariamente
según su orden en L 0 algunas de las mochilas pueden ser movidos a L 00.
3. mochilas de L0 están llenas, utilizando el procedimiento de relleno de codiciosos (cuando no hay mochila
de L 0 puede ser llenado por el procedimiento de mover la ventana).
4. mochilas de L00 se llenan mediante el procedimiento de relleno de codiciosos (cuando L0 está vacía).
Para las dos primeras etapas se muestra que la pérdida total de volumen i C es en la mayoría de los
pérdida de volumen en una colocación óptima de . Para las dos últimas etapas se muestra que
No hay ningún residuo, y todas las mochilas llenados durante estas etapas están saturados.
Para simplicidad, se asume que cada vez que se ejecuta el procedimiento de mover la ventana,la
lista de R es escaneada de izquierda a derecha, es decir, el conjunto más pequeño, R[1], es el conjunto de la
izquierda y
el conjunto más grande es el de la derecha en R. Durante la ejecución del procedimiento de mover la ventana,
la ventana se mueve de izquierda a derecha. Hay dos escenarios posibles:
1. Saturating: en el cual Kj está saturado,lo que significa que existe algún i , que es el
Índice de R del conjunto más pequeño en la ventana,de tal forma que
(i) ( > 1 y Vj > R[ ¡ 1] C ¢ ¢ ¢ C R[ C Cj ¡ 1]) o ( D 1 y Vj >
R [1] C ¢ ¢ ¢ C R [Cj ]);
(ii) Vj · R [yo ] C ¢ ¢ ¢ C R [ C Cj ].
En esta etapa, claramente podemos colocar en K j el C j establece R[ ] ; : : : ; R [ C Cj ¡ 1], y
saturar K j mediante la adición de algunos de los artículos de R[CCj ]. Los conjuntos de R[ ]; : : : ; R [CCj¡1]
se extraen R, y la fracción de la izquierda de la set R[CCj ] éstesemueve a su actualizado
lugar en la lista R. Tenga en cuenta que desde algunos de los elementos de este conjunto se embalan, la
posición
de eso fracción en R queda a su posición original.
2. Nonsaturating: en que la ventana alcanza la posición más a la derecha en R, pero la
subconjunto delC j C 1 sistemas más grande cubierto por la ventana contiene menos de V j artículos.
Todos los elementos de los conjuntos de R[ ] ; : : : ; R [ C Cj ] estén embaladas, y se eliminan estos conjuntos
de R.
En dos versiones constreñida del problema mochila múltiples 459
En ambos casos,podemos considerar la secuencia quitada de conjuntos como un agujero en R. En un
saturar la ejecución, K j crea un agujero de C j establece en Ry un conjunto adicional (el
fraccióna la izquierda de la última serie) se mueve la izquierda del agujero. En una ejecución
nonsaturating, Kj
crea un agujero de C j C 1 establece en R.
Examinamos la secuencia de los agujeros creados durante la primera etapa del algoritmo en R .
Primero mostramos que cada mochila nonsaturated crea,en el extremo derecho del R, un agujero
que es la Unión de todos los agujeros en R.
C LAIM 4.2. todoslos Kgj
2 G llena durante la primera etapa de A r une los orificios existentes
en R en un solo agujero ubicado en el extremo derecho del R.
P Techo .La prueba es por inducción en j , el índice de Kgj en G.
Base . K g 1 es la primera mochila nonsaturated en la ejecución de A r . Las mochilas son
ordenados en orden nonincreasing por sus relaciones de capacidad. Por lo tanto, para todos los k < g1la
promedio del número de elementos de cada conjunto embalado en K k es más grande que el promedio
de elementos de cada conjunto embalado en K g 1 . En particular, el conjunto más grande en el agujero creado
por
K k es más grande que el conjunto más pequeño en el agujero creado por K g 1 . Por lo tanto,el agujero creado
por Kg1
comienza a la izquierda del agujero creado por K k . Además, desde Kg1 no se satura,el agujero se crea
incluye el mayor C g 1
C 1 juegos disponibles y en particular el que más a la derecha. Por lo tanto
une todos los agujeros que fueron creados por mochilas previamente llenados en un agujero.
Paso de inducción . Deja Kgj serla mochila nonsaturated de th j llenada durante la primera etapa
del algoritmo A r . Por la hipótesis de inducción, Kgj¡1 une todos los agujeros creados por
K 1 ; K 2 ; : : : ; K g j ¡ 1 . En otras palabras, Kgj¡1 R de divide en dos partes: el agujero de la derecha
y el restante se establece en la izquierda. Las mochilas se ordenan en orden nonincreasing
sus relaciones de capacidad. Por lo tanto, al igual que en el caso base,por cada gj¡1 < k < gj la media
número de elementos de cada conjunto colocado en K k es más grande que el número promedio de elementos
en cada sistema embaló en K g j por lo tanto el agujero creado por K g j comienza a la izquierda del agujero
creado
por K k . Puesto que también incluye el conjunto más grande disponible, une los agujeros creados por
K g j ¡ 1 C 1 ; : : : ; K g j ¡ 1 y el agujero en la parte derecha creado por K 1 ; : : : ; K g j ¡ 1 en un agujero.
La forma que se crean los agujeros implica A r es óptimo para las mochilas llenados
durante la primera etapa:
L EMMA 4.3. Deja Kj llenarán la última mochila por unr durante la primera etapa a continuación,el
número total de elementoscolocadosen K 1 ; : : : ; K j es por lo menos el número de objetos que se coloquen
en
K 1 ; : : : ; K j bajo un algoritmo óptimo para la instancia .
P Techo .Deja Kgj serla última nonsaturated mochila llenada durante la primera etapa. El
mochilas que se llenan después de K g j están saturados.Por lo tanto,es suficiente probar que el
lema sostiene para K 1 ; : : : ; K g j . Por reclamo 4.2, el agujero creado por Kgj une todos los agujeros
creado por K 1 ; : : : ; K g j . Para todos los k · g j el agujero creado por K k se compone de C k o C k C 1
conjuntos,por lo tanto el agujero combinado consiste en por lo menos el más grande C 1 C C 2 C ¢ ¢ ¢
C C g j establece.
El tamaño total del agujero es el tamaño total de conjuntos indivisa en K 1 ; : : : ; K g j que
es a lo sumo V 1 C V 2 C ¢ ¢ ¢ C V g j
¡ w 1 C w 2 C ¢ ¢ ¢ C w j / . Concluimos que la suma de
H. 460 Shachnai y T. Tamir
el mayor C 1 C C 2 C ¢ ¢ ¢ C C g j conjuntos es a lo sumo V 1 C V 2 C ¢ ¢ ¢ C V g j
¡ w 1 C w 2 C ¢ ¢ ¢ C
w j / , lo que significa que ningún algoritmo, y en particular una óptima, puede colocar más de
V 1 C V 2 C ¢ ¢ ¢ C V g j
¡ w 1 C w 2 C ¢ ¢ ¢ C w j / elementos de K 1 ; : : : ; K g j .
Tenga en cuenta que las fracciones de conjuntos que fueron creados por K 1 ; : : : ; K g j ¡ 1 no debería
molestarnos:
Si una fracción de un conjunto más tarde esta lleno, significa que está contenido el tamaño original de ese set
en el agujero Unido. Si la fracción no está lleno, entonces el número total de elementos lleno
por A r es en realidad mayor que V 1 C V 2 C ¢ ¢ ¢ C V g j
¡ w 1 C w 2 C ¢ ¢ ¢ C w j / lo que significa que
K 1 ; : : : ; K g j no puede ser llenado mejor incluso por más que el más grande C 1 C C 2 C ¢ ¢ ¢ C C g j
establece.
Recordar que durante la primera etapa se puedan mover mochilas de L 0 a L 00 . Estos
mochilas se llenará durante la cuarta etapa, y la primera etapa continúa. El primero
etapa continúa hasta que encontramos una mochila K k , para lo cual el subconjunto del C k conjuntos más
pequeños
contiene más de V k artículos.
Ahora probamos la optimalidad de la segunda etapa. La prueba es similar a la prueba
para la primera etapa. Mostramos que los agujeros creados durante la segunda etapa están Unidos
Cuando una mochila no está saturada; Entonces concluimos que la colocación es óptima.
Primero demostrar que los agujeros crean durante la segunda etapa siempre "se extendió a la
izquierda"en R.
C LAIM 4.4. Deja Kk1 y Kk2 serdos mochilas que están llenos de iteraciones sucesivas
durante la segunda etapa entoncesel agujero creado por K k 2 comienza a la izquierda del agujero creado
por K k 1.
P Techo .Consideramos dos casos porseparado:
1. k1 < k2,lo que significa que la relación entre capacidad Kk1 es mayor que el cociente de la capacidad de
K k 2 . En este caso, al igual que en la primera etapa, es evidente que el agujero creado por Kk2 comienza a la
izquierda
del agujero creado por K k 1.
2. k > 1 k2.El algoritmo, cuando examinamos Kk2 el subconjunto delCk2 conjuntos más pequeños
contiene más de V k 2 artículos y el relleno de K k 2 se retrasó. Puesto que finalmente llenamos
K k 2 durante la segunda etapa,se utilizan nuevos pequeños conjuntos. Estos pequeños conjuntos son
fracciones
creado por mochilas saturados después de K k 2 fue rechazada. Puesto que examinamos Kk2 otra vez
después de cada iteración y finalmente se llena después de K k 1 significa que una fracción
creado por K k 1 se utiliza. Recordemos que, para ¸ 1, cualquier resto de un conjunto que vuelve a
R al final de la iteración será colocado izquierda del orificio creado en R durante este
iteración. Por lo tanto el agujero creado por Kk2 comienza a la izquierda del agujero creado por Kk1.
Ahora llegamos a la conclusión que nonsaturated mochilas para unirían los agujeros R.
C LAIM 4.5. cada Kgj
2 G llena durante la segunda etapa de A r une los agujeros R
en un solo agujero ; este agujero forma del extremo derecho del R.
P Techo .La prueba es por inducción en j , el índice de Kgj en G. Seguimos los pasos
de la prueba de reclamación 4.2. De hecho, no podemos asumir que las mochilas están llenos
un nonincreasing orden de su proporción de capacidad. Sin embargo, por reclamar 4.4, si Kgj está lleno
después de K k entonces el agujero crea comienza izquierdo del agujero creado por K k y puesto que también
En dos versiones constreñida del problema mochila múltiples 461
incluye el conjunto de la derecha disponible, une todos los agujeros creados por K k ; : : : ; K g j , y
la inducción en la prueba de reclamación 4.2 puede ser aplicada.
Al igual que en la prueba de optimalidad para la primera etapa, llegamos a la conclusión de la manera en los
agujeros
se crean, que la colocación es óptima.
C OROLLARY 4.6. Deja Kj llenarán la última mochila porunr durante la segunda etapa luego
el número total de artículosenvasados en K 1 ; : : : ; K j es por lo menos el número de artículos llenos
en K 1 ; : : : ; K j bajo un algoritmo óptimo para la instancia original .
Para la primera y segunda etapas hemos demostrado que el volumen total desperdiciado en mochilas
llena durante estas etapas no supera la pérdida de volumen en estas mochilas
bajo una colocación óptima para . Completamos la prueba de optimalidad mostrando
que todas las mochilas que se llenan durante la tercera y las cuarta etapas de A r son
saturado.
L EMMA 4.7. cada una de las mochilasque se llenan durante la tercera etapa del unr será
contienen exactamente V j artículos que pertenecen a más de C j C diferentes conjuntosde 1.
P Techo .La tercera fase consiste en sucesivas ejecuciones del procedimiento de relleno de codiciosos.
A r llega a la tercera etapa if, por cada mochila K j 2 L 0 el subconjunto de la C j
conjuntos más pequeñas contiene más de V j artículosde . Claramente, si el Cj conjuntos más pequeños son
demasiado grandes,
entonces cualquier C j sistemas son demasiado grandes para K j . Mostramos que el algoritmo voraz no utiliza
nunca más
a C j C 1 establece para llenar K j :
Deja K c llenar la mochila primera en la tercera etapa. Claramente, a lo sumo Cc se utilizan conjuntos de.
El último conjunto de que elementos se embalan en K c puede partirse. La fracción que queda es
Ahora el conjunto más pequeño (desde incluso antes de la división era parte de la más pequeña disponible
juego). En otras palabras, la fracción es R[1]. Ahora pasamos a llenar KcC1. Considerar el subconjunto
de la C c C 1 C conjuntosde 1 más pequeño. Se compone de R[1] y adicional CcC1 establece.El subconjunto
del adicional C c C 1 conjuntos incluye más de V c C 1 artículos, por lo tanto,pase lo que pase
el tamaño de la fracción R[1], el menor C c C 1 C 1 conjuntos incluyen juntos más de
V c C 1 artículos y nosotros podemos embalar en K c C 1 exactamente V c C 1 artículos de a lo
sumo C c C 1 C conjuntos de 1.
Una vez más, el último conjunto puede partirse. El mismo argumento sostiene para todas las mochilas que
permanecen
en L 0 . Es decir, cada mochila Kj contendrá exactamente Vj elementos que pertenecen a lo más
C j C conjuntos de 1.
L EMMA 4.8. cada una de las mochilasllenados durante la cuarta etapa del unr contendrá
exactamente V j elementos que pertenecen a más C j C diferentes conjuntosde 1.
P Techo .En la cuarta etapa llenamos las mochilas en L00. Recordemos que una mochila Kj
se traslada a L 00 si hay menos de C j C 1 disponible establece en el momento en que se examina
por A r . Puesto que no agregamos juegos a lo largo de la ejecución del algoritmo, claramente
hay menos de C j C 1 disponible establece cuando llenamos K j en la cuarta etapa, usando
el procedimiento de codicioso. Para lograr que las mochilas están saturadas,tenga en cuenta que
al principio
P M
yo D 1
j U yo j D P N
j D 1 V j es decir, el número total de elementos es igual
462 H. Shachnai y T. Tamir
para el volumen total disponible. Puesto que ninguna mochila es llenada por más Vj artículos,
la suma de los tamaños de los sets restantes siempre excede el total restante
volumen.
Combinando corolario 4.6 con lemas 4,7 y 4,8 concluimos que el total
cantidad de volumen perdido para la instancia C no exceda la cantidad total de desperdicio
volumen bajo una colocación óptima de . En particular, si existe una colocación perfecta
yo , entonces nuestro algoritmo encuentra una colocación perfecta de C.
El algoritmo es polinomio: cada procedimiento de relleno tiene complejidad O . M / . En el
peor de los casos (durante la segunda etapa)toma O . M ¢ N / pasos para elegir el próxima mochila
para ser llenado. Por lo tanto la complejidad total del unr es. M 2 ¢ N 2/.
El esquema de doble aproximación rinde el siguiente algoritmo de aproximación para el
CMKP:
1. encontrar una solución óptima, suponiendo que Cj D Cj C 1; 8 1 · j · N . Deja que 0
; Q 0 ser el
indicador resultante y las matrices de cantidad.
2. deja que D I 0
; Q D Q 0.
3. por cada mochila Kj ; j D 1 ; : : : ; N : si
P
yo Q yo ; j D C j C 1 (es decir, CjCcompartimentos 1
se utilizan), deje Us ser el juego de que la cantidad colocada en Kj es mínima, es decir,
Q s ; j D min 1 · yo · M Q yo ; j > 0, entonces Q s ; j D 0.
En otras palabras, giramos la colocación inviable en una factible, utilizando sólo la
C j máximo compartimentos en cada mochila. Tenga en cuenta que esta manera omitimos desde el
subconjunto
de empacado elementos como máximo V j =. C j C 1 / artículos.
C OROLLARY 4.9. dado una instancia de la CMKP, dejar Uoptar por obtener la utilización
por una colocación óptima de los elementos entonces podemos encontrar en O . M 2 ¢ N 2 / pasos de una
colocación
que alcanza la utilización U D U OPT ¡ " para " D P N
j D 1 . V j =. C j C 1//.
En particular, si la cantidad de compartimentos en cada mochila es menos b, para algunos
b ¸ 1, es decir, C j ¸ b para todos 1 · j · N , entonces el algoritmo de aproximación anterior
alcanza la utilización . 1 ¡ ®/ U OPT para ® D 1 =. b C 1/.
5. aplicación a sistemas MOD. En esta sección mostramos cómo nuestros resultados para el
CMKP y el FPP se aplican a la administración del almacenamiento en sistemas multimedia. Considerar un
sistema tiene N discos:es la capacidad de almacenamiento de disco j de C j , y su capacidad de carga es L j ,
1 · j · N . La base de datos asociado con el sistema MOD contiene programa video M
archivos f f 1 ; : : : ; f M g , con las correspondientes popularities f p 1 ; : : : ; p M g . La popularidad
parámetro de f yo refleja la porción de la carga total generada debido a las peticiones de acceso
a f yo . Conociendo a estos popularities y la capacidad de carga total del sistema, podemos
Determine la carga promedio generada por cada uno de los archivos.
Como se mencionó en la sección 1.2, puede formularse el problema de asignación de archivos en discos
como ejemplo de los problemas de embalaje, con los discos representados pormochilas, y
t P él archivos por conjuntos de artículos. Los popularities de los archivos de determinan los tamaños de
conjunto,tal que M
yo D 1
j U yo j D P N
j D 1 L j . Cuando nuestro objetivo es maximizar la utilización, que debemos resolver
En dos versiones constreñida del problema mochila múltiples 463
el CMKP; Cuando el objetivo es maximizar la imparcialidad, que debemos resolver la FPP. Una solución
para cualquiera de nuestras dos variantes de la mochila problemas inducirá una asignación estática legal.
En cuanto a las matrices y Q:
² Yo yo ; j D 1 iff una copia de los archivos se almacena en el disco j .
² Q yo ; j 2 f 0 ; 1 ; : : : ; L j g es la carga total de ese archivo puede crear en el disco j .
Por lo tanto,nuestros resultados en la sección 3 rendimiento algoritmos eficientes para encontrar un
trabajo perfecto
de los archivos de los discos,en el cual la capacidad de carga del sistema es totalmente utilizada, y el
pide a cada uno de los archivos puede ser satisfecha.
5.1. aproximación relación capacidad uniforme.Ahora consideramos una ligeramente diferente
modelo, en el cual el subsistema de almacenamiento consiste en arreglos de discos de N, D 1 ; : : :
; D N : D j ha
una capacidad fija, L j , y, además, hay un límite en el número total de, C,
unidades de almacenamiento que pueden distribuirse en los arreglos de discos. Nos gustaría encontraruna
asignación
de las unidades de almacenamiento para los arreglos de discos. Es decir, para cualquier 1 · j · N tenemos que
determinar
C j la capacidad de almacenamiento de D j tal que
P N
j D 1 C j D C . Este modelo refleja la situación
en el cual varios arreglos de discos se utilizan para almacenar los archivos. La capacidad de almacenamiento
de una
arreglo de discos es la suma de las capacidades de almacenamiento de los discos individuales. Por lo tanto,el
almacenamiento
capacidad de un arreglo de discos (con una capacidad de carga fija) puede variar, dependiendo del
almacenamiento
capacidades de los discos que componen la matriz. Mostramos debajo de eso,en tal sistema, el
capacidad total de almacenamiento puede distribuirse entre los arreglos de discos,con el fin de lograr una
relación entre la capacidad casi uniforme. Esto nos permite encontrarun trabajo casi perfecto de
los archivos de los discos.
Deje que L D P N
j D 1 L j la capacidad de carga total del sistema. De hecho,es fácil
determinar la capacidad de almacenamiento de cada arreglo de discos con el fin de obtener una "capacidad
uniforme
ratio ": en particular, podemos elegir C j D C ¢ L j = L . Esto produce una relación capacidad uniforme
con r D L = C . Sin embargo, desde entonces requerimos que cada arreglo de discos tiene un número integral
de archivos, tenemos que ronda el C j de una manera que minimiza la violación de la uniformidad.
Formalmente, que debemos resolver el siguiente problema de programación de enteros:
Minimizar ® D máximo 1 · j · N . L j = C j /
min 1 · j · N . L j = C j /
tal que
X N
j D 1
C j (3) D C; C j integer.
Este problema puede ser resuelto de forma óptima en O . N log N C N registroC / pasos,utilizando, por
ejemplo, el
algoritmo "SOLVE-FAIR" (véase el capítulo 6 de [14]). La solución proporciona una asignación
de las unidades de almacenamiento de los discos tales que, para algunos r > 0,
8 j ; r · L j
C j
(4) · ® ¢ r ;
y ® se reduce al mínimo. Por teorema 3.8 tenemos:
C OROLLARY 5.1. si los contenedorespueden ser distribuidos entre los discos, un . 1 =®/ -utilizados
asignación se encuentran en O . N ¢ M C N log N C N registroC / pasos donde ® es el valor
de la solución óptima de (3).
464 H. Shachnai y T. Tamir
Observar que ® es pequeña (es decir, cercano a 1), tenga en cuenta que, en cualquier solución óptima de (3),
la relación de capacidad de D j satisface
¹
L
C
º
· L j
C j
·
»
L
C
¼
; 8 1 · j · N :
Esto inmediatamente rendimientos un límite de 2 ® . Más exactamente, ® · dL=Ce=bL=Cc:
5.2. lograr una utilización casi óptima.En la sección 4 se presenta una aproximación dual
algoritmo para el CMKP. En términos de sistemas MOD, significa que podemos lograr
la utilización óptima de un sistema mediante la adición de una unidad de almacenamiento en cada dis co. En
efecto, para
un sistema determinado de MOD, tales cambios en la configuración pueden serimposibles, sin embargo, nos
puede utilizar el algoritmo de aproximación derivado de algoritmo A r y el resultado en corolario
4.9. esto implica que si cada uno de los discos puede almacenar al menos archivos b , para algunos b ¸ 1,
es decir, C j ¸ b para todos 1 · j · N entonces el algoritmo de aproximación anterior alcanza
utilización . 1 ¡ ®/ U OPT , con ® D 1 =. b C 1/.
6. discusión. Hemos estudiado dos variantes del problema de la mochila, a saber, el
CMKP y el FPP. Hemos demostrado que ambos problemas son NP-hard; para algunos casos
existe un algoritmo óptimo tiempo polinómicas. También hemos propuesto un algoritmo de aproximación
para el CMKP. Por último, hemos mostrado cómo nuestros resultados para el CMKP y el FPP
puede ser utilizado para la asignación eficiente de los recursos en subsistemas de almacenamiento multimedia.
Nuestro papel deja abiertas varias vías interesantes para la labor futura:
² Para el caso especial donde M D 1, tanto el CMKP y el FPP son fáciles de resolver. En
contraste,ambos problemas son difíciles de resolver, ya para el caso donde M D 2, si cada
mochila tiene un solo compartimiento. Es interesante para investigar más a fondo cómo la
cociente entre M, el número de clases de artículos y la cantidad de compartimentos en el
Mochilas nos permite encontrar una solución óptima para cada uno de los problemas eficientemente.
A lo largo de estas líneas,es posible formular versiones más débiles de las condiciones
dado en la sección 3.1.
² Presentamos un . 1 ¡ ®/ -algoritmo de aproximación para el CMKP, donde ® depende
en la entrada, es decir, el cociente de la capacidad de las mochilas. Puede ser el CMKP (FPP)
aproximada a un factor 1 ¡ " , para cualquier "> 0, utilizando un polinomio (totalmente)
¿esquema de aproximación?
² Consideramos el caso donde s . u / D w. u / para cualquier u 2 U . Una extensión natural de
tanto el CMKP y el FPP permitiría Artículos de diferentes tipos para tener diferentes
tamaños y pesos diferentes.
² Hemos demostrado la aplicación de la CMKP y el FPP para el problema de la asignación
archivos a discos en subsistemas de almacenamiento multimedia. Una suposición subyacente en la
problema de la asignación fue que la configuración de hardware es fijo, y nuestro objetivo es
hacer el mejor uso de esta configuración, en términos de utilización y la equidad. En la doble
problema de configuración del sistema nuestro objetivo es lograr una cierta calidad de servicio,
y nos permite cambiar la configuración de hardware. Concretamente, dado un conjunto de
archivos, nos gustaría determinar el número de discos que deben usarse para almacenar
y difusión de estos archivos; los discos pueden ser de varios tipos diferentes, donde cada
En dos versiones constreñida del problema mochila múltiples 465
tipo se caracteriza por la capacidad de almacenamiento y carga específica y un costo fijo. Esto le da
subida a la siguiente versión del problema bin-embalaje fraccional con restricciones de clase:
Supongamos que tenemos un conjunto U de j U j D M elementos, cada elemento u 2 U tiene un
tamaño s . u / 2 Z C.
Podemos embalar los artículos en U (que permite dividir los artículos)en una colección de contenedores que
pueden
ser de varios tipos diferentes. Un contenedorde tipo j tiene volumen Vj ; puede contenerCj ¸ 1 artículos
y su costo es F j . Nuestro objetivo es para embalar todos los elementos de un conjunto de contenedores a un
costo mínimo de.
² El CMKP y el FPP pueden aplicarse para la asignación estática de archivos en los discos.
Asignación estática es sólo el primer componente de un esquema de asignación de recursos MOD,
en el cual se define el estado inicial del sistema. Luego es seguido por una dinámica
fase , en que las peticiones del cliente al llegar al sistema necesita ser reparado. Durante
la fase dinámica, pueden cambiar las popularities de los varios archivos. Tales cambios son
naturales, por ejemplo, cuando se trata con datos de vídeo disponibles en los sitios de la world-wide-web.
En respuesta,el sistema MOD debe apoyaroperaciones tales como supresiones de archivo o
repeticiones, además de reasignaciones de la carga. Esto introduce una versión en línea de
cada uno de nuestros problemas de embalaje, donde los tamaños de los conjuntos que nos gustaría
paquete puede cambiar dinámicamente, y tenemos que actualizar la colocación en consecuencia. El
transición de la colocación de uno a otro debe hacerse con el número mínimo
de reasignaciones de artículos a los compartimientos.
Agradecimientos. Nos gustaría dar las gracias a los revisores, para proporcionar muchos útiles
Comentarios y sugerencias.
Apéndice. En este apéndice se muestra la validez de los resultados para las instancias generales
de la CMKP y la FPP, en el cual no es necesariamente igual al número total de elementos
a la suma de los volúmenes de las mochilas, a saber, j U j 6 D V . Tenga en cuenta que las definiciones
de utilización y la equidad,como se indica en las secciones 2.1 y 2.2, no dependen de la relación
entre j U j y V. Sin embargo, esta proporción, influye en la definición de una colocación perfecta.
Cuando j U j 6 D V la máxima utilización posible es min . j U j ; V / . Cuando el objetivo es
maximizar la imparcialidad, una colocación óptima es min . 1 ; V = j U j / -Feria de. 4 Para un caso general,
una colocación es perfecto si es óptimo con respecto a la utilización, así como la equidad.
Formalmente,
D Definición A.1.A una colocación perfecta es una colocación es min. 1 ; V = j U j / -justo, en
¿Cuál de las siguientes está satisfecho:(i) todos los elementos estén embalados, o (ii) todas las mochilas
están llenos.
Ahora discutimos, que tienen todos los resultados presentados en la sección 3 para entradas generales:
² Si V > j U j luego añadir un juego simulado de tamaño V ¡ j U j para obtener una instancia en la cual
V D j U j . Después de colocar los elementos en las mochilas, desconsiderarel "muñeco".
4 Técnicas de redondeoestándar [14] pueden aplicarse aquí para determinarel número exacto de productos a envasar
de cada tipo.
466 H. Shachnai y T. Tamir
² Si V < j U j es una colocación perfecta . V = j U j / -feria. Para cada sistema , determinar jU ¤
Yo
j D
. V = j U j / j U yo j (redondeado a números enteros, tal que
P
Yo
j U ¤
Yo
j D V / . La resultante ejemplo U ¤
satisface j U ¤ j D V .
Todos los algoritmos presentados en la sección 3 se pueden aplicar a los casos ajustados arriba,
para producir la perfecta colocación de las instancias originales. Puesta a punto especial es necesaria en
la prueba del teorema 3.1: cuando V > j U j , no puede cumplir con el conjunto maniquí añadido el
condición j U yo ¸ j ." ¢ j U j /= M . Para solucionar este problema potencial, el algoritmo tiene que
considerar el muñeco primero: nota que uno está permitido (arbitrariamente pequeña) parte de un conjunto
en cada mochila, por lo tanto, el conjunto de muñeco puede servir como la fracción colocada en el primer
mochila.
Nuestros resultados en la sección 4 también sostienen para entradas generales, a saber, las declaraciones del
teorema
4.1 y corolario 4.9 siguen siendo válidas. De hecho, el algoritmo de unar utilizado en la prueba de
Teorema 4.1, puede ser aplicado para cualquier instancia de la CMKP. Es suficiente demostrar la
validez de corolario 4.6 y lemas 4.3, 4.7 y 4.8. Primero Observe que sólo la prueba de
Lema 4.8 asume que j U j D V . Ahora mostramos cómo puede ser la prueba de este lema
modificado para argumentar que todas las mochilas llenados durante la cuarta etapa están "saturados",
también al j U j 6 D V . Consideramos dos casos porseparado:
(i) si jUj > V, entonces como en el caso donde jUj D Vla suma de los tamaños de las restantes
conjuntos siempre excede el total restante volumen.
(ii) si V > jUjentonces todas las mochilas llenados durante la cuarta etapa se saturan hasta R
está vacío, o hasta que las mochilas están llenos. Si R está vacía (no hay peticiones queden),se
significa que empacamos todos los elementos de la U, que es claramente óptima. Si corremos hacia fuera
de mochilas, entonces,como en el caso donde j U ¸ j V significa que todas las mochilas
en esta etapa están saturados. Por lo tanto,es inevitable la única pérdida de volumen
w D w 1 C w 2 C ¢ ¢ ¢ C w n (de las dos primeras etapas).
En ambos casos la utilización alcanzada por A r al menos es la máxima utilización posible
para la instancia original, .
Referencias
[1] C. Aggarwal, J. Lobo y P. S. Yu, en Caballito óptima combinar políticas para DISH
sistemas, en Los procedimientos de Sigmetrics, 1996, págs. 200-209.
[2] S. Berson, S. Ghandeharizadeh, R. Muntz y X. Ju, tambaleóstripingen informaciónmultimedia
sistemas, Procedimientos de SIGMOD,1994, págs. 79-90.
[3] A.K. Chandra,D.S. Hirschbergy C.K.Wong, algoritmos aproximados por una mochila generalizada
problemas, teórico. Comput. SCI., 3 (1976), 293-304.
[4] Chen p., E. Lee, G. Gibson, R. Katz y D. Patterson, RAID: altorendimiento, secundariaconfiable
almacenamiento, ACM Comput. Encuestas, 26(2)(1994), 145-185.
[5] T. Corman, LeisersonC. y R. Rivest, Introduccióna los algoritmos, MIT Press, Cambridge, MA,
1990.
[6] M.R. Garey y D.S. Johnson, computadoras e ingobernable:Guía a la teoría de NP-completo.
Freeman, San Francisco, CA, 1979.
[7] G.V. Gens y E.V. Levner, complejidadcomputacional de algoritmos de aproximaciónde combinatoria
problemas, en actas de la 8thInternational Symposium on MathematicalFoundations de informática
Ciencia , Lecture Notes in ComputerScience, Vol. 74,Springer-Verlag, Berlín, 1979, págs. 292 – 300.
En dos versiones constreñida del problema mochila múltiples 467
Piggybackingadaptativa L. Golubchik,J.C.SLui y R.R. Muntz, [8]: una técnica novedosa para compartir datos
en servidores de almacenamientode video onDemand, ACM Multimediasistemas J., 4(3) (1996), 140-155.
[9] R.L. Graham, límites para ciertas anomalías multiproceso, Técnicode sistemas Bell. J.,45 (1966),1563–
1581.
[10] R.L. Graham, límites sobre anomalías de sincronizaciónmultiprocesador, SIAM J. Appl.Matemáticas., 17(1969), 263-269.
[11] R.L. Graham, E.L.Lawler, J.K. Lenstray Kan A.H.G. Rinnooy, optimizacióny aproximaciónen
determinista de secuenciacióny programación: una encuesta, Ann. Matemáticas discretas., 5 (1979), 287-326.
[12] D.S. Hochbaum, aproximación algoritmos paraproblemas NP-Hard, PWS, Boston, MA,1995.
[13] D.S. Hochbaum y D.B. Shmoys,mediantealgoritmos de aproximación dual para la programaciónde problemas:
resultados teóricos y prácticos, J. Assoc. Comput. Mach.,34(1)(1987), 144-162.
[14] T. Ibaraki y N. Katoh, problemas deasignaciónde recursos - métodos algorítmicos, el MIT Press,
Cambridge, MA, 1988.
[15] O.H. Ibarray C.E. Kim,aproximación rápida para la mochilay la suma de problemas de subconjunto,
J . Assoc. Comput. Mach.,22 (1979), 463– 488.
[16] M. Kamath, K. Ramamrithamy D. Towsley, compartir la base de datos multimedia de medios continuos
sistemas, en las actas de la cuarta ConferenciaInternacional sobre sistemas de base de datos avanzado
Aplicaciones , Singapur, 1995, págs. 79-86.
[17] P.W.K. mentira, J.C.S. Lui y L. Golubchik, replicación dinámica basadas en umbrales en granescala vídeo-ondemand
sistemas, en actas delVIII taller internacional en temas de investigaciónen base de datos
Ingeniería (Paseo), Orlando, FL, febrerode 1998, págs. 52-59.
[18] S. Martelloy P. Toth,algoritmos para problemas de mochila, Ann. Matemáticas discretas., 31(1987), 213-258.
[19] D. Pisinger, algoritmos paraproblemas de mochila, tesis de doctorado,Departamento de informática, Universidad
de Copenhague, febrerode 1995.
[20] S.S. Skiena, el Manual de diseño dealgoritmo, Springer-Verlag, Nueva York,1998.
[21] J.L. Wolf, P.S. Yuy H. Shachnai, problemas de programación ensistemas de video on Demand, en Multimedia
Manejo y almacenamientode información (ProntoM. Chung, ed.),Kluwer, Dordrecht,1996, págs. 183-207.
[22] J.L.Wolf, P.S.Yuy H. Shachnai,disco equilibrio de carga para sistemas de vídeo a la carta,ACMMultimedia
Sistemas de J ., 5 (1997), 358-370.

Más contenido relacionado

Similar a investigacion de operacciones

Mate negocios unidad 5
Mate negocios unidad 5Mate negocios unidad 5
Mate negocios unidad 5ANALGIGI
 
19189723 estructura-de-datos-programacion-facil
19189723 estructura-de-datos-programacion-facil19189723 estructura-de-datos-programacion-facil
19189723 estructura-de-datos-programacion-facilDariana Acuariogv
 
Teoría de complejidad computacional (tcc).pptx
Teoría de complejidad computacional (tcc).pptxTeoría de complejidad computacional (tcc).pptx
Teoría de complejidad computacional (tcc).pptxYared Redman
 
Libro electronica digital problemas de circuitos y sistemas digitales
Libro electronica digital problemas de circuitos y sistemas digitalesLibro electronica digital problemas de circuitos y sistemas digitales
Libro electronica digital problemas de circuitos y sistemas digitalesPedro Vasquez
 
Problemas de Circuitos y Sistemas Digitales _ Carmen Baena, Manuel Jesús Bell...
Problemas de Circuitos y Sistemas Digitales _ Carmen Baena, Manuel Jesús Bell...Problemas de Circuitos y Sistemas Digitales _ Carmen Baena, Manuel Jesús Bell...
Problemas de Circuitos y Sistemas Digitales _ Carmen Baena, Manuel Jesús Bell...Marco Enrique Ramos Castillo
 
Taller 2do corte 1 materiales
Taller 2do corte 1 materialesTaller 2do corte 1 materiales
Taller 2do corte 1 materialesMarco Peña
 
DIAPOS EXPO FINAL IO2.pptx
DIAPOS EXPO FINAL IO2.pptxDIAPOS EXPO FINAL IO2.pptx
DIAPOS EXPO FINAL IO2.pptxEberVilasTello
 
t5 unidades de almacenamiento..docx
t5 unidades de almacenamiento..docxt5 unidades de almacenamiento..docx
t5 unidades de almacenamiento..docxAlinaCardenasRamirez
 

Similar a investigacion de operacciones (17)

Maurette ojea
Maurette ojeaMaurette ojea
Maurette ojea
 
2 algoritmos voraces
2 algoritmos voraces2 algoritmos voraces
2 algoritmos voraces
 
143
143143
143
 
Mate negocios unidad 5
Mate negocios unidad 5Mate negocios unidad 5
Mate negocios unidad 5
 
Programación dinámica
Programación dinámica Programación dinámica
Programación dinámica
 
19189723 estructura-de-datos-programacion-facil
19189723 estructura-de-datos-programacion-facil19189723 estructura-de-datos-programacion-facil
19189723 estructura-de-datos-programacion-facil
 
Teoría de complejidad computacional (tcc).pptx
Teoría de complejidad computacional (tcc).pptxTeoría de complejidad computacional (tcc).pptx
Teoría de complejidad computacional (tcc).pptx
 
Libro electronica digital problemas de circuitos y sistemas digitales
Libro electronica digital problemas de circuitos y sistemas digitalesLibro electronica digital problemas de circuitos y sistemas digitales
Libro electronica digital problemas de circuitos y sistemas digitales
 
Problemas de Circuitos y Sistemas Digitales _ Carmen Baena, Manuel Jesús Bell...
Problemas de Circuitos y Sistemas Digitales _ Carmen Baena, Manuel Jesús Bell...Problemas de Circuitos y Sistemas Digitales _ Carmen Baena, Manuel Jesús Bell...
Problemas de Circuitos y Sistemas Digitales _ Carmen Baena, Manuel Jesús Bell...
 
Taller 2do corte 1 materiales
Taller 2do corte 1 materialesTaller 2do corte 1 materiales
Taller 2do corte 1 materiales
 
DIAPOS EXPO FINAL IO2.pptx
DIAPOS EXPO FINAL IO2.pptxDIAPOS EXPO FINAL IO2.pptx
DIAPOS EXPO FINAL IO2.pptx
 
INVESTIGACIÓN DE OPERACIONES
INVESTIGACIÓN DE OPERACIONESINVESTIGACIÓN DE OPERACIONES
INVESTIGACIÓN DE OPERACIONES
 
Packing
PackingPacking
Packing
 
Mapa mental2
Mapa mental2Mapa mental2
Mapa mental2
 
Mapa mental2
Mapa mental2Mapa mental2
Mapa mental2
 
Presentacion proyecto - Física
Presentacion proyecto - FísicaPresentacion proyecto - Física
Presentacion proyecto - Física
 
t5 unidades de almacenamiento..docx
t5 unidades de almacenamiento..docxt5 unidades de almacenamiento..docx
t5 unidades de almacenamiento..docx
 

Último

PLAN DE TRABAJO DE REFUERZO ESCOLAR 2024.pdf
PLAN DE TRABAJO DE REFUERZO ESCOLAR 2024.pdfPLAN DE TRABAJO DE REFUERZO ESCOLAR 2024.pdf
PLAN DE TRABAJO DE REFUERZO ESCOLAR 2024.pdfMariaCortezRuiz
 
Criterios de la primera y segunda derivada
Criterios de la primera y segunda derivadaCriterios de la primera y segunda derivada
Criterios de la primera y segunda derivadaYoverOlivares
 
DISEÑO DE LOSAS EN UNA DIRECCION (CONCRETO ARMADO II )
DISEÑO DE LOSAS EN UNA DIRECCION  (CONCRETO ARMADO II )DISEÑO DE LOSAS EN UNA DIRECCION  (CONCRETO ARMADO II )
DISEÑO DE LOSAS EN UNA DIRECCION (CONCRETO ARMADO II )FELIXGUMERCINDOFLORE
 
CONTROL DE MOTORES DE CORRIENTE ALTERNA PPT
CONTROL DE MOTORES DE CORRIENTE ALTERNA  PPTCONTROL DE MOTORES DE CORRIENTE ALTERNA  PPT
CONTROL DE MOTORES DE CORRIENTE ALTERNA PPTLuisLobatoingaruca
 
Ergonomía_MÉTODO_ROSA. Evaluación de puesto de trabajo de oficina - coworking
Ergonomía_MÉTODO_ROSA. Evaluación de puesto de trabajo de oficina - coworkingErgonomía_MÉTODO_ROSA. Evaluación de puesto de trabajo de oficina - coworking
Ergonomía_MÉTODO_ROSA. Evaluación de puesto de trabajo de oficina - coworkingGonzalo141557
 
IF-CONDICIONALES-EJERCICIOS RCA Prog2..pptx
IF-CONDICIONALES-EJERCICIOS RCA Prog2..pptxIF-CONDICIONALES-EJERCICIOS RCA Prog2..pptx
IF-CONDICIONALES-EJERCICIOS RCA Prog2..pptxrcasso123
 
UNIVERSIDAD NACIONAL ALTIPLANO PUNO - FACULTAD DE INGENIERIA MECANICA ELECTRICA.
UNIVERSIDAD NACIONAL ALTIPLANO PUNO - FACULTAD DE INGENIERIA MECANICA ELECTRICA.UNIVERSIDAD NACIONAL ALTIPLANO PUNO - FACULTAD DE INGENIERIA MECANICA ELECTRICA.
UNIVERSIDAD NACIONAL ALTIPLANO PUNO - FACULTAD DE INGENIERIA MECANICA ELECTRICA.HaroldKewinCanaza1
 
ANÁLISIS MASAS PATRIMONIALES y financieros
ANÁLISIS MASAS PATRIMONIALES y financierosANÁLISIS MASAS PATRIMONIALES y financieros
ANÁLISIS MASAS PATRIMONIALES y financierosDaniel Gonzalez
 
Deilybeth Alaña - Operaciones Básicas - Construcción
Deilybeth Alaña - Operaciones Básicas - ConstrucciónDeilybeth Alaña - Operaciones Básicas - Construcción
Deilybeth Alaña - Operaciones Básicas - ConstrucciónDeilybethAinellAlaaY
 
Distribución Muestral de Diferencia de Medias
Distribución Muestral de Diferencia de MediasDistribución Muestral de Diferencia de Medias
Distribución Muestral de Diferencia de Mediasarielemelec005
 
Los vidrios eléctricos en un automóvil.pptx
Los vidrios eléctricos en un automóvil.pptxLos vidrios eléctricos en un automóvil.pptx
Los vidrios eléctricos en un automóvil.pptxIsraelRebolledo1
 
Flujograma de gestión de pedidos de usuarios.
Flujograma de gestión de pedidos de usuarios.Flujograma de gestión de pedidos de usuarios.
Flujograma de gestión de pedidos de usuarios.thatycameron2004
 
Mapa de carreteras de Colombia 2022 INVIAS
Mapa de carreteras de Colombia 2022 INVIASMapa de carreteras de Colombia 2022 INVIAS
Mapa de carreteras de Colombia 2022 INVIASAlfonsoRosalesFonsec
 
Análisis Combinatorio ,EJERCICIOS Y PROBLEMAS RESUELTOS
Análisis Combinatorio ,EJERCICIOS Y PROBLEMAS RESUELTOSAnálisis Combinatorio ,EJERCICIOS Y PROBLEMAS RESUELTOS
Análisis Combinatorio ,EJERCICIOS Y PROBLEMAS RESUELTOSppame8010
 
NORMATIVA AMERICANA ASME B30.5-2021 ESPAÑOL
NORMATIVA AMERICANA ASME B30.5-2021 ESPAÑOLNORMATIVA AMERICANA ASME B30.5-2021 ESPAÑOL
NORMATIVA AMERICANA ASME B30.5-2021 ESPAÑOLPol Peña Quispe
 
monografia sobre puentes 1234456785432o5
monografia sobre puentes 1234456785432o5monografia sobre puentes 1234456785432o5
monografia sobre puentes 1234456785432o5garciacordovadiuler
 
tema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptx
tema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptxtema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptx
tema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptxDianaSG6
 
PRESENTACION REUNION DEL COMITE DE SEGURIDAD
PRESENTACION REUNION DEL COMITE DE SEGURIDADPRESENTACION REUNION DEL COMITE DE SEGURIDAD
PRESENTACION REUNION DEL COMITE DE SEGURIDADmirellamilagrosvf
 
&PLC Ladder.pdf automatización industrial
&PLC Ladder.pdf automatización industrial&PLC Ladder.pdf automatización industrial
&PLC Ladder.pdf automatización industrialjulianmayta1
 
14. DISEÑO LOSA ALIGERADA MOD G VOLADO.pdf
14. DISEÑO LOSA ALIGERADA MOD G VOLADO.pdf14. DISEÑO LOSA ALIGERADA MOD G VOLADO.pdf
14. DISEÑO LOSA ALIGERADA MOD G VOLADO.pdfDavidHunucoAlbornoz
 

Último (20)

PLAN DE TRABAJO DE REFUERZO ESCOLAR 2024.pdf
PLAN DE TRABAJO DE REFUERZO ESCOLAR 2024.pdfPLAN DE TRABAJO DE REFUERZO ESCOLAR 2024.pdf
PLAN DE TRABAJO DE REFUERZO ESCOLAR 2024.pdf
 
Criterios de la primera y segunda derivada
Criterios de la primera y segunda derivadaCriterios de la primera y segunda derivada
Criterios de la primera y segunda derivada
 
DISEÑO DE LOSAS EN UNA DIRECCION (CONCRETO ARMADO II )
DISEÑO DE LOSAS EN UNA DIRECCION  (CONCRETO ARMADO II )DISEÑO DE LOSAS EN UNA DIRECCION  (CONCRETO ARMADO II )
DISEÑO DE LOSAS EN UNA DIRECCION (CONCRETO ARMADO II )
 
CONTROL DE MOTORES DE CORRIENTE ALTERNA PPT
CONTROL DE MOTORES DE CORRIENTE ALTERNA  PPTCONTROL DE MOTORES DE CORRIENTE ALTERNA  PPT
CONTROL DE MOTORES DE CORRIENTE ALTERNA PPT
 
Ergonomía_MÉTODO_ROSA. Evaluación de puesto de trabajo de oficina - coworking
Ergonomía_MÉTODO_ROSA. Evaluación de puesto de trabajo de oficina - coworkingErgonomía_MÉTODO_ROSA. Evaluación de puesto de trabajo de oficina - coworking
Ergonomía_MÉTODO_ROSA. Evaluación de puesto de trabajo de oficina - coworking
 
IF-CONDICIONALES-EJERCICIOS RCA Prog2..pptx
IF-CONDICIONALES-EJERCICIOS RCA Prog2..pptxIF-CONDICIONALES-EJERCICIOS RCA Prog2..pptx
IF-CONDICIONALES-EJERCICIOS RCA Prog2..pptx
 
UNIVERSIDAD NACIONAL ALTIPLANO PUNO - FACULTAD DE INGENIERIA MECANICA ELECTRICA.
UNIVERSIDAD NACIONAL ALTIPLANO PUNO - FACULTAD DE INGENIERIA MECANICA ELECTRICA.UNIVERSIDAD NACIONAL ALTIPLANO PUNO - FACULTAD DE INGENIERIA MECANICA ELECTRICA.
UNIVERSIDAD NACIONAL ALTIPLANO PUNO - FACULTAD DE INGENIERIA MECANICA ELECTRICA.
 
ANÁLISIS MASAS PATRIMONIALES y financieros
ANÁLISIS MASAS PATRIMONIALES y financierosANÁLISIS MASAS PATRIMONIALES y financieros
ANÁLISIS MASAS PATRIMONIALES y financieros
 
Deilybeth Alaña - Operaciones Básicas - Construcción
Deilybeth Alaña - Operaciones Básicas - ConstrucciónDeilybeth Alaña - Operaciones Básicas - Construcción
Deilybeth Alaña - Operaciones Básicas - Construcción
 
Distribución Muestral de Diferencia de Medias
Distribución Muestral de Diferencia de MediasDistribución Muestral de Diferencia de Medias
Distribución Muestral de Diferencia de Medias
 
Los vidrios eléctricos en un automóvil.pptx
Los vidrios eléctricos en un automóvil.pptxLos vidrios eléctricos en un automóvil.pptx
Los vidrios eléctricos en un automóvil.pptx
 
Flujograma de gestión de pedidos de usuarios.
Flujograma de gestión de pedidos de usuarios.Flujograma de gestión de pedidos de usuarios.
Flujograma de gestión de pedidos de usuarios.
 
Mapa de carreteras de Colombia 2022 INVIAS
Mapa de carreteras de Colombia 2022 INVIASMapa de carreteras de Colombia 2022 INVIAS
Mapa de carreteras de Colombia 2022 INVIAS
 
Análisis Combinatorio ,EJERCICIOS Y PROBLEMAS RESUELTOS
Análisis Combinatorio ,EJERCICIOS Y PROBLEMAS RESUELTOSAnálisis Combinatorio ,EJERCICIOS Y PROBLEMAS RESUELTOS
Análisis Combinatorio ,EJERCICIOS Y PROBLEMAS RESUELTOS
 
NORMATIVA AMERICANA ASME B30.5-2021 ESPAÑOL
NORMATIVA AMERICANA ASME B30.5-2021 ESPAÑOLNORMATIVA AMERICANA ASME B30.5-2021 ESPAÑOL
NORMATIVA AMERICANA ASME B30.5-2021 ESPAÑOL
 
monografia sobre puentes 1234456785432o5
monografia sobre puentes 1234456785432o5monografia sobre puentes 1234456785432o5
monografia sobre puentes 1234456785432o5
 
tema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptx
tema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptxtema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptx
tema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptx
 
PRESENTACION REUNION DEL COMITE DE SEGURIDAD
PRESENTACION REUNION DEL COMITE DE SEGURIDADPRESENTACION REUNION DEL COMITE DE SEGURIDAD
PRESENTACION REUNION DEL COMITE DE SEGURIDAD
 
&PLC Ladder.pdf automatización industrial
&PLC Ladder.pdf automatización industrial&PLC Ladder.pdf automatización industrial
&PLC Ladder.pdf automatización industrial
 
14. DISEÑO LOSA ALIGERADA MOD G VOLADO.pdf
14. DISEÑO LOSA ALIGERADA MOD G VOLADO.pdf14. DISEÑO LOSA ALIGERADA MOD G VOLADO.pdf
14. DISEÑO LOSA ALIGERADA MOD G VOLADO.pdf
 

investigacion de operacciones

  • 1. En dos versiones con restricciones de clase de la Múltiples problemas de mochila 1 H. Shachnai2 y Tamir T.2 Abstracto. Estudiamos dos variantes del problema mochila clásica, enla que necesitamos colocar artículos de diferentes tipos en varias mochilas; cada mochilatiene una capacidadlimitada y un límite en el númerode diferentes tipos de elementos que puede contener: queremos en los múltiples problemas de mochilaconrestricciones de clase (CMKP) maximizar el númerototal de artículos envasados; en el problemade colocaciónjusta (FPP)nuestroobjetivoes el mismo lugar porción (grande)de cada conjunto. Buscamos una colocaciónperfecta,en la que ambos problemas estánresueltos óptimamente. Nos primero demostrarque los dos problemas NP-hard; Entonces consideramos algunos casos especiales, donde una colocación perfecta existe y puede encontrarse en tiempopolinomial. Para otros casos, le damos Soluciones aproximadas. Porúltimo, le damos una solución casi óptima para el CMKP. Nuestros resultados parael CMKP y el FPP se muestranpara proporcionar eficientes soluciones para dos problemas fundamentales que se presentan en subsistemas de almacenamiento multimedia. Palabras claves. Mochila,embalaje,algoritmos de aproximación,la asignaciónde recursos, equidad, utilización, Multimedia bajo demanda. 1. Introducción 1.1. planteamiento del problema.En el conocido múltiples problema mochila (MKP) [18] M artículos de diferentes tamaños y valores tienen que ser embalado en N mochilas con limited volúmenes. En este trabajo se estudian dos variantes de la MKP, en qué elementos de distinta M tipos debe ser embalado en mochilas N , cada uno con un volumen limitado y una limitada cantidad de compartimentos; objetos de diferentes tipos no pueden colocarse en el mismo compartimiento. En concreto, la entrada es un universo U, que consiste en M distintos tipos de artículos, dados que los subconjuntosde U 1 ; : : : ; U M hay j U yo j elementos de tipo , 1 · yo · M , y U D U 1 [ U2 ¢ ¢ ¢ [ UM; todos los elementos tienen el mismo tamaño (unidad) y el mismo valor, que es, para todos los u 2 U s . u / D w. u / D 1. existen N Mochilas: la mochila th j , Kj , tiene el volumen V j y un número limitado de compartimentos, C j en el cual los objetos pueden colocarse, 1 · j · N . Por lo tanto,en la mochila de th j podemos colocar artículos de a lo sumo Cj de diferentes tipos. La salida de nuestros problemas de optimización es una colocación,que especifica por cada mochila K j a los tipos de elementos de K j asignados los compartimientos y cómo muchos artículos de cada tipo se colocan en K j . Una colocación es legal si Kj asignados a más C j compartimentos y el tamaño total de los artículos colocados en K j no exceda de V j , para 1 Una versión preliminarde este artículo aparecióen Procedimientos dediversiónconalgoritmos, Isola d' Elba, Italia, Junio de 1998. 2 Departamento de informática, el Technion, Haifa32000,Israel. f hadas, tami g @cs.technion.ac.il. Recibido el 01 de junio de 1998; revisado 05de diciembre de 1998. Comunicado porN. Megiddo. Publicación online 06de octubrede 2000. En dos versiones constreñida del problema mochila múltiples 443 todos los 1 · j · N . Una colocación determina un subconjunto U0 D U0 1 [ U0 2 [ ¢ ¢ ¢ [ U0 M de U, tal que j U 0 Yo j es el número de artículos empacado de U yo . Los dos problemas de optimización estudiados en este trabajo son: El-constreñida múltiples problema mochila (CMKP), en el cual nuestro objetivo es maximizar el tamaño total de los elementos empaquetados,dada por P M yo D 1 j U 0 yo j. El problema de colocación justa (FPP), donde el objetivo es maximizar el valor de 0 < c · 1 tal que 8 1 · yo · M ; j U 0 yo ¸ j c ¢ j U yo j.
  • 2. A lo largo del papel asumimos P M yo D 1 j U yo j D P N j D 1 V j , es decir, el número total de los elementos de U es igual a la suma de los volúmenes de mochila. En particular, buscamos un colocación perfecta , en que ambos problemas están resueltos óptimamente. De hecho,tal una colocación da la máxima utilización de las capacidades de mochila, es decir, el total de ocupados volumen es V D P N j D 1 V j y la máxima imparcialidad, es decir, c D 1. La Asunción j U j D V simplifica la presentación de nuestros resultados,porotra parte, cualquier entrada para el problema de gestión de almacenamiento que motivado nuestro estudio,satisface esta suposición. Es importante señalar, sin embargo, que nuestros resultados tienen para las entradas generales para el el CMKP y el FPP, es decir, para cualquier relación entre la j U j y V. Elaboramos en eso en el apéndice. 1.2. Administración de almacenamiento de información en sistemas Multimedia.Nuestras dos variantes de la mochila problema están motivados por dos problemas fundamentales que se presentan en la administración del almacenamiento para los sistemas multimedia-on-demand (MOD). MOD servicios se están volviendo comunes en Biblioteca recuperación de información, entretenimiento y aplicaciones comerciales. MODsystems se espera que gestionen con los enormes requisitos de ancho de banda y almacenamiento de multimedia datos.Además, MOD servidores deben soportarlos requerimientos de sincronización estricta: cada usuario puede elegir un programa que desea ver y el tiempo que desea ver. El el servicio debe ser suministrado dentro de un pequeño estado latente y garantizando una casi constante velocidad de transferencia de los datos. En un sistema MOD se mantiene una gran base de datos de archivos de programa video M en un centralizado servidor. Cada archivo de programa se asocia con un parámetro de popularidad, dado por pi 2 [0; 1], donde P M yo D 1 p yo D 1. los archivos se almacenan en los discos N compartida. Cada uno de los discos es caracterizado por (i) almacenamiento de capacidad, que es el número de archivos que pueden residir en él y (ii) su capacidad de carga, dado por el número de flujos de datos que pueden ser leídos simultáneamente desde ese disco. Suponiendo que fp1; : : : ; p M g son conocidos,podemos predecir la carga prevista generada por cada uno de los programas en cualquier momento. Queremos definir una asignación estática de almacenamiento y carga de cada archivo, por lo que la carga generados debido a acceder a las peticiones para el archivo puede ser satisfecho. Nuestra asignación debería permitir transmisiones simultáneas de tantos programas de video como sea posible. En efecto, debe reflejar las popularities de los programas, permitiendo que muchas transmisiones de popular los programas y sólo pocas transmisiones a los menos populares. En otras palabras, queremos como lograr una asignación justa de almacenamiento y capacidad de carga. Otro objetivo es maximizar la utilización de la capacidad de carga del sistema. El problema de asignación de archivos en discos,con el fin de maximizar la utilización (equidad), puede ser formulado como una instancia de la CMKP (FPP): un disco j con capacidad de carga L j y almacenamiento capacidad C j estará representada por una mochila K j con el volumen L j y C j compartimentos. Un archivo estará representado por un conjunto U yo con el tamaño j U yo j que es proporcional al archivo 444 H. Shachnai y T. Tamir popularidad. En concreto,jUD j PN j D 1 L j y j U yo j D p yo j U j . 3 Una solución para cualquiera de nuestras dos variantes de los problemas de mochila inducirá una asignación estática legal. 1.3. trabajos relacionados.Problemas relacionados con el trabajo previo sobre el MKP y otra mochila suponerque (i) todos los elementos del mismo tipo tienen que sercolocados en el mismo saco,y
  • 3. (ii) no hay límite en el número de diferentes tipos de elementos que pueden colocarse en una mochila (véase, por ejemplo, [3], [7], [15], [20] y estudios detallados en [18] y [19]). El caso especial de los MKP donde N D 1, conocido como el clásico 0 – 1 problema mochila, admite un esquema de aproximación polinomial completamente (AAP). Es decir, para cualquier "> 0, un .1 ¡ "/ -aproximación a la solución óptima puede ser encontrado en O . n =" 2 / , donde n es el número de elementos [6], [7]. En contraste,el MKP es NP-hard en el sentido fuerte, por lo tanto es poco probable que tengan un AAP, a menos que P D NP [19]. El CMKP está estrechamente relacionado con el problema de la mochila fraccionario:este problema puede ser óptimamente resuelto en tiempo polinomial (por un simple algoritmo voraz [5]). De hecho,los conjuntos U 1 ; : : : ; U M puede ser sustituido por M artículos de tamaños j U 1 j ; : : : ; j U M j , donde cada elemento se puede dividir entre varias mochilas. En nuestra versión generalizada de la mochila fraccionaria, cada mochila tiene también una capacidad limitada y un límite en el número de elementos que puede contener. Mostramos abajo que este problema es NP-hard. Trata de otros trabajos relacionados con programación multiprocesador [9] – [11], también conocida como la makespan mínimo problema: teniendo en cuenta los procesadores n y m trabajos con integral designado tiempos de procesamiento, el objetivo es programar los trabajos en los procesadores,tal que el general se minimiza el tiempo de finalización del programa. Podemos representar una mochila por un procesadory cada conjunto de elementos de tamaño k por un trabajo que requiere k unidades de tiempo de procesamiento. Por lo tanto,hay n D N procesadores y m D M puestos de trabajo. La restricción del compartimiento puede estar representados en el problema de programación permitiendo que a lo sumo C j trabajos para ser programada en procesadorj , 8 1 · j · N . Tenga en cuenta, que es equivalente a maximizar minimizar el makespan la utilización de los volúmenes de mochila. Investigaciones anteriores sobre el problema de programación No hay límite en el número de puestos de trabajo que puede ser asignado a cada procesador,es decir, no asume C yo D M , 8 1 · yo · M (una encuesta aparece en [12]). En este caso el problema makespan admite un esquema de aproximación de tiempo polinómico [9]. MOD sistemas han sido estudiados intensamente en los últimos años [1], [8], [16] [17], [21]. Sin embargo, el problema de la asignación recibió poca atención sólo en este contexto. En concreto, la mayoría de los trabajos anteriores discute el problema de equilibrio de carga en los discos,en que la meta es tener la carga total en el sistema distribuido uniformemente entre N discos. La primera solución propuesta para el problema de balanceo de carga estaba entrelazado (véase, por ejemplo, [2] y [4]), en que los datos de cada archivo se distribuyen en varios discos. Por lo tanto,la carga pesada causada por un popular programa es compartida entre estos discos. En algoritmos dinámicos [22] fueron sugeridos para equilibrar la carga en el sistema. El papel también aborda el problema de determinar el número de copias de cada archivo que debe mantenerse en el sistema; el objetivo es tener la capacidad de almacenamiento total asignada a f yo reflejar su popularidad. Este criterio puede producir malos resultados cuando se utilizan para la solución de nuestros problemas de optimización: intuitivamente, el algoritmo destinará múltiples copias de un archivos más populares, sin embargo, estas copias se pueden almacenar en discos,cuyas capacidades de carga son 3 Por simplicidad, suponemos que p yo j U j es un entero (de lo contrariopodemos utilizaruna norma técnica [14]de redondeo). En dos versiones constreñida del problema mochila múltiples 445 pequeño.En consecuencia,estos discos se sobrecarga y el sistema rechazará a menudo solicitudes de ese archivo. Esto es debido al hecho de que la colocación de archivos en los discos se usa como parámetros sólo los popularities archivo y capacidades de almacenamiento de los discos,mientras que la carga se omiten las capacidades (se da un ejemplo detallado en la sección 2.3.2). 1.4. nuestros resultados.Ahora resumimos los resultados presentados en este documento: ² El CMKP y el FPP están NP-hard.
  • 4. ² Para algunos casos una colocación perfecta siempre existe y puede encontrarse en polinomio tiempo. Se dan tres condiciones simples para la existencia de una colocación perfecta. Para cada condición, mostramos cómo el CMKP y el FPP pueden seróptimamente resuelto, cuando esta condición es satisfecha. ² Cuando las condiciones no se cumplen, wederive Soluciones aproximadas por nuestra mochila dos problemas. La proporción de aproximación depende de la "uniformidad" de las mochilas. En concreto, dado r > 0 y ® ¸ 1 tal que 8 j ; r · V j = C j · ® ¢ r , le damos un algoritmo que logra . 1 =®/ -aproximación para el CMKP y el FPP. ² Demostramos que si la cantidad de compartimentos en cada mochila es menos b, para algunos b ¸ 1, es decir, C j ¸ b , 8 1 · j · N entonces el CMKP se puede aproximar a dentro factor b =. b C 1/. El resto del documento está organizado como sigue. Los resultados de dureza se dan en Sección 2.4. En la sección 3 se discuten varios casos en los que existe una colocación perfecta y puede encontrarse en tiempo polinomial. Se da una solución casi óptima para el CMKP en Sección 4. En la sección 5 se describe cómo se pueden aplicar los resultados teóricos a almacenamiento de información gestión en sistemas MOD y en particular a subsistemas de discos heterogéneos . En Sección 6 damos direcciones posibles para el trabajo futuro. 2. preliminares. Dado N mochilas con los volúmenes V 1 ; : : : ; V N el potencial de embalaje de las mochilas, denotados por V, es el número total de elementos que pueden sercolocados en las mochilas, es decir, V D P N j D 1 V j . Para un universo U objetos del tamaño de unidad, repartido a los establece U 1 ; : : : ; U M una solución a la CMKP o la FPP puede representarse como dos M £ N matrices: 1. la matriz de indicadores,, un f0; 1 g -matrix, yo ; j D 1 iff un compartimiento de K j se asignaron elementos de tipo U yo . 2. matriz de cantidad Q, Q; j 2 f 0 ; 1 ; : : : ; V j g Q yo ; j es el número de elementos de U yo que se colocan en K j . Una colocación legal tiene que satisfacerlas siguientes condiciones: ² Yo yo ; j D 0 ) Q; j D 0. esta condición refleja el hecho de que elementos de Uque puede ser colocado en K j sólo si un compartimiento de K j fue asignado a los elementos de tipo . ² Por cada mochila K j , P yo Q yo ; j · V j es decir, el número total de elementos colocados en K j No exceder su capacidad. ² Por cada mochila K j , P yo Yo yo ; j · C j , es decir, el número de diferentes tipos de artículos colocado en K j no exceda la cantidad de compartimentos en K j . 446 H. Shachnai y T. Tamir Las matrices y Q determinarán un subconjunto de elementos U 0 D U 0 1 [¢ ¢ ¢[ U 0 M que se coloca en las mochilas. D Definición 2.1. dada una solución para el CMKP (FPP), la cantidad llena de U , denota por Q yo es el número total de elementos lleno de U yo . Por lo tanto, Qi D jU0 yo j D P N j D 1 Q yo ; j . 2.1. utilización de una colocación.Es nuestra primera medida por la calidad de una colocación utilización: D Definición 2.2. la utilización de una colocación es
  • 5. P M yo D 1 Q yo . La máxima utilización posible de una colocación es V, lo que significa que todo el embalaje se explota el potencial de las mochilas. Desde P M yo D 1 j U yo j D V también significa que exactamente j U yo j elementos del conjunto de U yo se embalan. Otras colocaciones pueden utilizar sólo una parte de la embalaje total potencial: D Definición 2.3. una colocación es c utilizado sisu utilización es igual a c ¢ V, para algunos c 2 [0; 1]. Las preguntas principales son:"la máxima utilización posible se encuentran en polinomio tiempo?" "Podemos encontrar una aproximación eficiente?" TheCMKPaims en maximizar la utilización de los potenciales de embalaje: en la sección 4we presentarun algoritmo de aproximación dual para theCMKP. La noción de aproximación dual fue introducido en [13]. Se trata de aproximar la viabilidad de una solución para un determinado problema, en lugar de su optimalidad; algoritmos de aproximación tradicional buscan factible soluciones que son subóptimas, donde el rendimiento del algoritmo se mide por el grado de suboptimality permitido. En un algoritmo de aproximación dual el objetivo es encontrar una solución factible que es superoptimal; el rendimiento del algoritmo se mide por el grado de inviabilidad permitido. La aproximación de la relación general entre tradicionales (o primario) algoritmos y algoritmos de aproximación dual se discute en el capítulo 9 de [12]. El algoritmo de aproximación dual que presentamos en la sección 4 es superoptimal para el CMKP. Nuestro algoritmo permite un pequeño grado de inviabilidad, es decir, es a lo sumo un compartimiento añadido a cada una de las mochilas. 2.2. el problema de colocación justa.El segundo criterio para medir la calidad de una colocación es equidad: D Definición 2.4. una colocación es c-justo, para algunos c 2 [0; 1], if, para cada conjunto Uyo , Q ¸ c ¢ j U yo j. Una óptima colocación es 1-justo. En una colocación 1-justo, para cada yo , exactamente jU j artículos del conjunto deU yo se embalan. Desde P M yo D 1 j U yo j D V también significa que el potencial de embalaje de las mochilas es plenamente explotadas. En dos versiones constreñida del problema mochila múltiples 447 Varias preguntas surgen cuando se busca una colocación justa: "hace una colocación 1-Feria existe para cualquier instancia del problema?" "Podemos encontrarlo eficientemente?" "Cuando una 1-Feria colocación no existe, podemos encontrar (o aproximado) una colocación óptima eficacia? " 2.3. combina la utilización y la equidad 2.3.1. el problema de una colocación perfecta.Primero exploramos a la relación entre theCMKP y el FPP. D Definición 2.5. una colocación perfecta es una colocación en que todos los elementos de todos los sistemas están llenos, y todas las mochilas están llenos. Claramente, cualquier colocación perfecta es 1-Feria y utilizada 1. Ahora mostramos que para algunos casos una colocación perfecta no existe. Considerar un sistema simple que consta de dos mochilas, con C 1 D C 2 D 1 y V 1 D V 2 D 10, y dos conjuntos de elementos: j U 1 j D 15 y j U 2 j D 5. son las colocaciones sólo legales: 1. cada sistema se embala en una mochila diferente. Diez ítems de U1 y cinco elementos de U2 son embalado. 2. ambos compartimientos se asignan a U1, o ambos compartimientos se asignan a U2. Claramente, estas ubicaciones son 0-justo.
  • 6. Nota, que por el aumento de C 1 a 2 obtenemos una instancia, para que una colocación perfecta existe: ahora podemos colocar artículos de U 1 en dos mochilas y elegir Q 1 ; 1 D Q 2 ; 1 D 5 y Q 1 ; 2 D 10. Cuando no existe una colocación perfecta, nos gustaría encontrarla mejor posible. Sin embargo, los dos objetivos de utilización y la equidad pueden entrar en conflicto. Considere una instancia con dos Mochilas: V 1 D 20 ; C 1 D 2 Yo V 2 D 10 ; C 2 D 1; y tres conjuntos de elementos: j U 1 j D 14 ; j U 2 j D 14 ; j U 3 j D 2. Una colocación que alcanza la máxima utilización se presenta en la figura 1: 28 artículos son embalados, es decir, esta colocación es 28 30 -utilizado. Sin embargo, es 0-Feria — ningún elemento de U 3 está lleno. Figura b presenta la mejor colocación posible con respecto a la justicia. Es 10 14 -Feria y 26 30 -utilizado. En general, cualquier c-Feria de colocación es por lo menos c-utilizados. 2.3.2. algoritmossimples. En esta sección se muestran que dos simples algoritmos codiciosos No son adecuados para la CMKP y el FPP. El primer algoritmo (presentado en [22], en el contexto de sistemas MOD) puede utilizarse para la FPP: el algoritmo intenta garantizar la "equidad" asignando a cada conjunto de elementos de un número de compartimentos es proporcional a su tamaño. En concreto, utilizando un procedimiento de prorrateo, el algoritmo primero se determina la cantidad de compartimentos, yo que se destinarán aU yo 1 · yo · M ; luego selecciona un subconjunto de yo mochilas que almacenan los elementos de U yo . Finalmente, los volúmenes de las mochilas están divididas entre los conjuntos,con el fin de lograr la máxima imparcialidad. Para darse cuenta de que este algoritmo no es apto para todos los problemas de la mochila, considerar una instancia que consiste en tres sets, j U 1 j D 6 ; j U 2 j D j U 3 j D 3 y ocho mochilas, con C j D 1 de 1 · j · 8. el volumen de la mochila primera es V1 D 5 y los volúmenes de los restantes mochilas son V 2 D V 3 D ¢ ¢ ¢ D V 8 D 1; así el potencial de embalaje de las mochilas es V D 12. el número total de compartimientos es ocho, por lo tanto, por el criterio de "número de compartimientos", puesto que la mitad de los artículos pertenecen a U 1 cuatro 448 H. Shachnai y T. Tamir Figura 1. Máximautilizaciónmáxima imparcialidadfrente a. los compartimentos deben asignarse a este conjunto,mientras que U 2 y U 3 debe colocarse en dos Mochilas para cada uno. Claramente, no existe ninguna colocación justa bajo estas condiciones:el conjunto cuya los artículos se almacenan en la mochila primera se asigna volumen extra, mientras que los otros dos conjuntos son "discriminados". En la FPP nuestro objetivo es encontrar las colocaciones en cual Q yo la cantidad llena de U yo , refleja su tamaño. Tenga en cuenta que en el ejemplo anterior, si la cantidad de compartimentos asignados para cada conjunto de ítems no está determinada antes de la colocación, luego una colocación perfecta existe: por ejemplo, podemos colocar los elementos de U 1 en K 1 y K 2 artículos de U 2 en K 3 ; K 4 y K 5 ; y los artículos de U 3 en K 6 ; K 7 y K 8 . De hecho,elementos de U1 se colocan en solamente dos mochilas, pero puesto que una de estas mochilas es grande (K1), todos los artículos de U 1 puede ser embalado. El segundo algoritmo está basado en el algoritmo Más largo tiempo restante primero (LRTF) [10]. LRTF proporciona un . 43 ¡1 = n / -aproximación al problema makespan, donde n es el número de máquinas. Cuando LRTF se adopta para la FPP, colocamos los artículos de el conjunto restante más grande en la mochila con el mayor volumen restante. En dos versiones constreñida del problema mochila múltiples 449 Tenga en cuenta que este algoritmo puede producir colocaciones pobres,nonfair. Considere una instancia con dos Mochilas: V 1 D L C 1 ; C 1 D L y V 2 D L ; C 2 D 1, para algunos L > 1;
  • 7. Supongamos que hay L C 1 establece, j U 1 j D L C conjuntos restantes 1y en el L j U yo j D 1. La colocación óptima los paquetes de los artículos L de los conjuntos pequeños en K 1 y los artículos L de U 1 en K 2 . Este es un . L =. L C 1 // -Feria y . 2L =. 2L C 1 // -colocación utilizado. El LRTF algoritmo elige primero Q 1 ; 1 D L C 1 y un elemento más de otro conjunto se coloca en K 2 . Luego no se quedan compartimentos disponibles en K2. La colocación resultante es 0-justo y .. L C 2 /=. 2L C 1 // -utilizados. Por otra parte, considerar una variante de la LRTF, que ordena las mochilas por el cociente V j = C j . Luego se colocan elementos del conjunto restante más grande en la mochila en la que el cociente (actualizado) V j = C j es máxima. Tenga en cuenta que este algoritmo también produce ineficiente soluciones para la FPP. Consideremos, por ejemplo, dos mochilas con V1 D 7; C 1 D 1 y V 2 D 12 ; C 2 D 2; y tres conjuntos con j U 1 j D 10 ; j U 2 j D 7, y j U 3 j D 2. en el óptimo colocación U 2 se coloca en K 1 , mientras que U 1 y U 3 se colocan en K 2 . El algoritmo anterior inicialmente los paquetes de siete artículos de U 1 en K 1 y no puede completar el embalaje de todos los artículos de . En particular, es 0-Feria para U3. Utilizando una regla distinta, que coloca los artículos desde el set con la restante más grande "desempacado fracción" en la mochila con el más grande (actualizado) V j = C j cociente, puede aumentar la equidad, con una correspondiente disminución en utilización. Aún así, un algoritmo más complicado, que combina la clasificación por los cocientes V j = C j con otras ideas, puede ser útil en la obtención de algoritmos de aproximación para el CMKP (elaboramos en eso en la sección 4). 2.4. dureza del problema una colocación perfecta. La siguiente pregunta que consideramos es Si podemos detectar eficientemente si existe una colocación perfecta. T HEOREM 2.1. dado N mochilas con losvolúmenes V1; : : : ; V N radiantes , j compartimentos en la mochila j y los conjuntosde elementos U 1 ; : : : ; U M es NP-hard para determinar si un perfecto colocación existe para esta instancia. P Techo .Mostramos una reducción del problema de la partición,que es conocido por ser NPhard [6]. el problema de la partición se compone de un conjunto finito Ay tamaño s. un / para cada una 2 A . El problema es determinar si existe un subconjunto A 0 de tal manera que P yo 2 A 0 s . yo / D P yo 2 A n A 0 s . yo /. Dada una instancia para la partición, considerar el problema de colocación consiste en dos establece j U 1 j D j U 2 j , y j A j mochilas con C j D 1 y V j D s . un j /; 8 1 · j j · A j . Por este problema, cada una colocación perfecta induce una deseada partición y viceversa. Cualquier colocación perfecta es 1-Feria y utilizada 1. Por lo tanto,es la reducción anterior conveniente para la CMKP y la FPP. Concluimos que cada uno de estos problemas es NP-hard. 3. encontrar una colocación perfecta 3.1. condicionessimples de la existencia de una colocación perfecta. En esta sección nos presentes simple las condiciones para la existencia de una colocación perfecta. El primero de ellos considera 450 H. Shachnai y T. Tamir entradas en las que el "número de compartimientos" restricción puede ser ignorada. Claramente, if, para todas las mochilas, C j ¸ V j entonces existe una colocación perfecta y puede encontrarse en tiempo polinómico. (Observar, eso si C j ¸ V j para todos 1 · j · N entonces podemos ávidamente Coloque los conjuntos en las mochilas, hasta que todos los artículos son embalados.) La siguiente condición simple considera los tamaños de los distintos conjuntos. T HEOREM 3.1. dejar 0 < " · 1 ser el número máximo, tal que, para todos 1 · yo · M , j U yo ¸ j ." ¢ j U j /= M . Si, para todaslas mochilas, Cj ¸ . V j ¢ M /=." ¢ V / C 1, entonces existe una colocación perfecta que utiliza como máximo M C N ¡ 1 diferentes compartimentos. P Techo .Considerar el algoritmo codicioso simple, que los paquetes de los conjuntos de elementos llenando las mochilas uno tras otro. Específicamente, la mochila Kj se llena hasta que contiene V j artículos, luego continuamos a empacar en K j C 1 , y así sucesivamente. Desde
  • 8. P Yo j U yo j D j U j D V D P j V j , el algoritmo finaliza cuando la última mochila, K N , está lleno de la último elemento de U M . Por lo tanto,todo el potencial de embalaje de las mochilas es explotado y los artículos son embalados. Intuitivamente, las condiciones indican que incluso los más pequeños conjuntos son lo suficientemente grandes como para llenar cualquier mochila. Formalmente, jUij ¸ ." ¢ j U j /= M implica que cualquier subconjunto de C j ¡ 1 Series incluye por lo menos . C j ¡ 1 / j U ¢ j "= M D . C j ¡ 1 / V ¢ "= M artículos. Desde entonces, C j ¸ . V j ¢ M /=." ¢ V / C 1, tamaño total del subconjunto es menos V j . El adicional compartimiento es necesario para un pequeño número de elementos del primer conjunto colocado en K j — para Este conjunto, el tamaño no predice, ya que algunos de sus artículos fueron colocados ya en anteriores mochilas. Si todos los elementos de un conjunto se colocan en una mochila, usamos sólo un compartimiento para este sistema. Si se coloca en mochilas diferentes k , utilizamos k compartimentos para este sistema. Puesto que el algoritmo hace a lo más N ¡ 1 se divide, el número total de compartimientos usados este algoritmo es M C N ¡ 1. 3.2. relación capacidad uniforme. En esta sección presentamos una condición alternativa para la existencia de una colocación perfecta. Exigimos que el volumen y la cantidad de compartimentos en una mochila correlacionarse — mochilas con volumen alto deben tener muchos compartimentos y viceversa. D Definición 3.1. para cualquier 1 · j · N la relación entre capacidad de K j es V j = C j . El conjunto de mochilas K 1 ; : : : ; K N tiene un cociente capacidad uniforme si existe una constante r > 0, tal que V j = C j D r , 8 1 · j · N . Intuitivamente, el cociente de la capacidad de una mochila K j da el número promedio de elementos contenida en cada compartimiento cuando el volumen de K j es totalmente utilizado. Demostramos que, para un conjunto de mochilas con relación de capacidad uniforme, si P N j D 1 C j ¸ M C N ¡ 1, entonces un una colocación perfecta existe y puede encontrarse eficientemente. Esto se aferra para cualquier distribución los tamaños de los conjuntos U 1 ; : : : ; U M . T HEOREM 3.2. si la proporción de capacidad es uniforme y P N j D 1 C j ¸ M C N ¡ 1, y luego un una colocación perfecta existe y puede encontrarse en O . M ¢ N C máximo . N LG N ; M LG M // pasos . En dos versiones constreñida del problema mochila múltiples 451 P Techo .Presentamos un algoritmo de tiempo polinomial que rinde una colocación perfecta. El algoritmo, denotado por A u procede colocando exactamente V j artículos de a lo sumo C j diferentes establece en cada una de las mochilas. Suponemos que los conjuntos se dan en un nondecreasing orden de sus tamaños,es decir, j U 1 j j · U 2 j · ¢ ¢ ¢ j · U M j. En cada paso,guardamos los restos de los conjuntos en una lista ordenada, denotada por R. El lista, R[1] ; : : : ; R [m], 1 · m · M , se actualiza durante el algoritmo, es decir, eliminamos R series de que fueron completamente lleno, y nos desplazamos a sus lugar actualizados sets que fueron sólo parcialmente lleno. R es la lista de petición de volumen, es decir, representa a cada entrada de R la solicitud de volumen, que es el número de elementos sin empaquetar, de algún conjunto U yo . El mochilas se dan en un orden nondecreasing de la cantidad de compartimentos tienen, es decir, C 1 · C 2 · ¢ ¢ ¢ · C N . La idea principal en el algoritmo es mantener el tamaño promedio de las solicitudes en R grande lo suficiente. Específicamente, para cada 1 · k · N , vamos a mostrar que cuando la mochila K k es lleno, o el tamaño promedio de petición es por lo menos r , o un algoritmo voraz trivial puede ser
  • 9. aplica para empacar las peticiones restantes en las mochilas restantes. El algoritmo utiliza dos procedimientos de mochila-relleno: algunas de las mochilas están llenos usando el procedimiento de relleno de codicioso ; las otras mochilas se llenará con el movingwindow procedimiento. Ahora describimos los dos procedimientos. G REEDY -F ILLING. El procedimiento de relleno de codiciosos llena una mochila con artículos,a partir desde el conjunto más pequeño, R[1] y continuando hasta la mochila está saturada,es decir, hasta que contiene exactamente V j artículosde . Puede dividir el último set, es decir, será sólo una parte de sus elementos embalada en K j . Se da una descripción formal del procedimiento de relleno de codiciosos en Figura 2. M OVING -W INDOW . El procedimiento de mover la ventana llena una mochila, Kj , con el primer secuencia de C j conjuntos cuyo tamaño total es menos V j . Buscamos la lista R usando una mudanza ventana de tamaño C j . Inicialmente, la ventana cubre el conjunto de los más pequeños Cj establece.En cada iteración que reemplazamos el más pequeño situado en la ventana por el siguiente conjunto de R, hasta que el número de los artículos que figuran en la ventana sea lo suficientemente grande como para saturar K j . Si el subconjunto de el C j conjuntos más grandes incluye menos de V j artículos, entonces nosotros no podemos saturar K j . Sin embargo, nos Relleno de codiciosos ( j ) yo à 1 repetir Allocate un compartimiento de K j paralos artículos de la serie U k correspondientes a R[ ]. Coloque los artículos de U k en K j : Q k ; j D min f R [yo ] ; V j g V j à V j ¡ Q k ; j yo à yo C 1 hasta V j D 0 Retire de R los conjuntos que estaban completamente lleno en K j . Actualizar el tamaño del nuevo conjunto más pequeño que fue sólo parcialmente embalado en K j . Quitar K j de la lista mochila. Figura 2. El procedimiento de relleno de codiciosos. 452 H. Shachnai y T. Tamir Mover la ventana ( j ) yo à 1 un D R [1] C ¢ ¢ ¢ C R [Cj ] . mientras (un < Vj y jRj ¸ Cj C ) un à un ¡ R [yo ] C R[Cj C i ] yo à yo C 1 Llenar K j : Allocate compartimentos de K j a todos los grupos correspondientes a las solicitudes R [yo ] ; : : : ; R [ C Cj ¡ 1]. Para cada k, · k · yo C C j ¡ 2 Lugar en K j R [k] elementos del conjunto correspondiente. Q k 0 ; j D V j ¡ . R [yo ] C ¢ ¢ ¢ C R [ C Cj ¡ 2]/ . Lugar en K j Q k 0 ; j elementos del conjunto de U k 0 correspondientes a R[ C Cj ¡ 1]. Actualización de la lista R: Retire de R los conjuntos R[ ] ; : : : ; R [ C Cj ¡ 2]. Si el conjunto U k 0 correspondientes a R[ C Cj ¡ 1] no está completamente embalado, Movimiento R[ C Cj ¡ 1] a su nuevo lugar apropiado en el clasificado lista de R.
  • 10. Quitar K j de la lista mochila. Figura 3. El procedimiento de ventana móvil. muestro a continuación que esto nunca ocurra. Una descripción formal del procedimiento de mover la ventana se da en la figura 3. Tenga en cuenta que la ventana avanza hasta que cubre Cj establece,tal eso V j > R [ ¡ 1] C ¢ ¢ ¢ C R [ C Cj ¡ 2] y V j · R [yo ] C ¢ ¢ ¢ C R[ C Cj ¡ 1] (ver figura 4). En esta etapa claramente podemos colocar en Kj todos los elementos de los conjuntos R [yo ] ; : : : ; R [ C Cj ¡ 2] y saturarK j mediante la adición de algunos de los elementos en el conjunto R [ C Cj ¡ 1]. T Él A LGORITHM A u . El algoritmo se desarrolla en las iteraciones. En la iteración th j llenamos K j por las siguientes reglas: 1. si hay menos de Cj fija, o si el subconjunto delCj conjuntos más pequeñas contiene más que V j artículos, luego llenar K j usando el procedimiento de codicioso. 2. si el subconjunto delCj conjuntos más pequeñas contiene como máximo Vj artículos, luego llenar Kj usando el procedimiento de mover la ventana. Fig. 4. La lista R. En dos versiones constreñida del problema mochila múltiples 453 Ahora mostramos que el algoritmo termina con una colocación perfecta. Podemos distinguir entre dos etapas en la ejecución de A u : 1. en la primera etapa, cada mochila Kj que está lleno contiene Cj ¡ 1 o Cj conjuntos de artículos. Esta etapa incluye algunas ejecuciones y las ejecuciones de la mudanza-windowprocedure del procedimiento de codicioso. 2. la segunda etapa comienza cuando,por primera vez, el número de conjuntos en Kj , para algunos 1 · j · N es menor que C j . Esto puede claramente ocurrirá solamente cuando los avaros se utiliza el procedimiento. Tenga en cuenta que para algunos insumos, una de las etapas no se produzca. Para cada una de las dos etapas, demostramos que cualquier mochila K j que se llena durante esta etapa contendrá exactamente V j artículos de a lo sumo C j diferentes conjuntos. Utilizamos la notación siguiente: ² C k es el número total de compartimientos que están disponibles después de k mochilas lleno. ² M k es el número de conjuntos que no son completamente empacado después k mochilas llenas de. ² N k es el número de mochilas vacías después k mochilas llenas (Nk D N ¡ k ). ² r es la relación entre capacidad, es decir, 8 j ; V j = C j D r . Ahora consideramos la primera etapa. L EMMA 3.3. cada una de las mochilasque se llenan durante la primera etapa de la unaestancia será contienen exactamente V j elementosque pertenecen a más C j diferentes conjuntos . P Techo .Mostramos las siguientes invariantes para la relación entre el número de permanecer conjuntosde , mochilas y compartimientos, durante la primera etapa. Deja Kb será la primera mochila en la segunda etapa:b puede ser cualquier número entre 1 y N. C LAIM 3.4. para cada 0 · k < b C k ¸ M k C N k ¡ 1. P Techo .La prueba es por inducción sobre k, el número de mochilas que ya estaban lleno. Base . k D 0. es dado que P N j D 1 C j ¸ M C N ¡ 1. así, usando nuestra notación, C 0 ¸ M 0 C N 0 ¡ 1. Paso de inducción . Considerar la iteración de th k, en el cual Kk se llena. 1. después de esta iteración Kk ya no está disponible, por lo tanto Ck D Ck¡1 ¡ Ck . 2. por la definición de la primera etapa,embalamos plenamente en esta iteración Ck ¡ 1 o Ck establece. Por lo tanto M k D M k ¡ 1 ¡ . C k ¡ 1 / o M k D M k ¡ 1 ¡ C k . Por lo tanto, Mk · M k ¡ 1 ¡ . C k ¡ 1/,
  • 11. es decir, M k ¡ 1 ¸ M k C C k ¡ 1 3. claramente, Nk D Nk¡1 ¡ 1. 454 H. Shachnai y T. Tamir Por la hipótesis de inducción, C k ¡ 1 ¸ M k ¡ 1 C N k ¡ 1 ¡ 1, por lo tanto C k D C k ¡ 1 ¡ C k ¸ M k ¡ 1 C N k ¡ 1 ¡ 1 ¡ C k ¸ M k C C k ¡ 1 C N k C 1 ¡ 1 ¡ C k D M k C N k ¡ 1: C LAIM 3.5. para cada 1 · k < b el tamaño promedio del conjunto cuando llenamos K k es por lo menos r . P Techo .Usando reclamo 3.4, después k ¡ 1 mochilas están llenos, el tamaño promedio del conjunto es número de elementos restantes número de conjuntos restantes ¸ potencial restante embalaje número de conjuntos restantes D r ¢ C k ¡ 1 M k ¡ 1 ¸ r ¢ . M k ¡ 1 C N k ¡ 1 ¡ 1/ M k ¡ 1 ¸ r: Recordemos que al principio P M yo D 1 j U yo j D P N j D 1 V j . Por lo tanto,en cualquier momento, el número de de artículos sin paqueteares al menos el restante potencial del embalaje. Además, Nk¡1 ¸ 1 desde en por lo menos K k sigue vacía después de k ¡ 1 mochilas llenas. Concluimos que, para todos los k < b el mayor C k establece después . k ¡ 1 / iteraciones contienen en por lo menos r ¢ C k artículos, que es igual a V k . Esto significa que si el procedimiento de ventana móvil es aplicado, el windownever llega al final del R (los más grandes juegos) sin saturar K k . Mochilas que son llenados por el procedimiento de codicioso claramente están saturados,desde los codiciosos procedimiento se aplica incluso cuando el menor C k sistemas son lo suficientemente grandes como para saturar K k . Ahora analizamos la segunda etapa del algoritmo. Tenga en cuenta que llegar a la segunda de la etapa cuando el menor C b ¡ 1 sistemas juntos contienen más de V b artículos. L EMMA 3.6. cada una de las mochilasque se llenan durante la segunda etapa de unu será contienen exactamente V j elementosque pertenecen a más C j diferentes conjuntos . P Techo .Deja Rb ser la lista al final de la primera etapa. Primero demostramos que,para todos los j ¸ b K j puede estar saturada por cualquier subconjunto de C j ¡ 1 sistemas de R b . C LAIM 3.7. al principio de la segunda etapa,para cada j ¸ b, cualquier subconjunto de Cj ¡1 conjuntoscontiene más de V j artículos . P Techo .Por definición, Kb es la primera mochila llenada en la segunda etapa. Por lo tanto menos a C b ¡ 1 sistemas se embalan en K b . Esto sólo puede sucedersi el subconjunto delCb ¡ 1 conjuntos más pequeñas contiene más de V b D r ¢ C b artículosde . Por lo tanto,el tamaño promedio de los menor C b ¡ 1 sistemas es más grande que . r ¢ C b /=. C b ¡ 1 / . Considere una mochila Kj ; j > b . Se ordenan las mochilas que C j ¸ C b , y los conjuntos se ordenan en un nondecreasing En dos versiones constreñida del problema mochila múltiples 455 orden de sus tamaños,por lo tanto,el tamaño promedio del menor C j ¡ 1 sistemas es más grande que . r ¢ C b /=. C b ¡ 1 / . Además, desde Cj ¸ Cb , r ¢ C b C b ¡ 1
  • 12. ¸ r ¢ C j C j ¡ 1 : Esto significa que el número total de elementos en el más pequeño C j ¡ 1 sistemas es más grande que . C j ¡ 1 / ¢ r ¢ C j C j ¡ 1 D r ¢ C j D V j : Claramente, si el menor C j ¡ 1 establece en R b contienen más de V j artículos, entonces cualquier C j ¡ 1 se pone en R b contienen más de V j artículos. Ahora utilizamos el reclamo 3.7 para mostrar que cualquier mochila llena después de K b contiene como máximo C j ¡ 1 diferentes sistemas y está saturado por elementos adicionales llenos desde un conjunto de R b . Por el procedimiento de relleno de codiciosos, K b se llena hasta V b artículos son embalados. El último set embalado en K b puede incluir algunos elementos más desempaquetados. La fracción de la izquierda de la división conjunto es ahora la más pequeño set en R b (desde incluso antes de la división era parte de los más pequeños juego disponible). En otras palabras, la fracción es R[1]. Ahora pasamos a llenar KbC1. Considerar el más pequeño C b C 1 conjuntosde . Estos conjuntos se componen de R[1] y adicional CbC1¡1 establece. Por Reclamación 3.7 el adicional C b C 1 ¡ 1 sistemas incluyen más de V b C 1 artículos, por lo tanto (no importa del tamaño de la fracción R[1]) el menor CbC1 conjuntos incluyen juntos más de VbC1 artículos y el procedimiento de relleno de codiciosos se utiliza: V b C 1 artículos de a lo sumo C b C 1 conjuntos se colocan en K b C 1 . Una vez más, el último conjunto podrá ser embalado sólo parcialmente. El mismo argumento sostiene hasta llegamos a una mochila K l , de tal manera que menos C l conjuntos quedan. Desde P M yo D 1 j U yo j D P N j D 1 V j al principio y desde entonces todas las mochilas antes de K l se satura,el número total de artículos sin paquetearequivale a la total dejado el volumen. Por lo tanto,podemos llenar Kl usando los codiciosos procedimientode .Este argumento sostiene para todas las mochilas restantes,hasta KN está saturado y no se quedan conjuntos. Combinando lemas 3.3 y 3.6 concluimos que cada uno de las mochilas K j ; 1· j · N se llena por exactamente V j artículos de a lo sumo C j diferentes conjuntos. Por lo tanto, el algoritmo de termina con una colocación perfecta. El algoritmo es polinomio: cada uno de los procedimientos de relleno toma O . M / pasos.Agregar la complejidad de preprocesamiento de ordenar las listas, la complejidad total del algoritmo es O . N ¢ M C N log N C M registro M /. 3.3. aproximar una colocación perfecta. Cuando las mochilas no tienen uniforme relación de capacidad, el grado de falta se mide por la mínima ® tal que, para algunos r > 0, 8 j ; r · V j C j (1) · ® ¢ r : (Cuando ® D 1 tenemos relación capacidad uniforme, en cualquier otro caso ® > 1.) En esta sección mostramos cómo se puede aproximar una colocación perfecta. La proporción de aproximación es proporcional a ®. 456 H. Shachnai y T. Tamir
  • 13. T HEOREM 3.8. deja que ® ¸ 1 es el mínimo número satisfactorio (1). Si C ¸ M C N ¡ 1, a continuación,un . 1 =®/ -colocación utilizada puede encontrarse en tiempo polinómico . P Techo .Considere la siguiente instancia, yo 0, el problema de colocación: por cada mochila K j 1 · j · N el volumen de K j en 0 es V 0 j D d r ¢ C j e . Que V0 D PN j D 1 V 0 j . Para cada conjunto, U yo el tamaño del conjunto de U yo en 0 denotada porj U 0 Yo j , se determina mediante la resolución de la problema de MAX-MIN siguiente: Maximizar min j U 0 Yo j j U yo j ; tal que X M yo D 1 j U 0 Yo j D V 0 ; j U 0 Yo (2) j integer. En primer lugar, tenga en cuenta que cualquier colocación legal de 0 induce una colocación legal por el original instancia. Esto se deduce la siguiente afirmación: C LAIM 3.9. para cada 1 · j · N V 0 j · V j . P Techo .Por cada 1 · j · N V j es un entero. Por lo tanto,para el logro de la mochila el ratio de capacidad mínima, V j D r ¢ C j D d r ¢ C j e D V 0 j . Por cada mochila Kj tales eso V j = C j > r existe algunos "> 0 tal que V j D . r C "/ ¢ C j D d . r C "/ ¢ C j ¸ e d r ¢ C j e D V 0 j . A continuación, mostramos que una colocación perfecta existe y se puede encontrar eficientemente para 0. Tenga en cuenta que las mochilas en 0 no necesariamente tienen relación capacidad uniforme, sin embargo, el falta es lo suficientemente pequeño como para demostrar que el algoritmo A u presentado en la sección 3.2 es conveniente para 0 . Seguimos la prueba del teorema 3.2 para demostrar que unaestancia llena cada mochila con exactamente V 0 j artículos de a lo sumo C j conjuntosde . Es fácil verificar que reclamos 3.4 y 3.5 mantenga para I 0 . Deja Kk ser una mochila llenada durante la primera etapa de Au. Por reclamo 3.5, la media establecer el tamaño cuando llenamos K k es por lo menos r . De hecho,V0 j puede ser mayor que r ¢ C j , sin embargo, puesto que el número de elementos que se incluyen en la ventana es un entero y desde V 0 j D d r ¢ C j e es el número entero más pequeño no menor que r ¢ C j , concluimos que cada vez que la mudanza de la ventana procedimiento es aplicado, la ventana no alcanza el final de R sin saturarK k . Asimismo, para la segunda etapa de A u Reclamo 3.7 depara 0 y concluimos que todos los
  • 14. mochilas están saturados. Por reclamo 3.9, una colocación legal en 0 es una colocación legal para la instancia original. Desde V0 ¸ . 1 =®/ V una colocación perfecta en 0 induce una colocación es decir . 1 =®/ -utilizado para el original instancia . R EMARK 3.1. para resolver el CMKP, cualquier opción de establecer tamaños que satisface, 8; j U 0 Yo j · j U yo j y P M yo D 1 j U 0 Yo j D V 0 se puede aplicar aquí. La solución de (2) también resuelve eficientemente la FPP: para cada sistema U yo , j U 0 Yo ¸ j . 1 =®/ j U yo ¡ j! 1. Con el fin de lograr una buena aproximación que nos gustaría tener ® lo más cerca posible 1. En la sección 5 se muestra que los compartimentos se pueden mover entre las mochilas, entonces ® D C k =. C k ¡ 1 / , donde K k es la mochila con la capacidad máxima relación. Este modelo es relevante para subsistemas de almacenamiento MOD, en la cual pueden serrecursos de almacenamiento se movió entre los discos. En dos versiones constreñida del problema mochila múltiples 457 4. algoritmo de aproximación para el CMKP. En esta sección presentamos una aproximación dual algoritmo de theCMKP. Específicamente, nosotros demostrares suficiente con añadir uno compartimiento para cada mochila, con el fin de eliminar la brecha entre el rendimiento de un óptimo, algoritmo de tiempo probablemente exponencial y un algoritmo de tiempo polinomial. Hay que recordar que un algoritmo de aproximación dual se encuentra una solución factible que es superoptimal. Su rendimiento se mide por el grado de inviabilidad permitido. La propuesta algoritmo está permitido publicar artículos de C j C 1 (en lugar de Cj ) diferentes conjuntos en K j 1 · j · N . T HEOREM 4.1. dado una instancia de la CMKP, mediante la adición de un solo compartimiento para cada mochila podemosencontraruna colocación en tiempo polinómico,cuya utilización es menos la máxima utilización posible para I . P Techo .Sea una instancia de la CMKP. Denotar porC generada a partir de la instancia mediante la adición de un compartimiento para cada mochila. Presentamos un algoritmo de tiempo polinomial que encuentra una colocación legal en C . El algoritmo, denotado por unr procede por relleno K j a lo sumo V j artículos de a lo sumo C j C 1 diferentes sistemas, 8 1 · j · N . El número total de artículos llenos de C por A r es el número total de artículos llenos de por lo menos un algoritmo óptimo. Como en el caso de uniforme-cociente (sección 3.2), suponemos que los conjuntos de elementos se dan en orden nondecreasing de sus tamaños,es decir, los conjuntos de satisfacer j U 1 j j · U 2 j · ¢ ¢ ¢ j · U M j. Mantenemos los sets restantes en una lista ordenada,denotada por R, que se actualiza durante la algoritmo. Este algoritmo también utiliza los dos procedimientos de mochila-relleno: relleno de codiciosos y mover la ventana introducido en la sección 3.2. Sin embargo, el procedimiento de ventana móvil ha cambiado un poco: ahora la ventana cubre C j C 1 Series (en vez de Cj ). Además, si el subconjunto de la C j C 1 sistemas más grande incluye menos de V j artículos, entonces nosotros no podemos saturar K j , y hacemos lo mejor que podamos: llenamos K j con estos C j C 1 Series (en el uniforme-ratio caso esto nunca sucede). Las mochilas se dan en un orden nonincreasing por su relación de capacidad,es decir, V 1 = C 1¸ V 2 = C 2 ¸ ¢ ¢ ¢ ¸ V N = C N . Las mochilas ordenados se mantienen en una lista que se denota por L0. Otro lista de mochilas, denotado por L 00 , pueden crearse durante la ejecución del algoritmo de.
  • 15. T Él A LGORITHM A r . En general, el algoritmo utiliza el procedimiento de mover la ventana a llenar la mochila según su orden en L 0 es decir, en la iteración th j llenamos K j y quitarlo de L 0. Tenga en cuenta que el procedimiento de mover la ventana coloca en K j artículos de exactamente C j C conjuntos de 1. A veces no es posible embalar desde esa cantidad de conjuntos (véase abajo): de tal casos nos movemos K j a L 00 o buscarotra mochila para que la mudanza de la ventana procedimiento puede seraplicado. Mochilas que se mueven de L0 a L00 están llenos con el procedimiento codicioso, después de L 0 está vacía. Se utilizan las siguientes reglas cuando A r examina K j 2 L 0. ² Si K j D; , es decir, L 0 es vaciar, llenar secuencialmente todas las mochilas en L 00 usando el greedyfilling procedimiento. ² Si hay menos de C j C 1 establece en R, mover K j hasta el final de L 00. 458 h Shachnai y T. Tamir ² Si el subconjunto delC j sistemas más pequeños en R contiene como máximo V j artículos, llenar K j con artículos de C j C 1 diferentes conjuntos,utilizando el procedimiento de ventana móvil. ² Si el subconjunto delC j sistemas más pequeños en R contiene más de V j Buscar artículos, la primera mochila K k 2 L 0 para el cual el subconjunto delmenor C k incluye conjuntos a lo sumo V k artículos de . Si existe tal una mochila, llenar Kk usando el procedimiento de ventana en movimiento; K j será examinado nuevamente en la siguiente iteración. Si no hay ninguna tal mochila en L 0 llenamos secuencialmente todas las mochilas en L 0 y L 00 usando el codicioso-relleno procedimiento. Optimalidad . Denotar por G D fKg1 ; K g 2 ; : : : ; K g n g el conjunto de mochilas que no son saturado por A r y denotan porw 1 w; 2 ;:::; w n la resultante pérdida de volumen en cada uno mochila no saturado,es decir, el volumen de K g yo es completamente no explotados y único V g yo ¡ w yo los artículos se colocan en K g yo . Demostramos que no hay ninguna colocación legal de que el utilización total excede P N j D 1 V j ¡ w 1 C w 2 C ¢ ¢ ¢ C w n / . Para probar esto, podemos distinguir entre las cuatro etapas de A r : 1. mochilas de L0 son llenados por su orden en L0usando traslado-windowprocedure; algunas de las mochilas pueden ser movidos a L 00. 2. mochilas de L0 se llenan mediante el movimiento-windowprocedure, pero no necesariamente según su orden en L 0 algunas de las mochilas pueden ser movidos a L 00. 3. mochilas de L0 están llenas, utilizando el procedimiento de relleno de codiciosos (cuando no hay mochila de L 0 puede ser llenado por el procedimiento de mover la ventana). 4. mochilas de L00 se llenan mediante el procedimiento de relleno de codiciosos (cuando L0 está vacía). Para las dos primeras etapas se muestra que la pérdida total de volumen i C es en la mayoría de los pérdida de volumen en una colocación óptima de . Para las dos últimas etapas se muestra que No hay ningún residuo, y todas las mochilas llenados durante estas etapas están saturados. Para simplicidad, se asume que cada vez que se ejecuta el procedimiento de mover la ventana,la lista de R es escaneada de izquierda a derecha, es decir, el conjunto más pequeño, R[1], es el conjunto de la izquierda y el conjunto más grande es el de la derecha en R. Durante la ejecución del procedimiento de mover la ventana, la ventana se mueve de izquierda a derecha. Hay dos escenarios posibles: 1. Saturating: en el cual Kj está saturado,lo que significa que existe algún i , que es el Índice de R del conjunto más pequeño en la ventana,de tal forma que
  • 16. (i) ( > 1 y Vj > R[ ¡ 1] C ¢ ¢ ¢ C R[ C Cj ¡ 1]) o ( D 1 y Vj > R [1] C ¢ ¢ ¢ C R [Cj ]); (ii) Vj · R [yo ] C ¢ ¢ ¢ C R [ C Cj ]. En esta etapa, claramente podemos colocar en K j el C j establece R[ ] ; : : : ; R [ C Cj ¡ 1], y saturar K j mediante la adición de algunos de los artículos de R[CCj ]. Los conjuntos de R[ ]; : : : ; R [CCj¡1] se extraen R, y la fracción de la izquierda de la set R[CCj ] éstesemueve a su actualizado lugar en la lista R. Tenga en cuenta que desde algunos de los elementos de este conjunto se embalan, la posición de eso fracción en R queda a su posición original. 2. Nonsaturating: en que la ventana alcanza la posición más a la derecha en R, pero la subconjunto delC j C 1 sistemas más grande cubierto por la ventana contiene menos de V j artículos. Todos los elementos de los conjuntos de R[ ] ; : : : ; R [ C Cj ] estén embaladas, y se eliminan estos conjuntos de R. En dos versiones constreñida del problema mochila múltiples 459 En ambos casos,podemos considerar la secuencia quitada de conjuntos como un agujero en R. En un saturar la ejecución, K j crea un agujero de C j establece en Ry un conjunto adicional (el fraccióna la izquierda de la última serie) se mueve la izquierda del agujero. En una ejecución nonsaturating, Kj crea un agujero de C j C 1 establece en R. Examinamos la secuencia de los agujeros creados durante la primera etapa del algoritmo en R . Primero mostramos que cada mochila nonsaturated crea,en el extremo derecho del R, un agujero que es la Unión de todos los agujeros en R. C LAIM 4.2. todoslos Kgj 2 G llena durante la primera etapa de A r une los orificios existentes en R en un solo agujero ubicado en el extremo derecho del R. P Techo .La prueba es por inducción en j , el índice de Kgj en G. Base . K g 1 es la primera mochila nonsaturated en la ejecución de A r . Las mochilas son ordenados en orden nonincreasing por sus relaciones de capacidad. Por lo tanto, para todos los k < g1la promedio del número de elementos de cada conjunto embalado en K k es más grande que el promedio de elementos de cada conjunto embalado en K g 1 . En particular, el conjunto más grande en el agujero creado por K k es más grande que el conjunto más pequeño en el agujero creado por K g 1 . Por lo tanto,el agujero creado por Kg1 comienza a la izquierda del agujero creado por K k . Además, desde Kg1 no se satura,el agujero se crea incluye el mayor C g 1 C 1 juegos disponibles y en particular el que más a la derecha. Por lo tanto une todos los agujeros que fueron creados por mochilas previamente llenados en un agujero. Paso de inducción . Deja Kgj serla mochila nonsaturated de th j llenada durante la primera etapa del algoritmo A r . Por la hipótesis de inducción, Kgj¡1 une todos los agujeros creados por K 1 ; K 2 ; : : : ; K g j ¡ 1 . En otras palabras, Kgj¡1 R de divide en dos partes: el agujero de la derecha y el restante se establece en la izquierda. Las mochilas se ordenan en orden nonincreasing sus relaciones de capacidad. Por lo tanto, al igual que en el caso base,por cada gj¡1 < k < gj la media número de elementos de cada conjunto colocado en K k es más grande que el número promedio de elementos en cada sistema embaló en K g j por lo tanto el agujero creado por K g j comienza a la izquierda del agujero creado por K k . Puesto que también incluye el conjunto más grande disponible, une los agujeros creados por K g j ¡ 1 C 1 ; : : : ; K g j ¡ 1 y el agujero en la parte derecha creado por K 1 ; : : : ; K g j ¡ 1 en un agujero. La forma que se crean los agujeros implica A r es óptimo para las mochilas llenados durante la primera etapa: L EMMA 4.3. Deja Kj llenarán la última mochila por unr durante la primera etapa a continuación,el
  • 17. número total de elementoscolocadosen K 1 ; : : : ; K j es por lo menos el número de objetos que se coloquen en K 1 ; : : : ; K j bajo un algoritmo óptimo para la instancia . P Techo .Deja Kgj serla última nonsaturated mochila llenada durante la primera etapa. El mochilas que se llenan después de K g j están saturados.Por lo tanto,es suficiente probar que el lema sostiene para K 1 ; : : : ; K g j . Por reclamo 4.2, el agujero creado por Kgj une todos los agujeros creado por K 1 ; : : : ; K g j . Para todos los k · g j el agujero creado por K k se compone de C k o C k C 1 conjuntos,por lo tanto el agujero combinado consiste en por lo menos el más grande C 1 C C 2 C ¢ ¢ ¢ C C g j establece. El tamaño total del agujero es el tamaño total de conjuntos indivisa en K 1 ; : : : ; K g j que es a lo sumo V 1 C V 2 C ¢ ¢ ¢ C V g j ¡ w 1 C w 2 C ¢ ¢ ¢ C w j / . Concluimos que la suma de H. 460 Shachnai y T. Tamir el mayor C 1 C C 2 C ¢ ¢ ¢ C C g j conjuntos es a lo sumo V 1 C V 2 C ¢ ¢ ¢ C V g j ¡ w 1 C w 2 C ¢ ¢ ¢ C w j / , lo que significa que ningún algoritmo, y en particular una óptima, puede colocar más de V 1 C V 2 C ¢ ¢ ¢ C V g j ¡ w 1 C w 2 C ¢ ¢ ¢ C w j / elementos de K 1 ; : : : ; K g j . Tenga en cuenta que las fracciones de conjuntos que fueron creados por K 1 ; : : : ; K g j ¡ 1 no debería molestarnos: Si una fracción de un conjunto más tarde esta lleno, significa que está contenido el tamaño original de ese set en el agujero Unido. Si la fracción no está lleno, entonces el número total de elementos lleno por A r es en realidad mayor que V 1 C V 2 C ¢ ¢ ¢ C V g j ¡ w 1 C w 2 C ¢ ¢ ¢ C w j / lo que significa que K 1 ; : : : ; K g j no puede ser llenado mejor incluso por más que el más grande C 1 C C 2 C ¢ ¢ ¢ C C g j establece. Recordar que durante la primera etapa se puedan mover mochilas de L 0 a L 00 . Estos mochilas se llenará durante la cuarta etapa, y la primera etapa continúa. El primero etapa continúa hasta que encontramos una mochila K k , para lo cual el subconjunto del C k conjuntos más pequeños contiene más de V k artículos. Ahora probamos la optimalidad de la segunda etapa. La prueba es similar a la prueba para la primera etapa. Mostramos que los agujeros creados durante la segunda etapa están Unidos Cuando una mochila no está saturada; Entonces concluimos que la colocación es óptima. Primero demostrar que los agujeros crean durante la segunda etapa siempre "se extendió a la izquierda"en R. C LAIM 4.4. Deja Kk1 y Kk2 serdos mochilas que están llenos de iteraciones sucesivas durante la segunda etapa entoncesel agujero creado por K k 2 comienza a la izquierda del agujero creado por K k 1. P Techo .Consideramos dos casos porseparado: 1. k1 < k2,lo que significa que la relación entre capacidad Kk1 es mayor que el cociente de la capacidad de K k 2 . En este caso, al igual que en la primera etapa, es evidente que el agujero creado por Kk2 comienza a la izquierda del agujero creado por K k 1. 2. k > 1 k2.El algoritmo, cuando examinamos Kk2 el subconjunto delCk2 conjuntos más pequeños contiene más de V k 2 artículos y el relleno de K k 2 se retrasó. Puesto que finalmente llenamos K k 2 durante la segunda etapa,se utilizan nuevos pequeños conjuntos. Estos pequeños conjuntos son fracciones creado por mochilas saturados después de K k 2 fue rechazada. Puesto que examinamos Kk2 otra vez después de cada iteración y finalmente se llena después de K k 1 significa que una fracción
  • 18. creado por K k 1 se utiliza. Recordemos que, para ¸ 1, cualquier resto de un conjunto que vuelve a R al final de la iteración será colocado izquierda del orificio creado en R durante este iteración. Por lo tanto el agujero creado por Kk2 comienza a la izquierda del agujero creado por Kk1. Ahora llegamos a la conclusión que nonsaturated mochilas para unirían los agujeros R. C LAIM 4.5. cada Kgj 2 G llena durante la segunda etapa de A r une los agujeros R en un solo agujero ; este agujero forma del extremo derecho del R. P Techo .La prueba es por inducción en j , el índice de Kgj en G. Seguimos los pasos de la prueba de reclamación 4.2. De hecho, no podemos asumir que las mochilas están llenos un nonincreasing orden de su proporción de capacidad. Sin embargo, por reclamar 4.4, si Kgj está lleno después de K k entonces el agujero crea comienza izquierdo del agujero creado por K k y puesto que también En dos versiones constreñida del problema mochila múltiples 461 incluye el conjunto de la derecha disponible, une todos los agujeros creados por K k ; : : : ; K g j , y la inducción en la prueba de reclamación 4.2 puede ser aplicada. Al igual que en la prueba de optimalidad para la primera etapa, llegamos a la conclusión de la manera en los agujeros se crean, que la colocación es óptima. C OROLLARY 4.6. Deja Kj llenarán la última mochila porunr durante la segunda etapa luego el número total de artículosenvasados en K 1 ; : : : ; K j es por lo menos el número de artículos llenos en K 1 ; : : : ; K j bajo un algoritmo óptimo para la instancia original . Para la primera y segunda etapas hemos demostrado que el volumen total desperdiciado en mochilas llena durante estas etapas no supera la pérdida de volumen en estas mochilas bajo una colocación óptima para . Completamos la prueba de optimalidad mostrando que todas las mochilas que se llenan durante la tercera y las cuarta etapas de A r son saturado. L EMMA 4.7. cada una de las mochilasque se llenan durante la tercera etapa del unr será contienen exactamente V j artículos que pertenecen a más de C j C diferentes conjuntosde 1. P Techo .La tercera fase consiste en sucesivas ejecuciones del procedimiento de relleno de codiciosos. A r llega a la tercera etapa if, por cada mochila K j 2 L 0 el subconjunto de la C j conjuntos más pequeñas contiene más de V j artículosde . Claramente, si el Cj conjuntos más pequeños son demasiado grandes, entonces cualquier C j sistemas son demasiado grandes para K j . Mostramos que el algoritmo voraz no utiliza nunca más a C j C 1 establece para llenar K j : Deja K c llenar la mochila primera en la tercera etapa. Claramente, a lo sumo Cc se utilizan conjuntos de. El último conjunto de que elementos se embalan en K c puede partirse. La fracción que queda es Ahora el conjunto más pequeño (desde incluso antes de la división era parte de la más pequeña disponible juego). En otras palabras, la fracción es R[1]. Ahora pasamos a llenar KcC1. Considerar el subconjunto de la C c C 1 C conjuntosde 1 más pequeño. Se compone de R[1] y adicional CcC1 establece.El subconjunto del adicional C c C 1 conjuntos incluye más de V c C 1 artículos, por lo tanto,pase lo que pase el tamaño de la fracción R[1], el menor C c C 1 C 1 conjuntos incluyen juntos más de V c C 1 artículos y nosotros podemos embalar en K c C 1 exactamente V c C 1 artículos de a lo sumo C c C 1 C conjuntos de 1. Una vez más, el último conjunto puede partirse. El mismo argumento sostiene para todas las mochilas que permanecen en L 0 . Es decir, cada mochila Kj contendrá exactamente Vj elementos que pertenecen a lo más C j C conjuntos de 1. L EMMA 4.8. cada una de las mochilasllenados durante la cuarta etapa del unr contendrá exactamente V j elementos que pertenecen a más C j C diferentes conjuntosde 1. P Techo .En la cuarta etapa llenamos las mochilas en L00. Recordemos que una mochila Kj se traslada a L 00 si hay menos de C j C 1 disponible establece en el momento en que se examina
  • 19. por A r . Puesto que no agregamos juegos a lo largo de la ejecución del algoritmo, claramente hay menos de C j C 1 disponible establece cuando llenamos K j en la cuarta etapa, usando el procedimiento de codicioso. Para lograr que las mochilas están saturadas,tenga en cuenta que al principio P M yo D 1 j U yo j D P N j D 1 V j es decir, el número total de elementos es igual 462 H. Shachnai y T. Tamir para el volumen total disponible. Puesto que ninguna mochila es llenada por más Vj artículos, la suma de los tamaños de los sets restantes siempre excede el total restante volumen. Combinando corolario 4.6 con lemas 4,7 y 4,8 concluimos que el total cantidad de volumen perdido para la instancia C no exceda la cantidad total de desperdicio volumen bajo una colocación óptima de . En particular, si existe una colocación perfecta yo , entonces nuestro algoritmo encuentra una colocación perfecta de C. El algoritmo es polinomio: cada procedimiento de relleno tiene complejidad O . M / . En el peor de los casos (durante la segunda etapa)toma O . M ¢ N / pasos para elegir el próxima mochila para ser llenado. Por lo tanto la complejidad total del unr es. M 2 ¢ N 2/. El esquema de doble aproximación rinde el siguiente algoritmo de aproximación para el CMKP: 1. encontrar una solución óptima, suponiendo que Cj D Cj C 1; 8 1 · j · N . Deja que 0 ; Q 0 ser el indicador resultante y las matrices de cantidad. 2. deja que D I 0 ; Q D Q 0. 3. por cada mochila Kj ; j D 1 ; : : : ; N : si P yo Q yo ; j D C j C 1 (es decir, CjCcompartimentos 1 se utilizan), deje Us ser el juego de que la cantidad colocada en Kj es mínima, es decir, Q s ; j D min 1 · yo · M Q yo ; j > 0, entonces Q s ; j D 0. En otras palabras, giramos la colocación inviable en una factible, utilizando sólo la C j máximo compartimentos en cada mochila. Tenga en cuenta que esta manera omitimos desde el subconjunto de empacado elementos como máximo V j =. C j C 1 / artículos. C OROLLARY 4.9. dado una instancia de la CMKP, dejar Uoptar por obtener la utilización por una colocación óptima de los elementos entonces podemos encontrar en O . M 2 ¢ N 2 / pasos de una colocación que alcanza la utilización U D U OPT ¡ " para " D P N j D 1 . V j =. C j C 1//. En particular, si la cantidad de compartimentos en cada mochila es menos b, para algunos b ¸ 1, es decir, C j ¸ b para todos 1 · j · N , entonces el algoritmo de aproximación anterior alcanza la utilización . 1 ¡ ®/ U OPT para ® D 1 =. b C 1/. 5. aplicación a sistemas MOD. En esta sección mostramos cómo nuestros resultados para el CMKP y el FPP se aplican a la administración del almacenamiento en sistemas multimedia. Considerar un sistema tiene N discos:es la capacidad de almacenamiento de disco j de C j , y su capacidad de carga es L j , 1 · j · N . La base de datos asociado con el sistema MOD contiene programa video M archivos f f 1 ; : : : ; f M g , con las correspondientes popularities f p 1 ; : : : ; p M g . La popularidad parámetro de f yo refleja la porción de la carga total generada debido a las peticiones de acceso a f yo . Conociendo a estos popularities y la capacidad de carga total del sistema, podemos Determine la carga promedio generada por cada uno de los archivos.
  • 20. Como se mencionó en la sección 1.2, puede formularse el problema de asignación de archivos en discos como ejemplo de los problemas de embalaje, con los discos representados pormochilas, y t P él archivos por conjuntos de artículos. Los popularities de los archivos de determinan los tamaños de conjunto,tal que M yo D 1 j U yo j D P N j D 1 L j . Cuando nuestro objetivo es maximizar la utilización, que debemos resolver En dos versiones constreñida del problema mochila múltiples 463 el CMKP; Cuando el objetivo es maximizar la imparcialidad, que debemos resolver la FPP. Una solución para cualquiera de nuestras dos variantes de la mochila problemas inducirá una asignación estática legal. En cuanto a las matrices y Q: ² Yo yo ; j D 1 iff una copia de los archivos se almacena en el disco j . ² Q yo ; j 2 f 0 ; 1 ; : : : ; L j g es la carga total de ese archivo puede crear en el disco j . Por lo tanto,nuestros resultados en la sección 3 rendimiento algoritmos eficientes para encontrar un trabajo perfecto de los archivos de los discos,en el cual la capacidad de carga del sistema es totalmente utilizada, y el pide a cada uno de los archivos puede ser satisfecha. 5.1. aproximación relación capacidad uniforme.Ahora consideramos una ligeramente diferente modelo, en el cual el subsistema de almacenamiento consiste en arreglos de discos de N, D 1 ; : : : ; D N : D j ha una capacidad fija, L j , y, además, hay un límite en el número total de, C, unidades de almacenamiento que pueden distribuirse en los arreglos de discos. Nos gustaría encontraruna asignación de las unidades de almacenamiento para los arreglos de discos. Es decir, para cualquier 1 · j · N tenemos que determinar C j la capacidad de almacenamiento de D j tal que P N j D 1 C j D C . Este modelo refleja la situación en el cual varios arreglos de discos se utilizan para almacenar los archivos. La capacidad de almacenamiento de una arreglo de discos es la suma de las capacidades de almacenamiento de los discos individuales. Por lo tanto,el almacenamiento capacidad de un arreglo de discos (con una capacidad de carga fija) puede variar, dependiendo del almacenamiento capacidades de los discos que componen la matriz. Mostramos debajo de eso,en tal sistema, el capacidad total de almacenamiento puede distribuirse entre los arreglos de discos,con el fin de lograr una relación entre la capacidad casi uniforme. Esto nos permite encontrarun trabajo casi perfecto de los archivos de los discos. Deje que L D P N j D 1 L j la capacidad de carga total del sistema. De hecho,es fácil determinar la capacidad de almacenamiento de cada arreglo de discos con el fin de obtener una "capacidad uniforme ratio ": en particular, podemos elegir C j D C ¢ L j = L . Esto produce una relación capacidad uniforme con r D L = C . Sin embargo, desde entonces requerimos que cada arreglo de discos tiene un número integral de archivos, tenemos que ronda el C j de una manera que minimiza la violación de la uniformidad. Formalmente, que debemos resolver el siguiente problema de programación de enteros: Minimizar ® D máximo 1 · j · N . L j = C j / min 1 · j · N . L j = C j / tal que X N j D 1 C j (3) D C; C j integer.
  • 21. Este problema puede ser resuelto de forma óptima en O . N log N C N registroC / pasos,utilizando, por ejemplo, el algoritmo "SOLVE-FAIR" (véase el capítulo 6 de [14]). La solución proporciona una asignación de las unidades de almacenamiento de los discos tales que, para algunos r > 0, 8 j ; r · L j C j (4) · ® ¢ r ; y ® se reduce al mínimo. Por teorema 3.8 tenemos: C OROLLARY 5.1. si los contenedorespueden ser distribuidos entre los discos, un . 1 =®/ -utilizados asignación se encuentran en O . N ¢ M C N log N C N registroC / pasos donde ® es el valor de la solución óptima de (3). 464 H. Shachnai y T. Tamir Observar que ® es pequeña (es decir, cercano a 1), tenga en cuenta que, en cualquier solución óptima de (3), la relación de capacidad de D j satisface ¹ L C º · L j C j · » L C ¼ ; 8 1 · j · N : Esto inmediatamente rendimientos un límite de 2 ® . Más exactamente, ® · dL=Ce=bL=Cc: 5.2. lograr una utilización casi óptima.En la sección 4 se presenta una aproximación dual algoritmo para el CMKP. En términos de sistemas MOD, significa que podemos lograr la utilización óptima de un sistema mediante la adición de una unidad de almacenamiento en cada dis co. En efecto, para un sistema determinado de MOD, tales cambios en la configuración pueden serimposibles, sin embargo, nos puede utilizar el algoritmo de aproximación derivado de algoritmo A r y el resultado en corolario 4.9. esto implica que si cada uno de los discos puede almacenar al menos archivos b , para algunos b ¸ 1, es decir, C j ¸ b para todos 1 · j · N entonces el algoritmo de aproximación anterior alcanza utilización . 1 ¡ ®/ U OPT , con ® D 1 =. b C 1/. 6. discusión. Hemos estudiado dos variantes del problema de la mochila, a saber, el CMKP y el FPP. Hemos demostrado que ambos problemas son NP-hard; para algunos casos existe un algoritmo óptimo tiempo polinómicas. También hemos propuesto un algoritmo de aproximación para el CMKP. Por último, hemos mostrado cómo nuestros resultados para el CMKP y el FPP puede ser utilizado para la asignación eficiente de los recursos en subsistemas de almacenamiento multimedia. Nuestro papel deja abiertas varias vías interesantes para la labor futura: ² Para el caso especial donde M D 1, tanto el CMKP y el FPP son fáciles de resolver. En contraste,ambos problemas son difíciles de resolver, ya para el caso donde M D 2, si cada mochila tiene un solo compartimiento. Es interesante para investigar más a fondo cómo la cociente entre M, el número de clases de artículos y la cantidad de compartimentos en el Mochilas nos permite encontrar una solución óptima para cada uno de los problemas eficientemente. A lo largo de estas líneas,es posible formular versiones más débiles de las condiciones dado en la sección 3.1. ² Presentamos un . 1 ¡ ®/ -algoritmo de aproximación para el CMKP, donde ® depende en la entrada, es decir, el cociente de la capacidad de las mochilas. Puede ser el CMKP (FPP) aproximada a un factor 1 ¡ " , para cualquier "> 0, utilizando un polinomio (totalmente)
  • 22. ¿esquema de aproximación? ² Consideramos el caso donde s . u / D w. u / para cualquier u 2 U . Una extensión natural de tanto el CMKP y el FPP permitiría Artículos de diferentes tipos para tener diferentes tamaños y pesos diferentes. ² Hemos demostrado la aplicación de la CMKP y el FPP para el problema de la asignación archivos a discos en subsistemas de almacenamiento multimedia. Una suposición subyacente en la problema de la asignación fue que la configuración de hardware es fijo, y nuestro objetivo es hacer el mejor uso de esta configuración, en términos de utilización y la equidad. En la doble problema de configuración del sistema nuestro objetivo es lograr una cierta calidad de servicio, y nos permite cambiar la configuración de hardware. Concretamente, dado un conjunto de archivos, nos gustaría determinar el número de discos que deben usarse para almacenar y difusión de estos archivos; los discos pueden ser de varios tipos diferentes, donde cada En dos versiones constreñida del problema mochila múltiples 465 tipo se caracteriza por la capacidad de almacenamiento y carga específica y un costo fijo. Esto le da subida a la siguiente versión del problema bin-embalaje fraccional con restricciones de clase: Supongamos que tenemos un conjunto U de j U j D M elementos, cada elemento u 2 U tiene un tamaño s . u / 2 Z C. Podemos embalar los artículos en U (que permite dividir los artículos)en una colección de contenedores que pueden ser de varios tipos diferentes. Un contenedorde tipo j tiene volumen Vj ; puede contenerCj ¸ 1 artículos y su costo es F j . Nuestro objetivo es para embalar todos los elementos de un conjunto de contenedores a un costo mínimo de. ² El CMKP y el FPP pueden aplicarse para la asignación estática de archivos en los discos. Asignación estática es sólo el primer componente de un esquema de asignación de recursos MOD, en el cual se define el estado inicial del sistema. Luego es seguido por una dinámica fase , en que las peticiones del cliente al llegar al sistema necesita ser reparado. Durante la fase dinámica, pueden cambiar las popularities de los varios archivos. Tales cambios son naturales, por ejemplo, cuando se trata con datos de vídeo disponibles en los sitios de la world-wide-web. En respuesta,el sistema MOD debe apoyaroperaciones tales como supresiones de archivo o repeticiones, además de reasignaciones de la carga. Esto introduce una versión en línea de cada uno de nuestros problemas de embalaje, donde los tamaños de los conjuntos que nos gustaría paquete puede cambiar dinámicamente, y tenemos que actualizar la colocación en consecuencia. El transición de la colocación de uno a otro debe hacerse con el número mínimo de reasignaciones de artículos a los compartimientos. Agradecimientos. Nos gustaría dar las gracias a los revisores, para proporcionar muchos útiles Comentarios y sugerencias. Apéndice. En este apéndice se muestra la validez de los resultados para las instancias generales de la CMKP y la FPP, en el cual no es necesariamente igual al número total de elementos a la suma de los volúmenes de las mochilas, a saber, j U j 6 D V . Tenga en cuenta que las definiciones de utilización y la equidad,como se indica en las secciones 2.1 y 2.2, no dependen de la relación entre j U j y V. Sin embargo, esta proporción, influye en la definición de una colocación perfecta. Cuando j U j 6 D V la máxima utilización posible es min . j U j ; V / . Cuando el objetivo es maximizar la imparcialidad, una colocación óptima es min . 1 ; V = j U j / -Feria de. 4 Para un caso general, una colocación es perfecto si es óptimo con respecto a la utilización, así como la equidad. Formalmente, D Definición A.1.A una colocación perfecta es una colocación es min. 1 ; V = j U j / -justo, en ¿Cuál de las siguientes está satisfecho:(i) todos los elementos estén embalados, o (ii) todas las mochilas están llenos. Ahora discutimos, que tienen todos los resultados presentados en la sección 3 para entradas generales: ² Si V > j U j luego añadir un juego simulado de tamaño V ¡ j U j para obtener una instancia en la cual V D j U j . Después de colocar los elementos en las mochilas, desconsiderarel "muñeco". 4 Técnicas de redondeoestándar [14] pueden aplicarse aquí para determinarel número exacto de productos a envasar de cada tipo. 466 H. Shachnai y T. Tamir
  • 23. ² Si V < j U j es una colocación perfecta . V = j U j / -feria. Para cada sistema , determinar jU ¤ Yo j D . V = j U j / j U yo j (redondeado a números enteros, tal que P Yo j U ¤ Yo j D V / . La resultante ejemplo U ¤ satisface j U ¤ j D V . Todos los algoritmos presentados en la sección 3 se pueden aplicar a los casos ajustados arriba, para producir la perfecta colocación de las instancias originales. Puesta a punto especial es necesaria en la prueba del teorema 3.1: cuando V > j U j , no puede cumplir con el conjunto maniquí añadido el condición j U yo ¸ j ." ¢ j U j /= M . Para solucionar este problema potencial, el algoritmo tiene que considerar el muñeco primero: nota que uno está permitido (arbitrariamente pequeña) parte de un conjunto en cada mochila, por lo tanto, el conjunto de muñeco puede servir como la fracción colocada en el primer mochila. Nuestros resultados en la sección 4 también sostienen para entradas generales, a saber, las declaraciones del teorema 4.1 y corolario 4.9 siguen siendo válidas. De hecho, el algoritmo de unar utilizado en la prueba de Teorema 4.1, puede ser aplicado para cualquier instancia de la CMKP. Es suficiente demostrar la validez de corolario 4.6 y lemas 4.3, 4.7 y 4.8. Primero Observe que sólo la prueba de Lema 4.8 asume que j U j D V . Ahora mostramos cómo puede ser la prueba de este lema modificado para argumentar que todas las mochilas llenados durante la cuarta etapa están "saturados", también al j U j 6 D V . Consideramos dos casos porseparado: (i) si jUj > V, entonces como en el caso donde jUj D Vla suma de los tamaños de las restantes conjuntos siempre excede el total restante volumen. (ii) si V > jUjentonces todas las mochilas llenados durante la cuarta etapa se saturan hasta R está vacío, o hasta que las mochilas están llenos. Si R está vacía (no hay peticiones queden),se significa que empacamos todos los elementos de la U, que es claramente óptima. Si corremos hacia fuera de mochilas, entonces,como en el caso donde j U ¸ j V significa que todas las mochilas en esta etapa están saturados. Por lo tanto,es inevitable la única pérdida de volumen w D w 1 C w 2 C ¢ ¢ ¢ C w n (de las dos primeras etapas). En ambos casos la utilización alcanzada por A r al menos es la máxima utilización posible para la instancia original, . Referencias [1] C. Aggarwal, J. Lobo y P. S. Yu, en Caballito óptima combinar políticas para DISH sistemas, en Los procedimientos de Sigmetrics, 1996, págs. 200-209. [2] S. Berson, S. Ghandeharizadeh, R. Muntz y X. Ju, tambaleóstripingen informaciónmultimedia sistemas, Procedimientos de SIGMOD,1994, págs. 79-90. [3] A.K. Chandra,D.S. Hirschbergy C.K.Wong, algoritmos aproximados por una mochila generalizada problemas, teórico. Comput. SCI., 3 (1976), 293-304. [4] Chen p., E. Lee, G. Gibson, R. Katz y D. Patterson, RAID: altorendimiento, secundariaconfiable almacenamiento, ACM Comput. Encuestas, 26(2)(1994), 145-185. [5] T. Corman, LeisersonC. y R. Rivest, Introduccióna los algoritmos, MIT Press, Cambridge, MA, 1990. [6] M.R. Garey y D.S. Johnson, computadoras e ingobernable:Guía a la teoría de NP-completo. Freeman, San Francisco, CA, 1979. [7] G.V. Gens y E.V. Levner, complejidadcomputacional de algoritmos de aproximaciónde combinatoria problemas, en actas de la 8thInternational Symposium on MathematicalFoundations de informática Ciencia , Lecture Notes in ComputerScience, Vol. 74,Springer-Verlag, Berlín, 1979, págs. 292 – 300. En dos versiones constreñida del problema mochila múltiples 467 Piggybackingadaptativa L. Golubchik,J.C.SLui y R.R. Muntz, [8]: una técnica novedosa para compartir datos en servidores de almacenamientode video onDemand, ACM Multimediasistemas J., 4(3) (1996), 140-155. [9] R.L. Graham, límites para ciertas anomalías multiproceso, Técnicode sistemas Bell. J.,45 (1966),1563– 1581. [10] R.L. Graham, límites sobre anomalías de sincronizaciónmultiprocesador, SIAM J. Appl.Matemáticas., 17(1969), 263-269. [11] R.L. Graham, E.L.Lawler, J.K. Lenstray Kan A.H.G. Rinnooy, optimizacióny aproximaciónen determinista de secuenciacióny programación: una encuesta, Ann. Matemáticas discretas., 5 (1979), 287-326.
  • 24. [12] D.S. Hochbaum, aproximación algoritmos paraproblemas NP-Hard, PWS, Boston, MA,1995. [13] D.S. Hochbaum y D.B. Shmoys,mediantealgoritmos de aproximación dual para la programaciónde problemas: resultados teóricos y prácticos, J. Assoc. Comput. Mach.,34(1)(1987), 144-162. [14] T. Ibaraki y N. Katoh, problemas deasignaciónde recursos - métodos algorítmicos, el MIT Press, Cambridge, MA, 1988. [15] O.H. Ibarray C.E. Kim,aproximación rápida para la mochilay la suma de problemas de subconjunto, J . Assoc. Comput. Mach.,22 (1979), 463– 488. [16] M. Kamath, K. Ramamrithamy D. Towsley, compartir la base de datos multimedia de medios continuos sistemas, en las actas de la cuarta ConferenciaInternacional sobre sistemas de base de datos avanzado Aplicaciones , Singapur, 1995, págs. 79-86. [17] P.W.K. mentira, J.C.S. Lui y L. Golubchik, replicación dinámica basadas en umbrales en granescala vídeo-ondemand sistemas, en actas delVIII taller internacional en temas de investigaciónen base de datos Ingeniería (Paseo), Orlando, FL, febrerode 1998, págs. 52-59. [18] S. Martelloy P. Toth,algoritmos para problemas de mochila, Ann. Matemáticas discretas., 31(1987), 213-258. [19] D. Pisinger, algoritmos paraproblemas de mochila, tesis de doctorado,Departamento de informática, Universidad de Copenhague, febrerode 1995. [20] S.S. Skiena, el Manual de diseño dealgoritmo, Springer-Verlag, Nueva York,1998. [21] J.L. Wolf, P.S. Yuy H. Shachnai, problemas de programación ensistemas de video on Demand, en Multimedia Manejo y almacenamientode información (ProntoM. Chung, ed.),Kluwer, Dordrecht,1996, págs. 183-207. [22] J.L.Wolf, P.S.Yuy H. Shachnai,disco equilibrio de carga para sistemas de vídeo a la carta,ACMMultimedia Sistemas de J ., 5 (1997), 358-370.