Highly scalable software-based architecture for communication and cooperation among distributed electronic agents
DC CAFCFirst Claim
Patent Images
1. A software-based, flexible computer architecture for communication and cooperation among distributed electronic agents, the architecture contemplating a distributed computing system comprising:
- a plurality of service-providing electronic agents;
a distributed facilitator agent functionally distributed across at least two computer processes, the facilitator agent capable of bi-directional communications with the plurality of service-providing electronic agents, the facilitator agent including;
an agent registry that declares capabilities for each of the plurality of service-providing electronic agents currently active within the distributed computing environment; and
a facilitating engine operable to interpret a service request as a base goal, the facilitating engine further operable for generating a goal satisfaction plan associated with the base goal, wherein the goal satisfaction plan involves;
using reasoning to determine sub-goal requests based on non-syntactic decomposition of the base goal and using said reasoning to co-ordinate and schedule efforts by the service-providing electronic agents for fulfilling the sub-goal requests in a cooperative completion of the base goal; and
wherein the plurality of service-providing electronic agents and the distributed facilitator agent communicate using an interagent Communication Language (ICL), wherein the ICL includes;
a layer of conversational protocol defined by event types and parameter lists associated with one or more of the events, wherein the parameter lists further refine the one or more events.
2 Assignments
Litigations
6 Petitions
Accused Products
Abstract
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.
-
Citations
55 Claims
-
1. A software-based, flexible computer architecture for communication and cooperation among distributed electronic agents, the architecture contemplating a distributed computing system comprising:
-
a plurality of service-providing electronic agents; a distributed facilitator agent functionally distributed across at least two computer processes, the facilitator agent capable of bi-directional communications with the plurality of service-providing electronic agents, the facilitator agent including; an agent registry that declares capabilities for each of the plurality of service-providing electronic agents currently active within the distributed computing environment; and a facilitating engine operable to interpret a service request as a base goal, the facilitating engine further operable for generating a goal satisfaction plan associated with the base goal, wherein the goal satisfaction plan involves; using reasoning to determine sub-goal requests based on non-syntactic decomposition of the base goal and using said reasoning to co-ordinate and schedule efforts by the service-providing electronic agents for fulfilling the sub-goal requests in a cooperative completion of the base goal; and wherein the plurality of service-providing electronic agents and the distributed facilitator agent communicate using an interagent Communication Language (ICL), wherein the ICL includes; a layer of conversational protocol defined by event types and parameter lists associated with one or more of the events, wherein the parameter lists further refine the one or more events. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A software-based flexible computer architecture for communication and cooperation among distributed electronic agents, the architecture contemplating a distributed computing system comprising:
-
a plurality of service providing electronic agents; at least one facilitator agent capable of receiving a service requests in the form of a base goal from a service-requesting agent in an interagent communication language (ICL) and capable of determining sub goals necessary to accomplish the base goal, the facilitator agent operable to allocate each sub-goal to at least one service-providing agent capable of accomplishing the sub-goal as determined by the registry, the facilitator agent being distinct from service-providing agents, wherein the ICL includes a layer of conversational protocol defined by event types and parameter lists associated with one or more of the events, wherein the parameter lists further refine the one or more events; and at least one service-requesting agent capable of making a request directly to a service-providing agent as a peer to peer communication for accomplishment of at least one of the sub-goals. - View Dependent Claims (23, 24, 25)
-
-
26. A distributed facilitator agent functionally distributed across at least two computer processes, the distributed facilitator agent arranged to coordinate cooperative task completion within a distributed computing environment having a plurality of autonomous service-providing electronic agents, the distributed facilitator agent comprising:
-
an agent registry that declares capabilities of service-providing electronic agents currently active within the distributed computing environment; and a facilitating engine operable to parse a service request in order to interpret a compound goal set forth therein, the service request formed according to an Interagent Communication Language (ICL), the ICL including a layer of conversational protocol defined by event types and parameter lists associated with one or more of the events, wherein the parameter lists further refine the one or more events, the facilitating engine further operable to generate a goal satisfaction plan associated with the compound goal, wherein the goal satisfaction plan involves; using reasoning to determine sub-goal requests based on non-syntactic decomposition of the base goal and using said reasoning to co-ordinate and schedule efforts by the service-providing electronic agents for fulfilling the sub-goal requests in a cooperative completion of the base goal. - View Dependent Claims (27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46)
-
-
47. A facilitator agent for coordinating cooperative task completion within a distributed computing environment having a plurality of autonomous service-providing electronic agents, the facilitator agent comprising:
-
a registry of capabilities of the service-providing electronic agents; and a facilitating engine operable to determine a set of sub goals necessary to accomplish a base goal, and then allocate such sub-goals to those agents capable of accomplishing the sub-goals as determined by the registry, said facilitating agent further capable of initiating a direct peer to peer communication between a service-requesting agent and a service-providing agent of at least one sub-goal, and said facilitating agent being distinct from service-providing agents; and wherein the service-providing agent and the service-requesting agent communicate using an Interagent Communication Language (ICL), the ICL includes a layer of conversational protocol defined by event types and parameter lists associated with one or more of the events, wherein the parameter lists further refine the one or more events. - View Dependent Claims (48, 49)
-
-
50. A computer-implemented method for providing cooperative task completion within a distributed computing environment, the distributed computing environment including a plurality of autonomous electronic agents, the distributed computing environment supporting an Interagent Communication Language, the computer-implemented method comprising the acts of:
-
providing a plurality of synchronized agent registries each declaring capabilities of service-providing electronic agents currently active within the distributed computing environment, the plurality of synchronized agent registries each resident within a separate computer process; interpreting a service request in order to determine a base goal, the service request adhering to the Interagent Communication Language (ICL), the ICL including a layer of conversational protocol defined by event types and parameter lists associated with one or more of the events, wherein the parameter lists further refine the one or more events, the act of interpreting including the sub-acts of; determining a goal satisfaction plan that is associated with the base goal; wherein the goal satisfaction plan involves; using reasoning to determine sub-goal requests based on non-syntactic decomposition of the base goal and using said reasoning to co-ordinate and schedule efforts by the service-providing electronic agents for fulfilling the sub-goal requests in a cooperative completion of the base goal; and implementing the base goal satisfaction plan. - View Dependent Claims (51)
-
-
52. A computer implemented process for providing coordinated task completion within a distributed computing environment, the distributed computing environment including a plurality of autonomous electronic agents, the computer implemented method comprising the steps of:
-
providing at least one agent registry including capabilities of service providing electronic agents; interpreting a service request in the form of a base goal, the service request being in a interagent communication language (ICL), the ICL including a layer of conversational protocol defined by event types and parameter lists associated with one or more of the events, wherein the Parameter lists further refine the one or more events; determining a plurality of sub goals necessary to accomplish the base goal; selecting from said registry at least one service providing agent capable of completing said sub goals; delegating at least one sub goal as a peer to peer service request directly from a service requesting agent to a service providing agent; and delegating any remaining sub goals as service request in the interagent communication language to the selected agents capable of completing the remaining sub-goals.
-
-
53. A computer-implemented method for providing cooperative task completion within a distributed computing environment, the distributed computing environment including a plurality of autonomous electronic agents, the distributed computing environment supporting a dynamically expandable Interagent Communication Language (“
- ICL”
), the computer implemented method comprising the acts of;providing a plurality of synchronized agent registries each declaring a set of functional capabilities for one or more of the autonomous service-providing electronic agents, each of the synchronized agent registries being resident within a separate computer process; receiving a service request adhering to the ICL, the ICL including a layer of conversational protocol defined by event types and parameter lists associated with one or more of the events, wherein the parameter lists further refine the one or more events; determining a base goal based on the service request; determining a delegation plan wherein the delegation plan involves; using reasoning to determine sub-goal requests based on non-syntactic decomposition of the base goal and using said reasoning to co-ordinate and schedule efforts by the autonomous service-providing electronic agents for fulfilling the sub-goal requests in a cooperative completion of the base goal; and implementing the delegation plan. - View Dependent Claims (54, 55)
- ICL”
Specification