A highly flexible, software-based architecture is disclosed for supporting
cooperative task completion by flexible, dynamic configurations of
autonomous electronic agents. Communications and cooperation between
agents are brokered by one or more facilitators. The facilitators employ
strategic reasoning for generating a goal satisfaction plan to fulfill
arbitrarily complex goals by users and service requesting agents.