  We study a constrained version of the knapsack problem in which dependencies
between items are given by the adjacencies of a graph. In the 1-neighbour
knapsack problem, an item can be selected only if at least one of its
neighbours is also selected. In the all-neighbours knapsack problem, an item
can be selected only if all its neighbours are also selected. We give
approximation algorithms and hardness results when the nodes have both uniform
and arbitrary weight and profit functions, and when the dependency graph is
directed and undirected.
