Method for generating text description of determination automatically made when robot device is controlled

The method enhances interpretability in autonomous robotic devices by encoding control process data into textual descriptions, improving safety and reconfiguration capabilities.

JP2025178213APending Publication Date: 2025-12-05ROBERT BOSCH GMBH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2025086363
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-05-24
Filing Date
2025-05-23
Publication Date
2025-12-05

AI Technical Summary

Technical Problem

Autonomous robotic devices, such as vehicles, lack interpretability in their decision-making processes, making it difficult to understand why they take certain actions, which is crucial for safety and reconfiguration.

Method used

A method that processes data through a control process chain mechanism, encodes inputs, outputs, and protocols into decision process encodings, and selects textual descriptions from a set to explain control actions, using machine learning models to match the decision process with pre-defined or generated comments.

Benefits of technology

Provides understandable explanations for control actions, improving safety and enabling reconfiguration by users, reducing development cycles, and enhancing user understanding of decision-making processes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025178213000001_ABST
    Figure 2025178213000001_ABST
Patent Text Reader

Abstract

To provide a method for generating a text description of determination automatically made when a robot device is controlled, according to various embodiments.SOLUTION: A method for generating a text description of determination automatically made when a robot device is controlled includes the steps of: processing data including information on peripheral environment of a robot device, by a control processing process chain mechanism having a plurality of modules, in which at least a part of the module outputs a protocol related to an intermediate step based on a rule performed by each of the modules, during control; encoding input of at least a part of the modules, output of at least a part of the modules, and a protocol output by at least a part of the modules, to determination process encoding; and selecting a text description for at least one determination made by the control processing process chain mechanism during processing of data, from a collection of text descriptions in dependence on the determination process encoding.SELECTED DRAWING: Figure 3
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present disclosure relates to a method for generating textual descriptions of decisions made automatically when controlling a robotic device. [Background technology]

[0002] For autonomous control of robotic devices, especially autonomous vehicles, complex process chains using machine learning models are typically used. A typical problem here is interpretability, i.e., understanding why such process chains (especially machine learning models) make a particular decision. This is useful, for example, when determining whether to potentially reconfigure an autonomous robotic device because it is (at least apparently) not behaving as desired or is behaving incorrectly. Such understanding can also improve safety, for example, by explaining control decisions to a user in advance and allowing the user to potentially override the control decisions. Therefore, an approach that provides understandable explanations of decisions automatically made when controlling a robotic device is desirable.

[0003] The publication "Learning transferable visual models from natural language supervision" by Alec Radford et al., International conference on machine learning, pp. 8748-8763, PMLR, 2021 (hereinafter referred to as "Reference 1") describes a CLIP method that jointly trains an image encoder and a text encoder to find appropriate combinations of images and matching text for input images and text. [Prior art documents] [Non-patent literature]

[0004] [Non-Patent Document 1] Alec Radford et al., "Learning transferable visual models from natural language supervision," International conference on machine learning, pp. 8748-8763, PMLR, 2021. Summary of the Invention [Means for solving the problem]

[0005] According to various embodiments, a method is provided for generating textual descriptions of decisions automatically made when controlling a robotic device, the method comprising the steps of: processing data containing information about an environment surrounding the robotic device by a control process chain mechanism having a plurality of modules, at least some of the modules outputting protocols related to rule-based intermediate steps to be taken by the respective modules when controlling; encoding inputs of at least some of the modules, outputs of at least some of the modules, and the protocols output by at least some of the modules into a decision process encoding; and selecting, from a set of textual descriptions depending on the decision process encoding, a textual description for at least one decision made by the control process chain mechanism while processing the data.

[0006] The above-described method allows for providing informative commentary on decisions regarding each control action taken or intended to be taken by an autonomous robotic device, such as an autonomous vehicle (AV) or an autonomous robot.

[0007] This allows a developer or user to understand why the autonomous robotic device transitioned to a situation where it decided to take a particular control action. For example, during a test drive of an autonomous vehicle, a developer would no longer need to guess why a particular action was taken by the autonomous vehicle. This can contribute to shorter development cycles because a particular test scenario can be repeated with additional information about why the autonomous vehicle (i.e., the particular controller selecting the control action) made a particular decision. Such comments are also useful to the user because they can reflect on specific instances during operation where, for example, the autonomous vehicle made a particular decision. If the user disagrees with these decisions, they can transition to a situation where they can reconfigure the autonomous vehicle to prevent the autonomous vehicle from making those decisions (and avoid the resulting undesired action). Proactively informing users about driving decisions can also improve safety because users would be able to recognize error cases that could lead to potentially safety-critical actions and override the autonomous control to implement the corresponding safety action.

[0008] In the following, various examples are presented.

[0009] Example 1, as described above, is a method for generating decisions to be made automatically in controlling a robotic device.

[0010] Example 2 is a method according to Example 1, comprising the steps of selecting text descriptions from a set of text descriptions, and for each text description from the set of text descriptions, selecting the one with the best score (e.g., Euclidean distance in encoding space) by evaluating the degree of agreement between the (text) encoding of the text description and the decision process encoding.

[0011] This allows for easy comment generation without the need for a generative model, since it also allows for the use of pre-defined comment texts. The encoder for encoding the text descriptions of a set of text descriptions can also be trained together with the processing chain mechanisms or after their training.

[0012] Example 3 is a method according to example 1 or 2, comprising generating text descriptions of a set of text descriptions using a generative model (e.g., a large-scale language model (LLM)) that receives inputs including internal states, variable values, and / or intermediate results of a control processing chain mechanism.

[0013] Using (and training) such models requires a reasonable amount of effort, but with proper training, the quality and variety of text descriptions can be improved. The inputs to the generative model can also include, at least in part, the inputs and / or outputs of the processing chain.

[0014] Example 4 is the method of any one of examples 1 to 3, the method including displaying the generated text description on a display of the robotic device.

[0015] This explains to the user the decision that has been made.

[0016] Example 5 is the method of any one of Examples 1 to 4, wherein the robotic device is an autonomous vehicle controlled in a traffic scene.

[0017] Particularly in such a context, comments on control actions for example for the user (i.e. the driver, in this case typically a layman) are important in order to relive the vehicle's behavior.

[0018] Example 6 is a control device (for a robotic device), the control device being configured to perform the method according to any one of Examples 1 to 5.

[0019] This control device is particularly capable of implementing a process chain mechanism.

[0020] Example 7 is a computer program comprising instructions that, when executed by a processor, cause the processor to perform the method according to any one of Examples 1 to 5.

[0021] Example 8 is a computer-readable medium having stored thereon instructions that, when executed by a processor, cause the processor to perform a method described in any one of Examples 1 to 5.

[0022] In the drawings, like reference numbers generally refer to like parts throughout the various views. The drawings are not necessarily to scale, emphasis instead being placed herein generally on illustrating the principles of the invention. In the following description, various aspects are described with reference to the following drawings: [Brief explanation of the drawings]

[0023] [Figure 1] FIG. [Figure 2] FIG. 1 shows a process chain consisting of modules for controlling a vehicle. [Figure 3] 1 is a flowchart illustrating a method for generating a textual description of decisions automatically made when controlling a robotic device, according to one embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0024] The following detailed description refers to the accompanying drawings, which show details and embodiments specific to the description of the present disclosure in which the present invention can be implemented. Other embodiments can be used and structural, logical, and electrical changes can be made without departing from the scope of protection of the present invention. Various embodiments of the present disclosure are not necessarily mutually exclusive, as some embodiments of the present disclosure can be combined with one or more other embodiments of the present disclosure to form new embodiments.

[0025] Various examples are described in more detail below.

[0026] FIG. 1 shows a vehicle 101 .

[0027] In the example of FIG. 1, a vehicle 101, for example, a motor vehicle such as a private car or a commercial vehicle, includes a vehicle control device (for example, an electronic control unit (ECU)) 102.

[0028] The vehicle control device 102 includes a data processing component, such as a processor (e.g., a CPU (Central Processing Unit)) 103, and a memory 104 for storing control software 107 on which the vehicle control device 102 operates and data processed by the processor 103. The processor 103 executes the control software 107.

[0029] For example, the stored control software (computer program) includes instructions that, when executed by the processor, cause the processor 103 to perform driving assistance functions or even autonomously control the vehicle.

[0030] The control software 107 is transmitted from the computer system 105 to the vehicle 101, for example, via the network 106 (or even using a storage medium such as a memory card). This can be done while driving (or at least while the vehicle 101 is with the user), since the control software 107 is updated with new versions over time, for example.

[0031] The control software 107 can be trained, for example, using machine learning (ML), i.e., the control software 107 implements one or more ML models 108 (or "machine learning models"), which, in this example, are trained based on training data from the computer system 105. That is, the computer system 105 implements an ML training algorithm for training the one or more ML models 108.

[0032] The control software 107 determines control actions for the vehicle (e.g. steering actions, braking actions, etc.) from input data 109 that are available on its own and contain information about the surrounding environment or from which it derives information about the surrounding environment on its own (e.g. by detecting other road users, e.g. other vehicles). For example, these input data 109 could be sensor data from a camera on the vehicle or information obtained via communication with other vehicles or roadside devices, etc.

[0033] These sensor data (and possibly additional information such as digital maps or information sent to the vehicle from other road users or infrastructure units) are processed by a (control) process chain, for example a modular process chain as shown in Figure 2, in order to control the vehicle. The vehicle to be controlled is also referred to as the own vehicle in the following.

[0034] FIG. 2 shows a process chain consisting of modules 201, 202, and 203 for controlling a vehicle.

[0035] In this example, the process chain includes a perception module 201, a prediction module 202, and a planning module 203 (i.e., a chain of modules). These modules may be realized, at least in part, by a machine learning (ML) model such as a neural network, and in this case, it is assumed below that the process chain, and thus the resulting driving strategy (or general decision strategy), has already been trained.

[0036] The perception module 201 receives control input data 204 that contains information about the traffic scene, such as sensor data (e.g., camera data, LiDAR data, radar data), map information, and / or information received (e.g., via Vehicle-to-Everything (V2X) communication).

[0037] The perception module 201 captures the surroundings of the vehicle, for example by locating the vehicle (or other objects), detecting objects (e.g., detecting other road users), and tracking objects (e.g., other road users). The processing chain provides perception results 205, for example, object lists, occupied gates, etc., around the vehicle.

[0038] The prediction module 202 makes predictions about the future state of the vehicle's surroundings based on prediction results, such as the future trajectories of other road users. However, it is also possible to determine ("predict") the possible behavior of the own vehicle itself. The prediction module 202 provides prediction results (e.g., predictions about trajectories (or trajectory regions) for other road users).

[0039] The planning module 203 searches for a safer, more convenient and / or faster trajectory for the ego-vehicle based on the prediction results, depending on the prioritization. Its output is a planning result 207, e.g., the ego-trajectory in the form of path points or a behavior strategy specification (e.g., specification of boundary conditions to be respected). These are then converted (possibly by further modules) into control actions (braking, steering, etc.). Alternatively, the planning module 203 itself can provide these (low-level) control actions.

[0040] That is, the process chain mechanism performs location, perception, prediction and planning, for example: Localization and perception with the aim of accurately describing where the vehicle is located in the surrounding environment or providing a reliable modeling of the 3D surrounding environment; - predicting the actions of other vehicles or their intended actions; - Planning the route your vehicle should take This will be carried out by:

[0041] Typically, the self-vehicle (i.e., the vehicle controller 102, for example, implementing a process chain mechanism) makes control decisions according to a particular strategy that assumes optimal action based on its perception of its surroundings. According to various embodiments, generating and outputting textual comments about the behavior of the autonomous vehicle, such as textual comments of control actions (i.e., rationale for the selection of control actions), improves the explainability and clarity of the actions taken by the vehicle (i.e., its control decisions).

[0042] Ensuring passenger comfort, reliability, and safety are crucial pillars of autonomous driving. Systems that comment on the driving behavior of autonomous vehicles in real time can contribute to achieving this goal. Such systems provide insight into the vehicle's decision-making process and facilitate a deeper understanding of its operating logic.

[0043] In doing so, according to various embodiments, not only are control actions selected by the end-to-end architecture (e.g., for machine learning (ML) such as neural networks) described (i.e., for example, comment text is output for a driving start), but also decisions made by (non-ML-based) "classical" rule-based components (which perform intermediate steps in rule-based processing), such as, for example, filtering using thresholds or graph pruning (those nodes represent different behavioral regimes and are therefore removed), are commented upon.

[0044] Furthermore, various embodiments generate comments that can be used by the respective developers (e.g., of the control software 107) to understand error cases and improve control, thereby enabling shorter development cycles and faster time to market (TTM).

[0045] According to various embodiments, the vehicle control unit 102 thereby generates explanatory comments for control decisions made using its modular process chaining mechanism based on inputs 204, intermediate results (perception results 205 and prediction results 206; these intermediate results are inputs for subsequent modules) and outputs (planning results 207), as well as a protocol ("log") 215 describing the decisions made by the rule-based components of modules 201, 202, and 203.

[0046] The intermediate results may include interpretable representations such as occupancy grids or object identifiers (transferred between modules or even between sub-modules of the above mentioned modules) as well as latent features (e.g., camera image feature maps extracted from camera images by an image processing module of the perception module 201, or extracted feature maps that are then processed by a neural object recognition network).

[0047] The input 204, intermediate results 205, 206 and output 207 are encoded using a first encoder 208 to generate a comprehensive description feature. Similarly, the protocol is encoded by a second encoder (text encoder) 209. The first encoder 208 and the second encoder 209 are implemented, for example, by ML (machine learning) models, for example neural networks, which are trained, for example, together with a process chain mechanism or also for subsequent comment generation.

[0048] All encodings 210 so generated are combined with each other to generate a common "decision process encoding" 211 for the decision process in each traffic scene (information about which is also included in the decision process encoding 211) that led to each driving decision (i.e., each behavior or one or more control actions).

[0049] Additionally, a set of possible comment texts 212 (e.g., explanations of why a decision was made) are encoded into respective comment encodings 214 using a third encoder (text encoder) 213 (this can be done in advance, for example, in the computer system 105, or the comment encodings 214 can be loaded into the vehicle 100).

[0050] The controller 102 compares the common encoding 211 with the comment encoding 214 and selects the comment text whose comment encoding 214 best matches the common encoding 211 .

[0051] To generate corresponding, mutually consistent encodings, i.e., to train the encoders 208, 209, 213 so that they generate a common encoding 211 that matches well with the comment encoding 214 of a comment that matches this objective for a particular control decision (i.e., processing by a processing chain mechanism), a similar approach can be used to generate encodings for images that match with the encoding of a text description that matches this objective, such as the approach described in Reference 1.

[0052] By comparing the common encoding 211 with each of the comment encodings 214 (e.g., by calculating the respective Euclidean distances between the respective encodings), each of the comment encodings 214 is assigned a score (or rating, i.e., a "score") that indicates how well the respective comment (text description) matches the ego-vehicle's decision in the traffic scene. The control device 102 selects the best matching comment (i.e., the comment with the highest score) and outputs it, for example, to the display 110 on the dashboard of the vehicle 101. The comment is thereby selected depending on the common encoding (i.e., decision process encoding) 211.

[0053] The comment text 212 may be pre-generated or generated by, for example, a (possibly pre-trained) LLM (large-scale language model) based on the internal state and variables of the processing chain mechanism and / or the input 204, intermediate results (perception results 205 and prediction results 206) and output (planning results 207), and optionally also the protocol ("log") 215. To this end, this is obtained for example by implementing the processing chain mechanism and training one or more inner layers of a deep neural network (DNN) to learn the correlation between some parts of the decision strategy and the embedding space of the LLM and provide a text reason (or multiple reasons for the selection) for the action selected by the decision strategy. The purpose here is, for example, to provide text tokens ("bits" of text) that are inherently rich and provide the user with additional information that would not otherwise be available.

[0054] Overall, the process chain mechanism (including the use of one or more trained neural networks) provides a planning result 207 (i.e., a control action) as well as a text description commenting on the decisions made in generating the planning result 207 (i.e., in selecting a control action, or even in selecting a trajectory, etc.). As mentioned above, the comment generation can involve a pre-trained, and thus worldwide, knowledge-generating Large Language Model (LLM). This LLM can be trained together with the control strategy (e.g., through training traffic scenes labeled with control actions and comments). In this way, the actions selected by the control strategy become interpretable.

[0055] An example of a control decision and the comments provided for it are as follows: Control decision: Turn steering left 5 degrees, 1m / s 2 Just accelerate. Comment: The reason for steering 5 degrees to the left is that the expected road curvature is 8 degrees, and additional damping should be applied to the maneuver to avoid excessive steering. Additionally, the vehicle could and should be allowed to accelerate, as sufficient distance to the vehicle ahead is maintained and the speed is below the applicable speed limit. Control decision: Braking Comment: The reason for braking is that the commercial vehicle ahead is moving slower than the vehicle itself. The other lane is blocked by an oncoming black commercial vehicle, so overtaking is not possible and a "lane leaving" maneuver cannot be performed. Control decision: Drive at 10km / h Comment: The vehicle on the right is parked and can be overtaken. The estimated gap to the oncoming lane is wide enough to fit through. Therefore, going straight ahead at a slower speed is the preferred behavior.

[0056] Although the above-described examples relate to autonomous driving, the approach described herein is increasingly applicable to other fields, such as robotics, manufacturing, etc. The approach can be applied to any application in which a robotic device is trained to perform an action in a surrounding environment where safety and explainability are required. Accordingly, the term "robotic device" can be understood to mean any technological system (having mechanical parts whose movements are controlled), such as, for example, a computer-controlled machine, a vehicle, a home appliance, a power tool, a manufacturing machine, a personal assistant, or an access control system.

[0057] In summary, according to various embodiments, a method is provided as shown in FIG.

[0058] FIG. 3 is a flowchart 300 illustrating a method for generating a textual description of a decision automatically made in controlling a robotic device (i.e., an autonomous robotic device such as, for example, an autonomous vehicle), according to one embodiment.

[0059] In step 301, data (especially sensor data) containing information about the surrounding environment (or "surroundings") of the robotic device are processed by a control process chain having a number of (chained) modules (each with its own input and output). These modules are, for example, (at least) a perception module, a prediction module and a planning module (or submodules thereof). In other words, these data are processed at least in part by a modular control pipeline, with the modules taking over different tasks of control (i.e., a decision process for selecting a control action).

[0060] At least some of the modules output protocols (i.e., "logs") regarding the rule-based intermediate steps (intermediate decisions) taken by the respective modules during control. This includes, for example, among other things, outputting any anomalies that occurred during the process (i.e., during the rule-based intermediate steps). These rule-based intermediate steps are non-ML (machine learning) based intermediate steps, i.e., "classical" intermediate steps such as if-then-else operations, safety checks, graph (e.g., tree) operations such as node truncation or expansion (the protocol provides, for example, insight into why a node (representing a particular behavior) was removed; a generated text description for such a graph operation may ultimately include, for example, "node removed for too weak braking, therefore strongly braked").

[0061] In step 302, the inputs (including intermediate results) of at least some of the modules, the outputs of at least some of the modules, and the protocols output by at least some of the modules are encoded into a (common) decision process encoding. For example, one encoding each (for the inputs, the protocols, each intermediate result, and the outputs) is generated, and then these (individual) encodings are combined (e.g., simply concatenated) into the decision process encoding as described above.

[0062] In step 303, a text description for at least one decision made during processing of the data by the control process chain mechanism is selected from a (pre-defined) set of text descriptions (from a pre-defined data set or generated online, for example using LLM) depending on the decision process encoding.

[0063] The robotic device is possibly controlled according to the processing results (e.g., planning results as described above) of the processing of data by the (control) processing chain mechanism, but the user can override such (automatic) control (e.g., control actions) by relying on the text description.

[0064] According to one embodiment, encodings of one or more encoders (e.g., implemented by ML models) are generated, which are trained together with a processing chain mechanism (which may be implemented at least in part by ML models) or subsequently trained (e.g., using training examples that include matching comments as ground truth, or with human feedback on the generated comments).

[0065] Based on the text description, the user (or developer) can potentially change the configuration of the process chain mechanism, for example, to determine whether the decisions made by the process chain mechanism were meaningful.

[0066] The method of FIG. 3 can be implemented by one or more computers having one or more data processing units. The term "data processing unit" may be understood as any type of entity that enables processing of data or signals. These data or signals may be processed, for example, according to at least one (i.e., one or more) specific functions performed by the data processing unit. The data processing unit may include or consist of an analog circuit, a digital circuit, a logic circuit, a microprocessor, a microcontroller, a central processing unit (CPU), a graphics processing unit (GPU), a digital signal processor (DSP), a programmable gate array (FPGA) integrated circuit, or any combination thereof. Any other manner for implementing each function described in more detail herein may also be understood as a data processing unit or logic circuit array. One or more method steps described in detail herein may be performed (e.g., implemented) by a data processing unit through one or more specific functions performed by the data processing unit.

[0067] That is, the method, according to various embodiments, is specifically computer-implemented.

[0068] The capture of each control situation (or control scene, e.g., the surrounding environment of the robotic device) can be based on sensor data from various sensors, e.g., video, radar, LiDAR, ultrasonic, motion, infrared imagery, etc.

Claims

1. 1. A method for generating a textual description of decisions automatically made in controlling a robotic device (101), the method comprising: a step (301) of processing data containing information about the surrounding environment of the robotic device (101) by a control process chain mechanism having a plurality of modules (201, 202, 203), at least some of the modules (201, 202, 203) outputting protocols (215) relating to rule-based intermediate steps to be taken by each module during control; a step (302) of encoding (211) by encoders (208, 209) the inputs of at least some of the modules (201, 202, 203), the outputs of at least some of the modules (201, 202, 203), and a protocol (215) output by at least some of the modules (201, 202, 203) into a decision process encoding (211) in order to generate a descriptive feature of a decision process that leads to an automatically made decision; selecting (303) from a set of text descriptions (212) depending on said decision process encoding (211) a text description for at least one decision made by said control process chain mechanism during processing of said data; A method comprising:

2. The method comprises: selecting text descriptions from the set of text descriptions (212) and, for each text description from the set of text descriptions (212), evaluating the degree of agreement between an encoding (214) of the text description (212) and the decision process encoding (211) to select the one with the best score among the text descriptions (212), The method of claim 1.

3. The method comprises:

3. The method of claim 1, further comprising generating a textual description of the set of textual descriptions (212) using a generative model that receives inputs including internal states, variable values, and / or intermediate results of the control process chain mechanism.

4. The method according to any one of claims 1 to 3, wherein the encoders (208, 209) are implemented by machine learning models.

5. The method comprises: The method according to any one of claims 1 to 4, comprising the step of displaying the generated text description on a display (110) of the robotic device (101).

6. The method according to any one of claims 1 to 5, wherein the robotic device is an autonomous vehicle (101) controlled in a traffic scene.

7. A control device (102) configured to implement the method according to any one of claims 1 to 6.

8. A computer program comprising instructions that, when executed by a processor, cause the processor to perform the method of any one of claims 1 to 6.

9. 10. A computer readable medium having stored thereon instructions that, when executed by a processor, cause the processor to perform the method of any one of claims 1 to 6.