On the solution of concave knapsack problems