An practical Knapsack problem