System and method for distributed inference in autonomous systems - Patents.com
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-03-29
- Publication Date
- 2026-04-02
AI Technical Summary
When developing and testing algorithms for automation systems, existing technologies need to customize algorithms for each new platform, resulting in high development complexity and serious waste of resources when team automation systems cooperate.
Distributed inference technology is adopted to realize algorithm control and operation through a unified standard model, guiding each team member to share team goals and independently achieve personal goals, thereby achieving efficient resource utilization.
Through distributed inference technology, the resource utilization efficiency of automation systems in teamwork is improved, the development complexity is reduced, and the system's response speed and resilience is improved.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
[Technical field]
[0001] The present disclosure relates to autonomous systems. Summary of the Invention
[0002] 1. A system for autonomous operation of a device, comprising: an autonomous subsystem comprising: a plan library that stores one or more plans, at least some of the one or more plans being available; a first autonomous reasoning engine (ARE) further comprising an event processing subsystem, a belief processing subsystem, an intention processing subsystem, and a plan development subsystem, wherein the plan library, the event processing subsystem, the belief processing subsystem, the intention processing subsystem, and the plan development are coupled to one another; and a platform control system (PCS).a belief processing subsystem (ARE) coupled to a PCS, the autonomous subsystem coupled to a workstation, the workstation transmitting a first message or messages related to the one or more beliefs to a belief processing subsystem and a second message or messages related to the one or more events to an event processing subsystem, the PCS transmitting information related to the one or more cognitions to the belief processing subsystem and information related to the one or more events to the event processing subsystem, the belief processing subsystem determining a current belief based on the received first message or messages and the information related to the one or more cognitions, the belief processing subsystem transmitting the current belief to a planning subsystem and an intention processing subsystem, the event processing subsystem determining a current belief based on the received second message or messages and the one or more events transmitted by the PCS, the event processing subsystem determines a current event based on information associated with the event, the event processing subsystem sends the current event to a planning subsystem, the planning subsystem selects one of one or more plans stored in a plan library based on at least some of the available one or more plans, the current belief, and the current event, the planning subsystem sends the selected plan to an intent processing subsystem, the intent processing subsystem creates a list of intents based on the received selected plan, the intent processing subsystem selects an intent from the list of created intents for execution based on the list of created intents and the current belief, and the intent processing subsystem executes the selected intent, where the execution includes the intent processing subsystem creating one or more actions based on the selected intent, and the intent processing subsystem sending the one or more actions to the PCS.
[0003] storing, by a plan library, one or more plans, where at least some of the one or more plans are available; transmitting, by a workstation, a first one or more messages related to the one or more beliefs to a belief processing subsystem and a second one or more messages related to the one or more events to an event processing subsystem; transmitting, by a platform control system (PCS), information related to the one or more cognitions to the belief processing subsystem and information related to the one or more events to the event processing subsystem; determining, by the belief processing subsystem, a current belief based on the received first one or more messages and the information related to the one or more cognitions; transmitting, by the belief processing subsystem, the current belief to a planning subsystem and an intention processing subsystem; Thus, a method for autonomous operation of a device comprising: determining; sending, by the event processing subsystem, the current event to the planning subsystem; selecting, by the planning subsystem, a plan from one or more plans stored in a plan library based on at least some of the available one or more plans, the current belief, and the current event; sending, by the planning subsystem, the selected plan to the intent processing subsystem; creating, by the intent processing subsystem, a list of intentions based on the received selected plan; selecting, by the intent processing subsystem, an intention from the list of created intentions and the list of created intentions for execution based on the current belief; and executing, by the intent processing subsystem, the selected intention, where executing includes creating, by the intent processing subsystem, one or more actions based on the selected intent, and sending, by the intent processing subsystem, the one or more actions to the PCS.
[0004] A system for implementing distributed reasoning for autonomous operation in members of a team, where the members of the team include a first member, where the first member includes a first team autonomous subsystem and a first member autonomous subsystem coupled to each other, and where the first member executes a first hierarchical plan including a team plan and a first member plan, where the team plan is related to one or more team objectives and the first member plan is related to one or more self objectives of the first member, and further where the executing includes the first team autonomous system executing the team plan and the first member autonomous system executing the first member plan.
[0005] A method for implementing distributed reasoning for autonomous operation in members of a team, where the members of the team include a first member, where the first member includes a first team autonomous subsystem and a first member autonomous subsystem coupled to each other, and the method includes: executing, by the first member, a hierarchical plan including a team plan and a first member plan, where the team plan is related to one or more team objectives and the first member plan is related to one or more self objectives of the first member, and executing the hierarchical plan includes executing, by the first team autonomous subsystem, the team plan and executing, by the first member autonomous subsystem.
[0006] The foregoing and additional aspects and embodiments of the present disclosure will become apparent to those skilled in the art in light of the detailed description of various embodiments and / or aspects, which are provided with reference to the drawings, a brief description of which is provided below.
[0007] The foregoing and other advantages of the present disclosure will become apparent upon reading the following detailed description and upon reference to the drawings. [Brief description of the drawings]
[0008] [Figure 1] FIG. 1 illustrates an example embodiment of a system for autonomous operation. [Diagram 2] FIG. 1 illustrates an example embodiment of an autonomous inference engine. [Figure 3A] FIG. 1 illustrates an example flow diagram of the operation of the system for autonomous operation. [Figure 3B] FIG. 1 illustrates an example embodiment of a workstation. [Figure 4A] FIG. 1 illustrates one illustrative embodiment of a team with hierarchical planning for each team member. [Figure 4B] FIG. 2 illustrates one example embodiment of a team autonomous subsystem and a member autonomous subsystem. [Figure 5A] FIG. 1 illustrates an example embodiment of a team autonomous inference engine. [Figure 5B] FIG. 2 illustrates an example flow diagram of the operation of a team autonomous inference engine. [Figure 6] FIG. 2 illustrates one example embodiment of a member autonomous inference engine. [Figure 7] FIG. 1 illustrates one example embodiment of an operational flow diagram of a system and method for distributed inference. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0009] While the present disclosure is susceptible to various modifications and alternative forms, specific embodiments or implementations have been shown by way of example in the drawings and will be described in detail herein. It should be understood, however, that the disclosure is not intended to be limited to the particular forms disclosed. Instead, the disclosure is intended to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the invention as defined by the appended claims.
[0010] An autonomous system (AS) is a system that can achieve a given set of objectives in a changing environment. An autonomous system (AS) can gather information about the environment and the tasks over extended periods of time to achieve a given set of objectives without human control or intervention. An example of such an AS is an unmanned autonomous service vehicle that can be used for: border security at borders, perimeter zones around airports, airport runway inspection, city road quality surface inspection, material transfer in mines, agricultural cultivation, harvesting, or weeding. In these application areas, there may be one or more human observers monitoring via workstations (WS) or mobile devices the progress of a team of unmanned autonomous service vehicles that may operate in the same location or in different locations performing the same or different tasks. The human observer can at any time change the tasks performed by the team or a specific member of the team, or take direct control of the AS vehicle to perform tasks that cannot be automated and return it to the team when completed.
[0011] Other examples not involving the use of vehicles include automating process control in a refinery based on current sensory information about the process and other parameters such as local weather and the quality of the raw materials used in the process, or automating traffic lights to reduce congestion based on dynamic vehicle traffic information. These applications include human supervisors monitoring via WS or mobile devices and a distributed network of controllable intelligent input and output devices collecting, processing and transmitting data, and accepting control information from a distributed task planner or one or more human supervisors.
[0012] Developing and testing algorithms for autonomous systems can be difficult because algorithms may need to be customized each time a new platform is introduced in the autonomous system. These difficulties can be reduced by using a uniform and standard model for algorithm control and operation.
[0013] Furthermore, some applications require a team of autonomous systems to cooperate to achieve a given set of objectives. One way to achieve this is by working in a swarm, where each team member performs the same action. However, working in a swarm can lead to a waste of resources of the autonomous team.
[0014] A more resource-efficient approach is distributed reasoning. Distributed reasoning is a uniform and standard model for the algorithmic control and operation of a team of autonomous team members. This approach is achieved by means of a model where each team member shares team objectives and achieves these by guiding each team member to achieve their own objectives individually. Distributed reasoning requires each team member to take independent but joint actions that help the team optimally achieve the team objectives by determining that each team member can independently achieve partial objectives that support the overall objective or goal of the team. Distributed reasoning is a divide and conquer approach to teamwork that results in more resilient and responsive teams.
[0015] Described below are systems and methods for autonomous system operation and for the implementation of distributed reasoning in teams of autonomous systems having components to enable the implementation of uniform and standard models for algorithmic control and operation.
[0016] 1 illustrates one example embodiment of a system 100. The system 100 includes an AS 101. The AS 101 is installed on a device, such as, for example, an unmanned vehicle. The AS 101 includes an autonomous inference engine (ARE) 103, a platform specific module (PSM) 105, a platform control system (PCS) 107, and a platform 109. The ARE 103, the PSM 105, the PCS 107, and the platform 109 are coupled to each other. Each of these components is described in further detail below.
[0017] The AS 101 is coupled to a workstation (WS) 111. The WS 111 sends one or more plans 113 and one or more messages 115 to the AS 101. The AS 101 sends telemetry 117 to the WS 111. Each plan in the one or more plans 113 includes a definition of an objective or goal for the AS 101 to achieve. In some embodiments, the WS 111 may perform one or more processing tasks that the AS 101 cannot perform, such as image recognition or image classification.
[0018] Each of the one or more messages 115 controls or provides new data to the AS 101 to affect which plans are executed or how the plans are executed. In some embodiments, at least one of the one or more messages is associated with a belief. In some embodiments, at least one of the one or more messages is associated with an event. An event may include information related to an unexpected occurrence, such as, for example: - a fault, e.g. a mechanical or electrical fault, and - Temperature or other environmental alarms.
[0019] Telemetry 117 includes information reported by AS 101 to WS 111 so that an operator can monitor the progress of AS 101 as it executes the plan.
[0020] 2 illustrates one example embodiment of ARE 103. ARE 103 includes a plan library 201, an event processing subsystem 203, a belief processing subsystem 205, an intention processing subsystem 207, and a planning subsystem 209. Plan library 201, event processing subsystem 203, belief processing subsystem 205, intention processing subsystem 207, and planning subsystem 209 are communicatively coupled to each other.
[0021] As discussed above and shown in FIG. 2, WS 111 transmits one or more plans 113 to AS 101. One or more plans 113 are received by plan library 201 for storage by plan library 201. In some embodiments, plan library 201 includes a database for storing the plans transmitted by WS 111. In some embodiments, plan library 201 is implemented in software. In other embodiments, plan library 201 is implemented in hardware. In yet other embodiments, plan library 201 is implemented using a combination of hardware and software.
[0022] The event processing subsystem 203 determines the current event. The event processing subsystem 203 may, for example, at least one of one or more messages 115 received from the WS 111 relating to one or more events; and - Information relating to one or more events sent by the PCS 107, as described in more detail below. This decision will be implemented based on the following: The event processing subsystem 203 then sends the current event to the planning subsystem 209. In some embodiments, the event processing subsystem 203 is implemented in software. In other embodiments, the event processing subsystem 203 is implemented in hardware. In yet other embodiments, the event processing subsystem 203 is implemented using a combination of hardware and software.
[0023] The belief processing subsystem 205 determines the current belief. The belief processing subsystem 205 makes this determination based, for example, on: at least one of one or more messages 115 received from the WS 111 relating to one or more beliefs; and - Information related to one or more cognitions transmitted by the PCS 107, as described in more detail below. Belief processing subsystem 205 then sends the current events to planning subsystem 209 and intent processing subsystem 207. In some embodiments, belief processing subsystem 205 is implemented in software. In other embodiments, belief processing subsystem 205 is implemented in hardware. In yet other embodiments, belief processing subsystem 205 is implemented using a combination of hardware and software.
[0024] The planning subsystem 209 selects a plan from the plan library 201 for execution by the intent processing subsystem 207. In some embodiments, the planning subsystem 209: - plans available in the plans library 201; - the current belief as determined by the belief processing subsystem 205, and the current event as determined by the event processing subsystem 203 This selection is made based on: The planning subsystem 209 sends the selected plan to the intent processing subsystem 207. In some embodiments, the planning subsystem 209 is implemented in software. In other embodiments, the planning subsystem 209 is implemented in hardware. In yet other embodiments, the planning subsystem 209 is implemented using a combination of hardware and software.
[0025] The intent processing subsystem 207 performs several different functions related to the processing and execution of intents, including: - Developing intentions based on a list of beliefs and plans applicable to the current beliefs; - Selecting the most appropriate intention to carry out; - sending the action appropriate to the selected intent to the PCS 107 to perform; and - Sending progress updates to WS111 via telemetry.
[0026] Returning to FIG. 1, the PSM 105 generalizes the platform 109. The PSM 105 is a hardware and software abstraction that directly interfaces with one or more processing elements, actuators, emitters, or sensors on the platform 109, which also interfaces with the PCS 107. The abstraction provided by the PSM separates platform 109 specific items, such as processing elements, actuators, emitters, or sensors, from the implementation of one or more algorithms that run on the PCS 107. Thus, the PSM 105 translates the control and operation of the specific hardware on the platform into a uniform standard model for algorithmic control and operation by the PCS 107. The benefit of the PSM is that the PCS algorithms are independent of platform specific items and therefore can be tested on any type of platform without modification. This reduces the aforementioned difficulties with development and testing. Examples of platforms include different types of ground robots or software simulations of ground robots. In some embodiments, the PSM 105 is implemented in software. In other embodiments, the PSM 105 is implemented using a combination of hardware and software.
[0027] As previously mentioned, the intent processing subsystem 207 sends one or more actions to the PCS 107 for execution. The PCS 107 receives these one or more actions and converts these one or more actions into commands for control of the platform 109. Other functions performed by the PCS 107 include: - acquiring information from the platform 109, for example from a sensor within the platform 109; - Transmitting information to the ARE 103, including: o Sending one or more cognitions to the belief processing subsystem 205. The one or more perceptions include an interpretation of the environment in which the AS 101 is operating. Examples of interpretations include: - known object locations, - New objects detected, Geolocation information, and Location and movement information, for example: ·acceleration, Speed, and ·Direction of travel, o Sending information related to one or more events to the event processing subsystem 203. In some embodiments, the PCS 107 is implemented in software. In other embodiments, the PCS 107 is implemented using a combination of hardware and software.
[0028] The platform 109 includes hardware necessary for the operation of the device in which the AS 101 is installed. The platform 109 includes, for example, sensors, actuators, emitters, computational elements, and communication subsystems such as radios.
[0029] 3A shows an example flow diagram of the operation of system 100. This flow diagram is described below with reference to FIGS.
[0030] In step 3A-01, WS 111 sends one or more plans 113 to plan library 201.
[0031] In step 3A-02, WS 111 sends one or more of messages 115 to ARE 103. As discussed above, in some embodiments, at least one of the one or more messages 115 is associated with one or more events. In other embodiments, at least one of the one or more messages 115 is associated with one or more beliefs. At least one message associated with an event is sent to event processing subsystem 203. At least one message associated with a belief is sent to belief processing subsystem 205.
[0032] In step 3A-03, PCS 107 transmits information related to one or more events and information related to one or more cognitions. The information related to the one or more events is transmitted to event processing subsystem 203. The information related to the one or more cognitions is transmitted to belief processing subsystem 205.
[0033] In step 3A-04, the event processing subsystem 203 determines the current event based on: - information relating to one or more events transmitted by the PCS 107; and - At least one message related to an event sent by WS111. The event processing subsystem 203 sends the current event to the planning subsystem 209 .
[0034] In step 3A-05, belief processing subsystem 205 determines a current belief based on: - one or more pieces of information related to the recognition transmitted by the PCS 107; and - At least one message related to beliefs sent by WS111. The belief processing subsystem 205 sends the current beliefs to the planning subsystem 209 and the intention processing subsystem 207.
[0035] In step 3A-06, the planning subsystem 209 selects a plan from the plan library 201 based on: - available plans in the Plan Library 201, - Current beliefs, and - Current events. The planning subsystem 209 sends the selected plan to the intent processing subsystem 207.
[0036] In step 3A-07, the intent processing subsystem 207 creates a list of intents 211 to execute one at a time. The list of intents 211 is created based on the selected plan that was submitted.
[0037] In step 3A-08, the intent processing subsystem 207 selects an intent from the list of intents 211 to execute based on: - intents in the list of created intents, and - the current belief received from the belief processing subsystem 205;
[0038] In step 3A-09, the intent processing subsystem 207 executes the selected intent. In some embodiments, this includes: - converting the selected intent into one or more actions; and - Sending one or more actions to the PCS 107, which converts them into commands for the control of the platform 109.
[0039] In step 3A-10, the intent processing subsystem 207 removes the executed intent from the list of intents 211.
[0040] In step 3A-11, the intent processing subsystem 207 sends progress updates to the WS 111 via sending telemetry 117 to the WS 111. This allows the WS 111 to monitor the progress of the AS 101 as it executes the plan.
[0041] In some embodiments, WS 111 is also an autonomous subsystem. One example embodiment is shown in Figure 3B. In Figure 3B, WS 111 includes an ARE 303. WS 111 provides an interface 305 through which an operator 307 monitors the execution of AS 101.
[0042] In embodiments where the WS and AS are autonomous subsystems, the WS and AS need to coordinate with each other. For example, in a coupled team of autonomous subsystems, it is cognitively difficult for an operator, such as operator 307 in FIG. 3B, to monitor the execution of multiple autonomous subsystems. Distributed reasoning can help reduce this difficulty. Distributed reasoning allows an operator to develop plans for a coupled team of autonomous subsystems and monitor the execution of the team plans. As previously discussed, distributed reasoning is a technique whereby each team member shares team objectives and achieves these by guiding each team member to individually achieve their own objectives.
[0043] Members of a combined team include WS and non-WS autonomous subsystems. A WS member is not necessarily limited to one WS. Thus, a combined team may include one or more WS autonomous subsystems and one or more non-WS autonomous subsystems.
[0044] An implementation of distributed reasoning requires cooperation between all members of a coupled team, which is achieved through sharing beliefs and hierarchical planning, as described below.
[0045] A system and method for implementing distributed reasoning in a team including multiple members is presented below. In FIG. 4A, team 401 includes members 403-1 to 403-N. Each member executes a hierarchical plan. For example, member 403-1 executes hierarchical plan 407-1, and member 403-2 executes hierarchical plan 407-2. In some embodiments, member 403-1 is coupled to at least one of members 403-2 to 403-N. For example, as shown in FIG. 4A, member 403-1 is coupled to member 403-2.
[0046] Hierarchical plan 407-1 includes team plan 409 and member plan 411-1. Hierarchical plan 407-2 includes team plan 409 and member plan 411-2. Team plan 409 is the same on each member 403-1 to 403-N and is related to the team objectives. The member plans are related to each member's own objectives. Because each member's own objectives may be similar to one another or may be different, the member plans may be similar to one another or may be different from one another. For example, in some embodiments, member plan 411-1 is the same as member plan 411-2. In other embodiments, member plan 411-1 is different from member plan 411-2. The derivation of member plans is described below.
[0047] Member 403-1 includes team autonomous subsystem 405-1-1 and member autonomous subsystem 405-1-3, which are coupled to each other. Team plan 409 is executed by team autonomous subsystem 405-1-1. Member plan 411-1 is executed by member autonomous subsystem 405-1-3. Team autonomous subsystem 405-1-1 is also coupled to other team autonomous subsystems on other members of the team. For example, member 403-2 includes team autonomous subsystem 413-1-1 and member autonomous subsystem 413-3. Team autonomous subsystem 405-1-1 is then coupled to team autonomous subsystem 413-1-1. In addition, member autonomous subsystem 405-1-3 is coupled to team autonomous subsystems on other members of the team.
[0048] The team autonomous subsystem 405 - 1 - 1 includes a team autonomous inference engine (ARE) 451 .
[0049] 4B illustrates an example embodiment of team autonomous subsystem 405-1-1 and member autonomous subsystem 405-1-3. Team autonomous subsystem 405-1-1 includes team ARE 451, while member autonomous subsystem 405-1-3 includes member ARE 453, PCS 455, PSM 457, and platform 459. PCS 455, PSM 457, and platform 459 are similar to PCS 107, PSM 105, and platform 109, respectively.
[0050] 5A illustrates one example embodiment of team ARE 451. Team ARE 451 includes team plan library 501, team belief processing subsystem 505, and team planning subsystem 503. These components perform similar roles as plan library 201, belief processing subsystem 205, and planning subsystem 209. Team plan library 501, team belief processing subsystem 505, and team planning subsystem 503 are communicatively coupled to one another.
[0051] Team plan library 501 stores the team members' hierarchical plans, including team plans received from other team members. As previously described, team plan 409 is the same for each team member. In some embodiments, team plan library 501 includes a database for storing the hierarchical plans. In some embodiments, team plan library 501 is implemented in software. In other embodiments, team plan library 501 is implemented in hardware. In yet other embodiments, team plan library 501 is implemented using a combination of hardware and software.
[0052] The team belief processing subsystem 505 receives one or more messages related to one or more team beliefs received from other team members, and member beliefs from the member belief processing subsystem 603. Based on the received message or messages and the received member beliefs, the team belief processing subsystem 505 keeps the team beliefs stored in the team belief processing subsystem 505 up to date, i.e., consistent with the team beliefs on all team members. As described below, the team belief processing subsystem 505 sends member specific belief updates to the member belief processing subsystem 603 and transmits the current team beliefs to the team planning subsystem 503.
[0053] The team planning subsystem 503 determines one or more member plans based on the team plan and the current team beliefs. The derived member plan or plans are stored in a member plan library 601, as described below.
[0054] Figure 5B shows an example flow diagram of the operation of team ARE 451. The operation of team ARE 451 is described with reference to Figures 5A and 5B.
[0055] In step 5B-01, team plan library 451 receives and stores team plans 409 from other team members 403-2 through 403-N.
[0056] In step 5B-02, similar to that described previously, team belief processing subsystem 505 receives one or more messages 463 from other team members 403-2 through 403-N, where at least one of the one or more messages 463 is related to one or more team beliefs.
[0057] At step 5B-03, the member belief processing subsystem 603 resident within the member autonomous inference engine 453 transmits information related to one or more member beliefs to the team belief processing subsystem 505.
[0058] In step 5B-04, a member intent processing subsystem 609 residing in the member ARE 453 sends member telemetry 617 to the team belief processing subsystem 505. In some embodiments, the member telemetry 617 is used to derive or update one or more team beliefs.
[0059] In step 5B-05, team belief processing subsystem 505 ensures that the team beliefs stored in team belief processing subsystem 505 are up to date, i.e., consistent with the team beliefs on all team members, as described above. Team belief processing subsystem 505 then sends member belief updates to member belief processing subsystem 603, where the member belief updates include - at least one message related to one or more team beliefs received from other team members 403-2 through 403-N; and - information related to one or more member beliefs transmitted by the member belief processing subsystem 603; Based on. The team belief processing subsystem 505 then stores the current team beliefs and transmits these team beliefs to the team planning subsystem 503 .
[0060] In step 5B-06, the team planning subsystem 503 determines one or more member plans based on: - team plans 409 stored in a team plan library 501; and - the current team belief received from the team belief processing subsystem 505; The team planning subsystem 503 then transmits one or more member plans to the member AREs 453 that reside in the member autonomy subsystems 405-1-3.
[0061] 6 illustrates one example embodiment of member ARE 453. Member ARE 453 includes member plan library 601, member belief processing subsystem 603, member planning subsystem 605, member event processing subsystem 607, and member intent processing subsystem 609. Member plan library 601, member belief processing subsystem 603, member planning subsystem 605, member event processing subsystem 607, and member intent processing subsystem 609 are coupled to each other. As previously described, member autonomy subsystem 405-1-3 is coupled to team autonomy subsystem 405-1-1.
[0062] The member plan library 601 stores one or more member plans sent by the team planning subsystem 503 to the member ARE 453 as described above. In some embodiments, the member plan library 601 includes a database to store the received member plans. In some embodiments, the member plan library 601 is implemented in software. In other embodiments, the member plan library 601 is implemented in hardware. In yet other embodiments, the member plan library 501 is implemented using a combination of hardware and software.
[0063] The member belief processing subsystem 603 determines the current member beliefs based, for example, on: - one or more pieces of information related to the recognition transmitted by the PCS455; and - the current team belief sent by the team belief processing subsystem 505;
[0064] The member event processing subsystem 607 determines a current member event based on information associated with one or more events sent by the PCS 455 .
[0065] The member intent processing subsystem 609 performs several different functions related to the processing and execution of member intent, including: - Developing member intentions based on member beliefs and a list of plans applicable to current beliefs; - Selecting the optimal member intent to execute; - sending the action appropriate to the selected member intent to the PCS 455 for execution; and - Sending progress updates to other team members 403-2 through 403-N and to the team belief processing subsystem 503.
[0066] 7 shows an example embodiment of a flow diagram of the operation of a system and method for distributed reasoning. The following description is provided with reference to FIGS.
[0067] In step 701 , the member plan library 601 receives one or more member plans from the team planning subsystem 503 .
[0068] In step 702 , the team belief processing subsystem 505 sends one or more member belief updates to the member belief processing subsystem 603 .
[0069] In step 703 , the PCS 455 sends information related to one or more member perceptions to the member belief processing subsystem 603 and information related to one or more member events to the member event processing subsystem 607 .
[0070] In step 704, the member event processing subsystem 607 determines a current member event based on information related to one or more member events sent by the member PCS 455. The member event processing subsystem 607 sends the current member event to the member planning subsystem 605.
[0071] In step 705, the member belief processing subsystem 603 determines the current member beliefs based on: - one or more member belief updates sent by the team belief processing subsystem 505; and - Information relating to one or more member identities transmitted by PCS455. The member belief processing subsystem 603 sends the current member beliefs to the member planning subsystem 605 and the member intent processing subsystem 609 .
[0072] In step 706, the member planning subsystem 605 determines a member plan based on: - member plans available in member plan library 601; - the current member beliefs received, and - Current member events received. The member plan creation subsystem 605 sends the selected member plan to the member intent processing subsystem 609 .
[0073] In step 707, the member intent processing subsystem 609 creates a list of member intents for execution 611 based on the received selected member plan.
[0074] In step 708, the member intent processing subsystem 609 selects one of the member intents from the list of member intents 611 for execution based on: - a list of member intents 611, and - The current member beliefs received.
[0075] In step 709, the member intent processing subsystem 609 executes the selected intent by: - converting the selected member intent into one or more member actions; and - Sending one or more member actions to member PCS 455 for transmission to PSM 457 and execution by platform 459.
[0076] In step 710, the member intent processing subsystem 609 removes the executed intent from the list of member intents.
[0077] In step 711 , the member intent processing subsystem 609 performs progress updates by sending member telemetry 617 to the other team members 403 - 2 through 403 -N and to the team belief processing subsystem 505 .
[0078] In some embodiments, each of members 403-1 through 403-N of team 401 broadcasts team communications to all other team members, eliminating the need for fully meshed connections between team members.
[0079] In another embodiment, team members 403-1 through 403-N dynamically determine a leader for team 401 based on continuous communication between the team members.
[0080] In some embodiments, when there is a break in continuous communication between team members, in which case one or more fragments of a team form, this is communicated as a team event, and one or more team leaders corresponding to the one or more fragments are determined.
[0081] When the first fragment and the second fragment recombine to create a reassembled fragment, a team event is communicated and a new team leader for the reassembled fragment is determined.
[0082] In still other embodiments, a fragment that does not include a WS will have no team plans to execute or will reach a state where it needs to communicate with a WS in order to proceed. In some of these embodiments, this will prompt the fragment to try and recombine with another fragment to create a reassembled fragment.
[0083] The aforementioned systems and methods may be applied in various fields. For example, the aforementioned systems and methods may be used in unmanned autonomous service vehicles for border control, border security, some forms of infrastructure monitoring, forest fire prevention and detection, mining, construction, transportation, agriculture and landscaping. The aforementioned systems and methods may also be used in fields such as industrial control and traffic management. The aforementioned systems and methods for implementing distributed reasoning result in more efficient utilization of the resources of an autonomous team, thereby leading to improved efficiency in the achievement of objectives and other potential benefits, such as reduced power consumption and faster execution times for a given set of objectives. As stated above, distributed reasoning is a divide and conquer approach to teamwork that results in more resilient and responsive teams.
[0084] In one example embodiment, a system for autonomous operation of a device includes: an autonomous subsystem including: a first autonomous inference engine (ARE) further including a plan library storing one or more plans, where at least some of the one or more plans are available, an event processing subsystem, a belief processing subsystem, an intention processing subsystem, and a planning subsystem, where the plan library, the event processing subsystem, the belief processing subsystem, the intention processing subsystem, and the planning subsystem are coupled to each other, and a platform control system (PCS). The first ARE is coupled to the PCS. The autonomous subsystem is coupled to a workstation, where the workstation sends a first one or more messages related to the one or more beliefs to the belief processing subsystem and a second one or more messages related to the one or more events to the event processing subsystem. The PCS sends information related to the one or more cognitions to the belief processing subsystem and information related to the one or more events to the event processing subsystem. The belief processing subsystem determines a current belief based on the received first one or more messages and information related to the one or more cognitions. The belief processing subsystem sends the current belief to the planning subsystem and the intent processing subsystem. The event processing subsystem determines the current event based on information related to the received second one or more messages and the one or more events sent by the PCS. The event processing subsystem sends the current event to the planning subsystem. The planning subsystem selects one of the one or more plans stored in the plan library based on at least some of the available one or more plans, the current belief, and the current event. The planning subsystem sends the selected plan to the intent processing subsystem. The intent processing subsystem creates a list of intentions based on the received selected plan. The intent processing subsystem selects an intention from the list of created intentions to execute based on the list of created intentions and the current belief.The intent processing subsystem executes the selected intent, where execution includes the intent processing subsystem creating one or more actions based on the selected intent and the intent processing subsystem sending the one or more actions to the PCS.
[0085] In one or more of the preceding examples, the workstation transmits at least one plan to a plan library for storage, the workstation includes a second ARE, and the workstation includes an interface to enable interaction between the workstation and an operator.
[0086] In one or more of the foregoing examples, the autonomous subsystem includes a platform specific module (PSM) and a platform, the first ARE, the PCS, the PSM and the platform being coupled together, the platform including platform hardware for operation of the device, and the PSM converting control and operation of the platform hardware into a uniform standard model.
[0087] In one or more of the foregoing examples, the PSM isolates the platform hardware from the implementation of one or more algorithms executing on the PCS.
[0088] In one or more of the above examples, the intent processing subsystem removes the executed intent from the list of intents.
[0089] In one or more of the aforementioned examples, the intent processing subsystem sends telemetry to a workstation to enable the workstation to monitor the autonomous subsystem.
[0090] In one or more of the aforementioned examples, the PCS receives the one or more actions, and the PCS converts the one or more actions into commands for control of the platform.
[0091] In one example embodiment, a method for autonomous operation of a device includes storing, by a plan library, one or more plans, where at least some of the one or more plans are available; transmitting, by a workstation, a first one or more messages related to the one or more beliefs to a belief processing subsystem and a second one or more messages related to the one or more events to an event processing subsystem; transmitting, by a platform control system (PCS), information related to the one or more cognitions to the belief processing subsystem and information related to the one or more events to the event processing subsystem; determining, by the belief processing subsystem, a current belief based on the received first one or more messages and the information related to the one or more cognitions; transmitting, by the belief processing subsystem, the current belief to a planning subsystem and an intent processing subsystem; determining, by the event processing subsystem, a current event based on the received plan, a current belief, and the current event; selecting, by the planning subsystem, a plan from one or more plans stored in a plan library based on at least some of the available one or more plans, the current belief, and the current event; transmitting, by the planning subsystem, the selected plan to the intent processing subsystem; creating, by the intent processing subsystem, a list of intentions based on the received selected plan; selecting, by the intent processing subsystem, an intention from the list of created intentions and the list of created intentions for execution based on the current belief; executing, by the intent processing subsystem, the selected intention, where executing includes creating, by the intent processing subsystem, one or more actions based on the selected intention; and transmitting, by the intent processing subsystem, the one or more actions to the PCS.
[0092] In one or more of the preceding examples, the workstation includes a second ARE, the workstation including an interface to enable interaction between the workstation and an operator, and the method further includes transmitting, by the workstation, at least one plan of the plan library for storage.
[0093] In one or more of the preceding examples, the method further includes translating, by a platform specific module (PSM), control and operation of platform hardware within the platform into a uniform standard model.
[0094] In one or more of the foregoing examples, the PSM isolates the platform hardware from the implementation of one or more algorithms executing on the PCS.
[0095] In one or more of the aforementioned examples, the method further includes removing, by the intent processing subsystem, the executed intent from the list of intents.
[0096] In one or more of the foregoing examples, the plan library, the event processing subsystem, the belief processing subsystem, the intent processing subsystem, the planner subsystem, the PSM, the PCS, and the platform reside on an autonomous subsystem. The method further includes transmitting, by the intent processing subsystem, telemetry to a workstation to enable the workstation to monitor the autonomous subsystem.
[0097] In one or more of the aforementioned examples, the method further includes: receiving, by the PCS, the one or more actions; and converting, by the PCS, the one or more actions into commands for control of the platform.
[0098] In one example embodiment, a system for implementing distributed reasoning for autonomous operation in members of a team includes a first member, where the first member includes a first team autonomous subsystem and a first member autonomous subsystem coupled to each other. The first member executes a first hierarchical plan including a team plan and a first member plan, where the team plan is related to one or more team objectives and the first member plan is related to one or more self objectives of the first member. The executing includes the first team autonomous system executing the team plan and the first member autonomous system executing the first member plan.
[0099] In one or more of the foregoing examples, the members of the team include a second member coupled to the first member. The second member includes a second team autonomous subsystem and a second member autonomous subsystem coupled to each other. The second member executes a second hierarchical plan including a team plan and a second member plan. The second member plan is related to one or more self objectives of the second member. The executing includes the second team autonomous system executing the team plan and the second member autonomous system executing the second member plan.
[0100] In one or more of the above instances, the first member plan is the same as the second member plan.
[0101] In one or more of the above instances, the first member plan is different from the second member plan.
[0102] In one or more of the preceding examples, the first team autonomous subsystem includes a first team autonomous inference engine (ARE). The first team ARE includes a team plan library, a team belief processing subsystem, and a team plan development subsystem. The team plan library receives a team plan from a second member, and the team belief processing subsystem receives at least one message from the second member related to the one or more team beliefs.
[0103] In one or more of the preceding examples, the first member autonomy subsystem includes a member ARE. The member ARE includes a member belief processing subsystem. The member belief processing subsystem sends information related to one or more member beliefs to a team belief processing subsystem. The member ARE includes a member intent processing subsystem. The member intent processing subsystem sends member telemetry to the team belief processing subsystem. The team belief processing subsystem ensures that team beliefs stored in the team belief processing subsystem are up to date.
[0104] In one or more of the aforementioned examples, the team belief processing subsystem sends a member belief update to the member belief processing subsystem, the member belief update based on at least one message related to the one or more team beliefs received from the second member and information related to the one or more member beliefs received from the member belief processing subsystem.
[0105] In one or more of the above examples, the team belief processing subsystem sends the current team belief to the team planning subsystem, which determines one or more member plans, and the team planning subsystem sends the one or more member plans to the member AREs.
[0106] In one or more of the aforementioned examples, the team planning subsystem determines one or more member plans based on team plans stored in a team plan library and current team beliefs received from the team belief processing subsystem.
[0107] In one example embodiment, a method for implementing distributed reasoning for autonomous operation in members of a team, the members of the team including a first member, where the first member includes a first team autonomous subsystem and a first member autonomous subsystem coupled to each other, the method includes: executing, by the first member, a hierarchical plan including a team plan and a first member plan, where the team plan is related to one or more team objectives and the first member plan is related to one or more self objectives of the first member, and executing the hierarchical plan includes executing, by the first team autonomous subsystem, the team plan and executing, by the first member autonomous subsystem, the first member plan.
[0108] In one or more of the foregoing examples, the members of the team include a second member coupled to the first member. The second member includes a second team autonomous subsystem and a second member autonomous subsystem coupled to each other. The method includes: executing, by the second member, a second hierarchical plan including a team plan and a second member plan, where the second member plan is related to one or more self objectives of the second member. Executing the second hierarchical plan includes executing, by the second team autonomous system, the team plan and executing, by the second member autonomous system, the second member plan.
[0109] In one or more of the above instances, the first member plan is the same as the second member plan.
[0110] In one or more of the above instances, the first member plan is different from the second member plan.
[0111] In one or more of the preceding examples, the first team autonomous subsystem includes a first team autonomous inference engine (ARE). The first team ARE includes a team plan library, a team belief processing subsystem, and a team plan development subsystem. The method includes: receiving, by the team plan library, a team plan from a second member; and receiving, by the team belief processing subsystem, at least one message related to the one or more team beliefs from the second member.
[0112] In one or more of the preceding examples, the first member autonomy subsystem includes a member ARE. The member ARE includes a member belief processing subsystem and a member intent processing subsystem. The method further includes: transmitting, by the member belief processing subsystem, information related to the one or more member beliefs to the team belief processing subsystem, transmitting, by the member intent processing subsystem, member telemetry to the team belief processing subsystem, and ensuring, by the team belief processing subsystem, that the team beliefs stored in the team belief processing subsystem are up to date.
[0113] In one or more of the preceding examples, the method further includes sending, by the team belief processing subsystem, a member belief update to the member belief processing subsystem, where the member belief update is based on at least one message related to the one or more team beliefs received from the second member and information related to the one or more member beliefs received from the member belief processing subsystem.
[0114] In one or more of the aforementioned examples, the method further includes: sending the current team belief to the team planning subsystem by the team belief processing subsystem; determining one or more member plans by the team planning subsystem; and sending the one or more member plans to the member ARE by the team planning subsystem.
[0115] In one or more of the aforementioned examples, the determination of the one or more member plans is based on a team plan stored in a team plan library and a current team belief received from a team belief processing subsystem.
[0116] Although the foregoing algorithms, including those that refer to the foregoing flow charts, have been described individually, it should be understood that any of the algorithms disclosed herein may be combined in any combination. Any of the methods, algorithms, implementations, or procedures described herein may include machine-readable instructions for execution by: (a) a processor, (b) a controller, and / or (c) any other suitable processing device. Those skilled in the art will readily appreciate that any algorithm, software, or method disclosed herein may be implemented in software stored on a non-transitory tangible medium, such as a flash memory, CD-ROM, floppy disk, hard drive, digital versatile disk (DVD), or other memory device, although the entire algorithm and / or portions thereof may alternatively be executed by devices other than a controller and / or may be implemented in firmware or dedicated hardware in a well-known manner (e.g., it may be implemented by an application specific integrated circuit (ASIC), a programmable logic device (PLD), a field programmable logic device (FPLD), discrete logic, etc.). Also, some or all of the machine-readable instructions depicted in any flow diagrams shown herein may be implemented manually, as opposed to automatically, by a controller, processor, or similar computing device or machine. Additionally, although particular algorithms have been described with reference to flow charts set forth herein, those skilled in the art will readily appreciate that numerous other ways of implementing the example machine-readable instructions may alternatively be used. For example, the order of execution of the blocks may be changed, and / or some of the described blocks may be changed, eliminated, or combined.
[0117] It should be noted that the algorithms are illustrated and discussed herein as having various modules performing certain functions and interacting with each other. It should be understood that these modules are merely separated based on their functionality for illustrative purposes and represent computer hardware and / or executable software code stored in a computer readable medium for execution on suitable computing hardware. The various functions of the different modules and units may be combined or separated as hardware and / or software stored in a non-transitory computer readable medium as described above as modules in any manner and may be used individually or in combination.
[0118] While particular implementations and applications of the present disclosure have been illustrated and described, it is to be understood that the disclosure is not limited to the exact construction and configuration disclosed herein, and that various modifications, changes, and variations may become apparent from the foregoing description without departing from the spirit and scope of the invention as defined in the appended claims.
Claims
1. A system for the autonomous operation of a device, A planning library that stores one or more plans, wherein at least some of the one or more plans are available, Event processing subsystem, Belief processing subsystem, Intent processing subsystem, and Planning subsystem A first autonomous inference engine (ARE) comprising the planning library, the event processing subsystem, the belief processing subsystem, the intent processing subsystem, and the planning subsystem, all interconnected, and A platform control system (PCS) to which the first ARE is connected. Includes an autonomous subsystem, The autonomous subsystem is connected to the workstation, The aforementioned workstation A first set of one or more messages relating to one or more beliefs is sent to the belief processing subsystem, and A second set of one or more messages related to one or more events is sent to the event processing subsystem. Send, and further, The aforementioned PCS, The belief processing subsystem receives one or more pieces of information related to cognition, and Information related to one or more events is provided to the event processing subsystem. Send, The belief processing subsystem determines the current belief based on the received first one or more messages and the information relating to the one or more cognitions. The belief processing subsystem transmits the current belief to the planning subsystem and the intention processing subsystem. The event processing subsystem determines the current event based on the received second one or more messages and the information related to the one or more events transmitted by the PCS. The event processing subsystem transmits the current event to the planning subsystem. The aforementioned planning subsystem At least some of the one or more available plans, The aforementioned current beliefs, and The current event Based on this, select one of the one or more plans stored in the plan library, The planning subsystem transmits the selected plan to the intent processing subsystem. The intent processing subsystem creates a list of intents based on the selected plan received, The intent processing subsystem, The list of intentions created, and The aforementioned current belief Based on this, select an intent from the list of intents created above in order to execute it. The intent processing subsystem executes the selected intent, and the execution is The intent processing subsystem creates one or more actions based on the selected intent, and The intent processing subsystem transmits the one or more actions to the PCS. A system that includes this.
2. The workstation sends at least one plan to the plan library for storage. The workstation includes a second ARE, and The workstation includes an interface that enables the workstation and the operator to interact with each other. The system according to claim 1.
3. The autonomous subsystem includes a platform-specific module (PSM) and a platform. The first ARE, the PCS, the PSM, and the platform are connected to each other. The platform includes platform hardware for the operation of the device, and The PSM converts the control and operation of the platform hardware into a uniform standard model. The system according to claim 1.
4. The system according to claim 3, wherein the PSM separates the platform hardware from the implementation of one or more algorithms that run on the PCS.
5. The system according to claim 1, wherein the intent processing subsystem removes the executed intent from the list of intents.
6. The system according to claim 1, wherein the intent processing subsystem transmits telemetry to the workstation to enable the workstation to monitor the autonomous subsystem.
7. The PCS receives the one or more actions, and The PCS converts the one or more actions into commands for controlling the platform. The system according to claim 3.
8. A method for the autonomous operation of a device, One or more plans are available, and these one or more plans are stored in a plan library. A first set of one or more messages relating to one or more beliefs is sent to the belief processing subsystem, A second set of one or more messages related to one or more events is sent to the event processing subsystem. The workstation transmits and The belief processing subsystem receives one or more pieces of information related to cognition, and Information related to one or more events is provided to the event processing subsystem. The Platform Control System (PCS) transmits the data, The belief processing subsystem determines the current belief based on the received first one or more messages and the information related to the one or more cognitions. The current belief is transmitted to the planning subsystem and the intention processing subsystem by the belief processing subsystem. Based on the received second one or more messages and information related to the one or more events, the event processing subsystem determines the current event. The event processing subsystem transmits the current event to the planning subsystem. At least some of the one or more available plans, The aforementioned current beliefs, and The current event Based on this, the planning subsystem selects one of the one or more plans stored in the planning library. The selected plan is transmitted to the intent processing subsystem by the planning subsystem. Based on the selected plan received, the intent processing subsystem creates a list of intentions. The list of intentions created, and The aforementioned current belief Based on this, the intent processing subsystem selects an intent from the created intent list to be executed. The selected intent is to be executed by the intent processing subsystem, and the execution is Based on the selected intent, the intent processing subsystem creates one or more actions, and The intent processing subsystem transmits the one or more actions to the PCS. Including the aforementioned execution Methods that include...
9. The workstation includes a second ARE, The workstation includes an interface that enables the workstation and the operator to interact with each other. The method according to claim 8, further comprising transmitting at least one plan to the plan library for storage by the workstation.
10. The control and operation of platform hardware within a platform are converted to a uniform standard model by platform-specific modules (PSMs). The method according to claim 8, further comprising:
11. The method according to claim 10, wherein the PSM separates the platform hardware from the implementation of one or more algorithms that are executed on the PCS.
12. The intent processing subsystem removes the executed intent from the list of intents. The method according to claim 8, further comprising:
13. The aforementioned planning library, The event processing subsystem, The aforementioned belief processing subsystem, The aforementioned intent processing subsystem The aforementioned planning subsystem, The aforementioned PSM, The aforementioned PCS, and The aforementioned platform It resides on the autonomous subsystem, The method according to claim 11, further comprising transmitting telemetry to the workstation by the intent processing subsystem so that the workstation can monitor the autonomous subsystem.
14. One or more actions are received by the PCS, The PCS converts one or more of the aforementioned actions into commands for controlling the platform. The method according to claim 10, further comprising:
15. A system for implementing distributed inference for autonomous operation among team members, The members of the aforementioned team include the first member, The first member includes a first team autonomous subsystem and a first member autonomous subsystem that are interconnected with each other. The first member executes a first hierarchical plan, which includes a team plan and a first member plan. The team plan relates to one or more team objectives, and The first member plan relates to one or more of the first members' own purposes, The aforementioned execution, The first team autonomous system executes the team plan, and The first member autonomous system executes the first member plan. A system that includes this.
16. The members of the aforementioned team include a second member connected to the first member, The second member includes a second team autonomous subsystem and a second member autonomous subsystem that are interconnected. The second member executes a second hierarchical plan, which includes the team plan and the second member plan. The second member plan relates to one or more of the second member's own purposes, and furthermore, the execution is The second team autonomous system executes the team plan, and The second member autonomous system executes the second member plan. The system according to claim 15, including the system described in claim 15.
17. The system according to claim 16, wherein the first member plan is the same as the second member plan.
18. The system according to claim 16, wherein the first member plan is different from the second member plan.
19. The first team autonomous subsystem includes a first team autonomous inference engine (ARE), and the first team ARE is Team Planning Library Team belief processing subsystem, and Team Planning Subsystem It includes, and further, The team plan library receives a team plan from the second member, and The team belief processing subsystem receives at least one message relating to one or more team beliefs from the second member. The system according to claim 16.
20. The first member autonomous subsystem includes a member ARE, The member ARE includes a member belief processing subsystem, The member belief processing subsystem transmits information related to one or more member beliefs to the team belief processing subsystem. The member ARE includes a member intent processing subsystem, The member intent processing subsystem transmits member telemetry to the team belief processing subsystem. The team belief processing subsystem ensures that the team beliefs stored in the team belief processing subsystem are up-to-date. The system according to claim 19.