Nova Patents
CA2119085C

Adaptive communication system

Abstract

The present invention relates to a method of operating a communication system comprised of providing a plurality of process agents for receiving goal commands (goals) and for invoking a process to achieve the goals, providing a plurality of device agents, each in communication with its own device, for receiving and storing goals from a process agent, and for operating its corresponding device in response to receiving the goals from a process agent, and interconnecting all of the agents and carrying goals between agents thereby.

CA2119085C, drawing sheet 1
Sheet 1 of 12

Term

No projected expiry on record.

  1. Priority and filed
  2. Granted
  3. Today

42 claims: 16 independent, 26 dependent

  1. 1
    CA 02119085 2001-02-19 We claim:1. A method of operating a communication system comprising: (a) providing a plurality of process agents for receiving goal commands (goals) and for invoking a process to achieve said goals, (b) providing a plurality of device agents, each in communication with its own device, for receiving and storing goals from a process agent, and for operating its corresponding device in response to receiving said goals from a process agent, (c) interconnecting said agents and carrying goals between agents thereby, (d) storing data defining processes, available resources and knowledge data for each agent in a memory, and downloading said definition from the memory to each said agent, (e) in which each agent stores and defines its capabilities, resolves goals, executes a task, and allocates its resources to a task, (f) an agent controlling a goal of another agent, and (g) in which agents admit control of at least one of goals, resources and task execution capabilities by an agent other than a supervisory agent.
  2. 2
    A method of operating a communication system comprising:(a) providing a plurality of process agents for receiving goal commands (goals) and for invoking a process to achieve said goals, CA 02119085 2001-02-19 (b) providing a plurality of device agents, each in communication with its own device, for receiving and storing goals from a process agent, and for operating its corresponding device in response to receiving said goals from a process agent, (c) interconnecting said agents and carrying goals between agents thereby (d) storing data defining processes, available resources and knowledge data for each agent in a memory, and downloading said definition from the memory to each said agent, and (e) posting events output from each agent on a blackboard, registering events of interest to agents having interest in particular events on the blackboard, and notifying said agents having interest in an occurrence of said particular events on the blackboard.
  3. 3
    A method of operating a communication system comprising:(a) providing a plurality of process agents for receiving goal commands (goals) and for invoking a process to achieve said goals, (b) providing a plurality of device agents, each in communication with its own device, for receiving and storing goals from a process agent, and for operating its corresponding device in response to receiving said goals from a process agent, (c) interconnecting said agents and carrying goals between agents thereby, (d) storing data defining processes, available resources and knowledge data for each agent in a memory, and downloading said definition from the memory to each said agent, and CA 02119085 2001-02-19 (e) storing in a table of each agent a directory of its goals and pointers to an associated procedure table for each goal, each procedure table 20 being comprised of reference to procedures and a pointer to an executable software program for carrying out a process for fulfilling a related goal.
  4. 11
    A method of operating a communication system comprising:(a) providing a plurality of process agents for receiving goal commands (goals) and for invoking a 5 process to achieve said goals, (b) providing a plurality of device agents, each in communication with its own device, for receiving and storing goals from a process agent, and for operating its corresponding device in response to 10 receiving said goals from a process agent, (c) interconnecting said agents and carrying goals between agents thereby, (d) storing data defining processes, available resources and knowledge data for each agent in a memory, 15 and downloading said definition from the memory to each said agent, (e) in which each agent stores and defines its capabilities, resolves goals, executes a task, and allocates its resources to a task, CA 02119085 2001-02-19 (f) an agent controlling a goal of another agent, and (g) an agent reserving resources on another agent, and selecting these resources during operation, whereby reliability required for operation of the agent is able to be selected.
  5. 12
    A method of operating a communication system comprising:(a) providing a plurality of process agents for receiving goal commands (goals) and for invoking a process to achieve said goals, (b) providing a plurality of device agents, each in communication with its own device, for receiving and storing goals from a process agent, and for operating its corresponding device in response to receiving said goals from a process agent, (c) interconnecting said agents and carrying goals between agents thereby, (d) storing data defining processes, available resources and knowledge data for each agent in a memory, and downloading said definition from the memory to each said agent, (e) in which each agent stores and defines its capabilities, resolves goals, executes a task, and allocates its resources to a task, (f) an agent controlling a goal of another agent, and (g) minimizing the cost of operation by an agent reserving resources on other agents, and selecting a least cost of achieving a goal by a resource broker in an agent operating a bidding process, bidding being made CA 02119085 2001-02-19 from the reserved resources providing a cost estimate to process to a goal.
  6. 13
    A method of operating a communication system comprising:(a) providing a plurality of process agents for receiving goal commands (goals) and for invoking a 5 process to achieve said goals, (b) providing a plurality of device agents, each in communication with its own device, for receiving and storing goals from a process agent, and for operating its corresponding device in response to 10 receiving said goals from a process agent, (c) interconnecting said agents and carrying goals between agents thereby, (d) storing data defining processes, available resources and knowledge data for each agent in a memory, 15 and downloading said definition from the memory to each said agent, (e) in which each agent stores and defines its capabilities, resolves goals, executes a task, and allocates its resources to a task, 20 (f) an agent controlling a goal of another agent, and (g) an agent reserving resources it needs for its normal operation, and using these resources to process to a goal.
  7. 18
    A method of operating a communication system comprising:(a) providing a plurality of process agents for receiving goal commands (goals) and for invoking a 5 process to achieve said goals, (b) providing a plurality of device agents, each in communication with its own device, for receiving and storing goals from a process agent, and for operating its corresponding device in response to 10 receiving said goals from a process agent, (c) interconnecting said agents and carrying goals between agents thereby, (d) storing data defining processes, available resources and knowledge data for each agent in a memory, 15 and downloading said definition from the memory to each said agent, (e) in which each agent stores and defines its capabilities, resolves goals, executes a task, and allocates its resources to a task, CA 02119085 2001-02-19 (f) an agent controlling a goal of another agent, and (g) an agent reserving resources of other agents through usage rights, determining a current state of the resources, and selecting a most suitable other agent to process a goal with respect to the current state of the resources over which the other agents have jurisdiction.
  8. 19
    A communication system comprising:(a) a plurality of process agents for receiving goal commands (goals) and for invoking a process to achieve said goals, (b) a plurality of device agents, each in communication with its own device, for receiving and storing goals from a process agent, and for operating its corresponding device in response to receiving said goals from a process agent, (c) a network for interconnecting said agents for carrying goals between agents, (d) a configuration means for storing data defining processes, available resources and knowledge data for each agent, and for downloading said definition to each said agent, (e) each agent including means for storing and defining its capabilities, means for resolving goals, means for executing a task, and means for allocating its resources to a task, (f) means for controlling a goal of an agent by another agent, and (g) in which agents include means for admitting control of at least one of goals, resources CA 02119085 2001-02-19 and task execution means by an agent other than a supervisory agent.
  9. 20
    A communication system comprising:(a) a plurality of process agents for receiving goal commands (goals) and for invoking a process to achieve said goals, (b) a plurality of device agents, each in communication with its own device, for receiving and storing goals from a process agent, and for operating its corresponding device in response to receiving said goals from a process agent, (c) a network for interconnecting said agents for carrying goals between agents, (d) a configuration means for storing data defining processes, available resources and knowledge data for each agent, and for downnloading said definition to each said agent, and (e) a blackboard means for posting events output from each agent, means for registering events of interest to agents having interest in particular events, and means for notifying said agents having interest in an occurrence of said particular events.
  10. 21
    A communication system comprising:(a) a plurality of process agents for receiving goal commands (goals) and for invoking a process to achieve said goals, (b) a plurality of device agents, each in communication with its own device, for receiving and storing goals from a process agent, and for operating its corresponding device in response to receiving said goals from a process agent, CA 02119085 2001-02-19 (c) a network for interconnecting said agents for carrying goals between agents, (d) a configuration means for storing data defining processes, available resources and knowledge data for each agent, and for downloading said definition to each said agent, and (e) in which each agent is comprised of a table comprised of a directory of its goals and pointers to an associated procedure table for each goal, each procedure table being comprised of reference to procedures and a pointer to an executable software program for carrying out a process for fulfilling a related goal.
  11. 29
    A communication system comprising:(a) a plurality of process agents for receiving goal commands (goals) and for invoking a process to achieve said goals, 5 (b) a plurality of device agents, each in communication with its own device, for receiving and storing goals from a process agent, and for operating its corresponding device in response to receiving said goals from a process agent, 1 1 CA 02119085 2001-02-19 (c) a network for interconnecting said agents for carrying goals between agents, id) a configuration means for storing data defining processes, available resources and knowledge data for each agent, and for downloading said definition to each said agent, (e) each agent including means for storing and defining its capabilities, means for resolving goals, means for executing a task, and means for allocating its resources to a task, (f) means for controlling a goal of an agent by another agent, and (g) means for an agent to Reserve resources on another agent, and means for selecting these resources during operation of the agent, whereby reliability required for operation of the agent is able to be selected.
  12. 30
    A communication system comprising:(a) a plurality of process agents for receiving goal commands (goals) and for invoking a process to achieve said goals, (b) a plurality of device agents, each in communication with its own device, for receiving and storing goals from a process agent, and for operating its corresponding device in response to receiving said goals from a process agent, (c) a network for interconnecting said agents for carrying goals between agents, (d) a configuration means for storing data defining processes, available resources and knowledge data for each agent, and for downloading said definition to each said agent, CA 02119085 2001-02-19 (e) each agent including means for storing and defining its capabilities, means for resolving goals, means for executing a task, and means for allocating its resources to a task, 20 (f) means for controlling a goal of an agent by another agent, and (g) means for minimizing the cost of operation by an agent by reserving resources on other agents, and means for selecting a least cost of achieving a goal by 25 a resource broker in an agent operating a bidding process, bidding being made from the reserved resources providing a cost estimate to process to a goal.
  13. 31
    A communicating system comprising:(a) a plurality of process agents for receiving goal commands (goals) and for invoking a process to achieve said goals, (b) a plurality of device agents, each in communication with its own device, for receiving and storing goals from a process agent, and for operating its corresponding device in response to receiving said goals from a process agent, (c) a network for interconnecting said agents for carrying goals between agents, (d) a configuration means for storing data defining processes, available resources and knowledge data for each agent, and for downloading said definition to each said agent, (e) each agent including means for storing and defining its capabilities, means for resolving goals, means for executing a task, and means for allocating its resources to a task, CA 02119085 2001-02-19 (f) means for controlling a goal of an agent by another agent, and (g) means for enabling an agent to reserve resources it needs for its normal operation, and using those resources for processing to a goal.
  14. 36
    A communication system comprising:(a) a plurality of process agents for receiving goal commands (goals) and for invoking a process to achieve said goals, 5 (b) a plurality of device agents, each in communication with its own device, for receiving and storing goals from a process agent, and for operating CA 02119085 2001-02-19 its corresponding device in response to receiving said goals from a process agent, (c) a network for interconnecting said agents for carrying goals between agents, (d) a configuration means for storing data defining processes, available resources and knowledge data for each agent, and for downloading said definition to each said agent, (e) each agent including means for storing and defining its capabilities, means for resolving goals, means for executing a task, and means for allocating its resources to a task, (f) means for controlling a goal of an agent by another agent, and (g) means for enabling an agent to reserve resources of other agents through usage rights, means for determining a current state of the resources, and means for selecting a most suitable other agent to process to a goal with respect to the state of the resources over which other agents have jurisdiction.
  15. 37
    A method of operating an agent comprising receiving a message (goal) from another agent and performing a sequence of actions required by the goal, each action of the sequence of actions containing at least one instruction, each instruction containing an index number (PC), an action pointing to another action in a thread of actions, informing a subsequent action of a previous instruction including designating the PC of the previous instruction whereby a subsequent action is informed of an instructing PC and returning an action completion acknowledgement message to a preceding action containing an instruction designated by the instructing CA 02119085 2001-02-19 PC, whereby the action containing the instructing PC is able to point to various different PCS to carry out different actions upon receipt of various acknowledgement messages.
  16. 40
    A method of operating a communication system comprising:(a) providing a plurality of process agents for receiving goal commands (goals) and for invoking a process to achieve said goals, (b) providing a plurality of device agents, each in communication with its own device for receiving and storing goals from a process agent, and for operating its corresponding device in response to receiving said goals from a process agent, (c) interconnecting all of said agents and carrying goals between agents thereby, CA 02119085 2001-02-19 (d) receiving a goal from another agent and performing a sequence of actions required by the goal, 15 each action of the sequence of actions containing at least one instruction, each instruction containing an index number (PC), an action pointing to another action in a thread of actions, (e) informing a subsequent action of a 20 previous instruction including designating the PC of the previous instruction whereby a subsequent action is informed of an instructing PC, and (f) returning an action completion acknowledgement message to a preceding action containing 25 an instruction designated by the instructing PC, whereby the action containing the instructing PC is able to point to various different PCS to carry out different actions upon receipt of various acknowledgement messages .