The utility of the generalized assignment problem (GAP) is well known in regard to resource allocation problems arising in the areas of production planning, scheduling, and facility location. This paper introduces an important generalization of the GAP, which is called the 0-1 generalized assignment problem with nonlinear capacity constraints (NLGAP) and which allows for capacity interaction among tasks assigned to the same agent. For example, NLGAP can be used to model the hierarchical production planning problem involving the assignment of product families to production facilities in the case where process changeover gives rise to nonlinear capacity interaction among product families assigned to be produced at the same facility. Other applications of NLGAP occur readily throughout the areas of production planning and scheduling. We define a branch-and-bound algorithm for the NLGAP. This algorithm draws upon the underlying structure of the problem by combining in a novel manner recent advances in both nonlinear 0-1 programming and bounding techniques for the GAP. A heuristic for obtaining approximate solutions to NLGAP is also defined. We discuss computational experience with both the exact algorithm and the heuristic. The computational results demonstrate that the heuristic is extremely effective in obtaining near-optimal solutions and that the branch-and-bound algorithm can solve to optimality NLGAPs with 5 agents, 20 tasks, and over 1000 nonlinear terms per constraint.