Está en la página 1de 24

EL PROBLEMA DE

LA MOCHILA

Dra. Iris Abril Martínez Salazar


¿De qué trata este
problema?
Imagina que saldrás de viaje en avión…
¿Qué te gustaría llevar en la
maleta?
• Pantalón de vestir
• Pantalón de mezclilla
• Pantalones cortos
• Camisa de vestir
• Playera
• Traje de baño
• Cepillo para el cabello
• Peine
• Secadora
• Plancha para el cabello
¿Qué te gustaría llevar en la
maleta?
• Pantalón de vestir • Zapatos negros
• Pantalón de mezclilla • Chanclas
• Pantalones cortos • Zapatos de piso
• Camisa de vestir • Zapatos de tacón
• Playera • Vestido de noche
• Traje de baño • Cepillo de dientes
• Cepillo para el cabello • Pasta
• Peine • Peluche favorito
• Secadora • Hoodie
• Plancha para el cabello • Perfume
¿Qué te gustaría llevar en la
maleta?
• Pantalón de vestir • Zapatos negros • Cremas
• Pantalón de mezclilla • Chanclas • Cosméticos
• Pantalones cortos • Zapatos de piso • Snack
• Camisa de vestir • Zapatos de tacón • Computadora
• Playera • Vestido de noche • Cargador de Celular
• Traje de baño • Cepillo de dientes • Cargador de la
• Cepillo para el cabello • Pasta computadora
• Peine • Peluche favorito • Libro
• Secadora de cabello • Hoddie • ….
• Plancha para el cabello • Perfume • ….
Pero… ¡oh no!
La aerolínea permite que lleves, a lo más,
una maleta de 25 kilogramos.

Así que… no podrás llevar todo lo que


querías.

Tendrás que tomar una decisión sobre


que llevar.
Tendrás que resolver un
problema de la mochila.
Problema de la mochila
• Cada artículo que quieres llevar, tiene un peso.
La computadora, por ejemplo, pesa más que un
cepillo de dientes.
• Cada artículo que quieres llevar, tiene un
beneficio para ti, un valor que le das a cada
artículo.
• Tal vez el cargador de celular es muy importante
para ti, entonces tendrá un valor grande.
• La secadora de cabello tal vez no sea realmente
importante, quizá esta tenga un valor pequeño
para ti.
Por ejemplo estos 5 artículos.
Peso (en
No. Artículo Beneficio
gramos)
1 Computadora 1500 30
2 Cargador de celular 30 18

3 Secadora de cabello 650 3

4 Cepillo de dientes 9 10

5 Oso de peluche 200 15

También sabemos que la maleta (mochila) tiene una


capacidad definida, en general no podemos llevar
todo lo que queremos.
Lo que buscamos es seleccionar los
objetos que vamos a llevar en la mochila
sin exceder la capacidad de la misma de
modo que el beneficio que aportan estos
objetos sea el mayor posible.
FORMULACIÓN
MATEMÁTICA
Parámetros
Empecemos con los parámetros.
¿Qué datos tenemos?

Sabemos la cantidad de objetos.


Y sabemos que cada objeto, tiene un beneficio
(valor) y tiene un peso determinado, consume ese
recurso de la capacidad de la maleta.

También tenemos el dato de la capacidad de la


maleta.
Tenemos 5 artículos.

Con las siguientes características:


Peso (en
No. Artículo Beneficio
gramos)
1 Computadora 1500 30
2 Cargador de celular 30 18

3 Secadora de cabello 650 3

4 Cepillo de dientes 9 10

5 Oso de peluche 200 15

Para este problema, digamos que la maleta no debe de exceder


los 2000 gramos (para poder trabajar con un problema
pequeño J).
Capacidad de la maleta: 2000 gramos.
Variables
¿Qué queremos saber?

Queremos saber que objetos llevar en la maleta.


En particular, para cada objeto queremos saber si
debemos llevarlo o no.
Computadora, ¿Lo llevo? Si o no.
Cargador de celular, ¿Lo llevo? Si o no.
Y así para cada artículo… por lo tanto, necesitamos una
variable que represente cada artículo y que, al resolver el
modelo, podamos saber si lo llevamos o no. La variable
puede tomar dos valores, uno que represente si lo
llevamos (1) y otro que represente si no lo llevamos (0).
Asumiremos que no podemos llevar fragmentos de artículos (0.5
computadora o ¾ de oso de peluche), el artículo se lleva, o no se lleva.
x1 tomará el valor de 1 si se lleva la computadora, 0 en
caso contrario.
x2 tomará el valor de 1 si se lleva el cargador de celular, 0
en caso contrario.
x3 tomará el valor de 1 si se lleva la secadora de cabello, 0
en caso contrario.
x4 tomará el valor de 1 si se lleva el cepillo de dientes, 0 en
caso contrario.
x5 tomará el valor de 1 si se lleva el oso de peluche, 0 en
caso contrario.
En general:

1 𝑠𝑖 𝑠𝑒 𝑠𝑒𝑙𝑒𝑐𝑐𝑖𝑜𝑛𝑎 𝑒𝑙 𝑜𝑏𝑗𝑒𝑡𝑜 𝑖
𝑥! = #
0 𝑒𝑛 𝑐𝑎𝑠𝑜 𝑐𝑜𝑛𝑡𝑟𝑎𝑟𝑖𝑜.
Función objetivo
Lo que estamos buscando, es que la maleta tenga el
mayor beneficio.
Es decir, que la suma del beneficio que me da cada
objeto que lleve, sea máximo.

Maximizar la suma de los beneficios de los objetos que


lleve en la maleta.

Aún no sabemos cuales objetos llevaremos… por lo


tanto, debemos incluir en nuestra función objetivo la
posibilidad de que se lleve cualquier subconjunto de
objetos. Para esto hacemos uso de las variables.
Variable Artículo Beneficio
x1 Computadora 30
x2 Cargador de celular 18
x3 Secadora de cabello 3
x4 Cepillo de dientes 10
x5 Oso de peluche 15

Maximizar 30x1 + 18x2 + 3x3 + 10x4 + 15x5


De esta manera, si se seleccionan la computadora y el oso de peluche,
tendremos que:
x1 = x5 = 1
x2 = x3 = x4 =0
y el beneficio total sería de 45.

Dado que los beneficios son todos positivos y las variables que pueden
tomar únicamente el valor de 1 ó 0, la función objetivo perseguiría que
TODAS las variables tomen el valor de 1 (que sería equivalente a llevar
TODOS los objetos). Sin embargo esto puede no ser posible por que
tenemos un límite de capacidad en la maleta.
Restricciones
La restricción que tenemos es la capacidad de la
maleta.

El peso de los objetos que llevemos en la maleta no


debe superar el peso permitido.

El peso de los objetos que llevemos en la maleta ≤ 2000


Variable Artículo Peso (en gramos)
x1 Computadora 1500
x2 Cargador de celular 30
x3 Secadora de cabello 650
x4 Cepillo de dientes 9
x5 Oso de peluche 200

El peso de los objetos que llevemos en la maleta ≤ 2000.

Dado que no sabemos cuales objetos se seleccionarán, debemos


utilizar las variables para representar la posibilidad de llevar
cualquier posible combinación.

1500x1 + 30x2 + 650x3 + 9x4 + 200x5 ≤ 2000

Con esta restricción, quedarán descartadas aquellas


combinaciones de productos que superen la capacidad máxima de
la maleta.
Modelo Matemático
La capacidad de la maleta es la única restricción que
tenemos. Faltaría incluir la naturaleza de las variables
y nuestro modelo resulta:

Maximizar 30x1 + 18x2 + 3x3 + 10x4 + 15x5

1500x1 + 30x2 + 650x3 + 9x4 + 200x5 ≤ 2000

x1, x2, x3, x4, x5 ∈ 0,1


Generalizando
Sea Q = capacidad de la mochila.
vi = beneficio o valor del artículo i.
wi = peso del artículo i.
Variable Artículo Peso Beneficio
x1 Computadora w1 v1
x2 Cargador de celular w2 v2
Secadora de
x3 w3 v3
cabello
x4 Cepillo de dientes w4 v4

x5 Oso de peluche w5 v5
Generalizando
Entonces, el modelo para el problema de la mochila
con 5 artículos (n = 5) resulta:

Maximizar v1x1 + v2x2 + v3x3 + v4x4 + v5x5

w1x1 + w2x2 + w3x3 + w4x4 + w5x5 ≤ Q

x1, x2, x3, x4, x5 ∈ 0,1

y para n = n, es…
Modelo matemático para el
problema de la mochila

$
Maximizar 6 𝑣! 𝑥! ………..
!"#
$

6 𝑤! 𝑥! ≤ Q
!"#

𝑥𝑖 ∈ 0,1 ∀𝑖, 𝑖 = 1,2, … , 𝑛


Además de ser útil al hacer una maleta de viaje, el
problema de la mochila tiene numerosas aplicaciones en
contextos reales.

¿Qué productos tener en un almacén?


¿En qué proyectos invertir, si se tiene un presupuesto?
¿Qué archivos incluir en un disco duro?
¿Cuáles productos comprar en el supermercado?
¿Qué sitios de interes visitar estando de viaje en cierta
ciudad?
…muchas más.

También podría gustarte