Situations in which several agents must interact to achieve goals present difficulties of coordination and cooperation not found in single-agent problem solving contexts. Techniques for coordination and cooperation required in group problem solving are not well understood because most AI models deal with cases in which problems are solved by a single agent. In this paper we present a framework for distributed problem solving that describes some of the expertise an agent working in a multi-agent environment must have. An application of the framework to the domain of air-traffic control is discussed. Here each aircraft is viewed as an agent that must cooperate with others to achieve a conflict-free plan.