Beruflich Dokumente
Kultur Dokumente
“Algoritmo de la
mochila aplicado
a desarrollo web
con JSON”
Integrantes: Leonardo Bascuñán.
Tomas Ibáñez.
Por ejemplo, si contásemos con tan solo 4 elementos que ingresar a la mochila, para
conocer cual sería la mejor solución deberíamos tomar en cuenta de que el elemento puede o
no ingresarse a la mochila, por lo tanto, tenemos 2 posibilidades. Con lo que si hacemos 24
=16, por lo que contaríamos con 18 posibilidades, cosa que es entendible. Pero si esta vez
tenemos 18 elementos que podemos ingresar a la mochila, el problema toma una dimensión
de complejidad que comentamos anteriormente esto sería buscar la mejor solución
entre:262144 posibilidades.
Algoritmo de la mochila en Python:
for i in range(n+1):
for w in range(W+1):
if i==0 or w==0:
K[i][w] = 0
else:
K[i][w] = K[i-1][w]
return K
import numpy as np
w=[1,2,3]
v=[60,100,120]
w_max=5
p=np.array(v)/np.array(w)
C=knapsack(w_max,w,v,3)
print C
Explicación: En este código ejemplo del algoritmo de la mochila, se observa que la función
knapsack o mochila, recibirá un peso máximo que será lo que soporte la mochila, la lista que
contiene los pesos de la mochila, los valores o beneficios asociados a cada uno de estos pesos,
La función de la mochila devolverá una matriz de el peso máximo más uno columnas, por n+1
filas.