¿Empacar una bolsa de regalos es más fácil para Rupert que para Santa?


12

O: ¿Necesitamos a Rupert para obtener regalos?

Dejando de lado los problemas de enrutamiento , Santa enfrenta el siguiente problema (muchas, muchas veces):

Dada una bolsa con capacidad¹ y un conjunto de regalos , cada uno con el tamaño , quiere hacer niños . Sabe de todas las listas de deseos que los valores secundarios de presentan exactamente mucho.C{p1,,pn}si{c1,,ck}cjpivi,jQ0

Qué conjuntos (disjuntos por pares) de regalos elegir para cada niño para que todo encaje, es decirIj[1..n]

j[1..k]iIjsiC ,

y tanta felicidad como sea posible se produce², es decir

max!j[1..k]iIjvi,j ?

Claramente, esto no es más fácil que Bin Packing o Knapsack, por lo que el pobre Santa podría tener que pasar mucho tiempo empacando bolsas³.

PD por 1212eins@pixabay.com

Ahora, como sabemos, su asistente Rupert no cede tan incondicionalmente. Tiene conocimiento sobre Vj , el valor máximo que el niño cj puede recibir en función del comportamiento durante el año; es decir, agrega una restricción adicional

j[1..k]. iIjvi,jVj .

¿Eso facilita el problema de empacar bolsas? Si no siempre, ¿en qué condiciones?


  1. Si el c diámetro himney es el factor limitante, un marco similar puede ser establecida.
  2. No nos preocupemos por la equidad y otras ideas ridículas.
  3. Por lo tanto, solo una Navidad por año. QED

¡Todos los que quieran dar a otros usuarios, agreguen una recompensa una vez que sea posible! ¡ Serán elegibles las respuestas correctas y comprensibles que también evocan el espíritu de las vacaciones!
Raphael

¡Mis preguntas navideñas anteriores sobre el enrutamiento de Santa y sobre el mosaico de cookies también están al menos parcialmente abiertas!
Raphael

¡Bah! ... Humbug!
Rick Decker

2
Un par de comentarios triviales: el problema no siempre puede ser más fácil (solo elija ) pero hay al menos un caso en el que es (establezca todos excepto , que se establece en ). VjiIjvi,jVj=0V1minivi,1
Manlio

Respuestas:


1

Después de analizar rápidamente esta pregunta, creo que el conocimiento adicional de Rupert sobre el {comportamiento, valor máximo presente} de cada niño no siempre facilitará el trabajo de Santa. Santa aún tendrá que realizar una mochila 0/1 para llenar las bolsas y un algoritmo húngaro para maximizar la felicidad que cada niño capitalista recibe en la mañana de Navidad. Un caso simple en el que haría que el trabajo de Santa fuera bastante simple es si cada niño que Santa consideraba no publicara un artículo y en su lugar jugara videojuegos durante todo el año recibió un cero de Rupert (cada niño obtendría carbón).

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.