Apparatus and method for controlling a physical system

CN114253131BActive Publication Date: 2026-09-11ROBERT BOSCH GMBH
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202111121351.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2020-09-25
Filing Date
2021-09-24
Publication Date
2026-09-11
Estimated Expiration
2041-09-24

AI Technical Summary

Technical Problem

[0002]在控制过程、例如对用于生产产品或加工工件或移动机器人的设施的控制方面,控制配置(也就是说控制参数的值)与由可观察到的输出参数值所得出的结果之间的关系可能非常复杂

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114253131B_ABST
    Figure CN114253131B_ABST
Patent Text Reader

Abstract

Apparatus and method for controlling a physical system. According to different embodiments, a method for controlling a physical system is described, the method having: training a neural network to output a result of a performed task for a plurality of tasks in response to an input of values of a control configuration input and a task input parameter of the physical system, respectively; determining a control configuration for another task by means of a Bayesian optimization, wherein the neural network parameterized by the task input parameter is used as a model of a relationship between control configurations and results; and controlling the physical system to perform the other task according to the control configuration.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Different embodiments generally relate to devices and methods for controlling physical systems. Background Technology

[0002] In control processes, such as those used to manufacture products, process workpieces, or control mobile robots, the relationship between the control configuration (i.e., the values ​​of the control parameters) and the results derived from the observable output parameter values ​​can be very complex. Furthermore, such evaluation of control parameter values ​​can be costly and error-prone. Bayesian optimization (BO) is suitable for determining control parameter values ​​in such cases because it allows optimization of unknown functions when noisy evaluations of unknown (“black-box”) functions, for which gradient information is not provided, are possible.

[0003] To keep the number of iterations required to optimize an unknown function as small as possible, knowledge transfer can be used from previous optimizations of similar unknown functions (or from other sources of information that require less expense).

[0004] The publication “Scalable Hyperparameter Transfer Learning” by V. Perrone et al. in Advances in Neural Information Processing System 31 (NIPS 2018), referred to below as reference [1], describes a method called MT-ABLR (Multi-Task Adaptive Bayesian Linear Regression). In this method, a neural network (NN) is used to encode a feature space that is shared by all previously examined black-box functions that are relevant to the current task. A Bayesian linear regression layer (BLR) for each task is used to learn a representation of the task, including the expected value of a given set of parameters and the uncertainty about that value. By learning a common feature space, MT-ABLR is able to transfer available knowledge from similar black-box functions and perform optimizations for the current task more efficiently. Summary of the Invention

[0005] According to different implementations, a method for controlling a physical system is provided, comprising: training a neural network to output the result of the performed task in response to inputs of a control configuration of the physical system and inputs of values ​​of task input parameters, respectively, for a plurality of tasks performed by the physical system, wherein the training comprises: determining the weights of the neural network and determining the values ​​of task input parameters for each of the performed tasks; determining a control configuration for another task by means of Bayesian optimization, wherein sequential evaluation of the control configuration is performed, wherein in each evaluation, a result of performing the other task is determined for the corresponding control configuration, wherein the neural network, parameterized by task input parameters distributed according to a probability distribution, is used as a model of the relationship between the control configuration and the result, and is sequentially updated in the case of these evaluations by adjusting the probability distribution of the task input parameters according to these evaluations; and controlling the physical system to perform the other task according to the control configuration.

[0006] Bayesian optimization is a very versatile function optimization method. Its advantages lie in its high efficiency, requiring only a small number of function evaluations to find the optimal value, bypassing noisy evaluations, and not needing gradient information. Therefore, it is suitable for applications where experimental parameters must be optimized to achieve a large-scale optimization.

[0007] The above approach also enables efficient searching for optimal control configurations because it can leverage prior knowledge from tasks similar to the task at hand (i.e., the other task). Other prior knowledge from less expensive information sources can also be used. For example, in manufacturing workpieces, similar tasks might involve manufacturing similar workpieces on the same machine, handling similar objects in similar environments using the same robotic arm, or processing sensor data from similar sensors (e.g., from different camera types) (e.g., image classification).

[0008] Depending on the implementation, a reasonable prior (A-Priori) distribution of the (alternative) model functions representing the task to be performed (i.e., these model functions approximate the objective function) is learned. Although there is no objective function evaluation (i.e., an evaluation of the control configuration) for the task to be performed, this probability distribution can still be used for Bayesian optimization. The probability distribution of the model functions is obtained by parameterizing the model of the objective function using the task input parameters. The task input parameters can be considered as latent values. The values ​​of these task input parameters are vectors in, for example, a multidimensional (e.g., 2 to 5 dimensions) latent space. The dimension of the latent space is determined, for example, by the number and complexity of the different training points. The probability distribution of the task input parameters provides a corresponding probability distribution for the model functions. This enables an efficient search for the optimal value of the objective function using a small number of function evaluations.

[0009] Clearly, in different implementations, instead of the Gaussian process typically used in Bayesian optimization (BO) and updated via function evaluation (by adjusting the prior Gaussian process according to these function evaluations to determine the posterior Gaussian process), neural networks are used as the surrogate model. The function implemented by the neural network represents the surrogate model of the objective function. This surrogate model is parameterized by the task input parameters and updated in each iteration of the Bayesian optimization via one or more function evaluations, adjusting the prior distribution of the task input parameters to a posterior distribution based on these evaluations. The uncertainty of the model arises from the uncertainty of the probability distribution of the task input parameters. This uncertainty is reduced by adjusting this probability distribution according to the function evaluations.

[0010] Different implementations are described below.

[0011] Example 1 is the method described above for controlling a physical system.

[0012] Example 2 is the method described in Example 1, wherein training of a neural network is performed using a loss function through supervised learning, the loss function depending on the weights of the neural network and the values ​​of the task input parameters for the task being performed.

[0013] Training using this loss function enables efficient training of the neural network weights along with the values ​​of the task input parameters for the task being performed. In particular, separate training processes are not required for these weights and task input parameter values.

[0014] Example 3 is the method according to Example 1 or 2, wherein the loss function has a regularization term that causes the empirical distribution of the values ​​of the task input parameters trained for the performed task to approximate a pre-given probability distribution.

[0015] The use of regularization terms prevents overfitting when training on the values ​​of the task input parameters.

[0016] Example 4 is the method described in Example 3, wherein the predetermined probability distribution is a Gaussian distribution.

[0017] Using a Gaussian distribution as a pre-given probability distribution for the values ​​of the input parameters prevents the input parameter values ​​from being trained to lie in separate regions of the latent space.

[0018] Example 5 is the method according to any one of Examples 1 to 4, wherein the probability distribution of task input parameters for another task is adjusted according to the evaluation in such a way that the probability that the output of the neural network is closer to the task input parameter values ​​provided by these evaluations is increased relative to the probability that the output of the neural network is less close to the task input parameter values ​​provided by these evaluations.

[0019] Therefore, the function implemented by the neural network (parameterized by the task input parameter values) approximates the target function during the BO process in such a way that the probability distribution of the task input parameter values ​​increasingly represents the accurate task input parameter values ​​for that other task (i.e., providing high probabilities in its environment). Thus, the neural network trained with prior knowledge from previous tasks becomes increasingly suitable for the current task.

[0020] Example 6 is a method according to any one of Examples 1 to 5, wherein the physical system has one or more actuators, and the physical system is controlled according to a control configuration to perform the other task by controlling the one or more actuators according to control parameter values ​​given by the control configuration.

[0021] The above approach can, for example, enable rapid adaptation of control configurations for new tasks performed by machines or robots in production.

[0022] Example 7 is the method according to one of Examples 1 to 6, wherein the control configuration has hyperparameters of a machine learning model implemented by the physical system.

[0023] The above approach is also suitable for quickly finding hyperparameters of machine learning models, such as those used for neural networks that process sensor data.

[0024] Example 8 is the method according to one of Examples 1 to 7, wherein the other task is image classification of digital images or production of products.

[0025] Example 9 is a control device configured to implement the method according to one of Examples 1 to 8.

[0026] Example 10 is a computer program having program instructions that, when implemented by one or more processors, cause the one or more processors to perform the method according to one of Examples 1 to 8.

[0027] Example 11 is a computer-readable storage medium having stored thereon program instructions that, when implemented by one or more processors, cause the one or more processors to perform the method according to one of Examples 1 to 8. Attached Figure Description

[0028] Embodiments of the invention are shown in the accompanying drawings and described in detail below. In the drawings, the same reference numerals generally refer to the same parts in various views. These drawings are not necessarily to scale, but their emphasis is generally on illustrating the principles of the invention.

[0029] Figure 1 The robot is shown.

[0030] Figure 2 This paper elucidates the modeling of the objective function using neural networks.

[0031] Figure 3 A flowchart illustrating a method for controlling a physical system according to an embodiment is shown. Detailed Implementation

[0032] Different implementations, particularly the embodiments described below, can be implemented using one or more circuits. In one implementation, "circuit" can be understood as any type of logical implementation entity, which can be hardware, software, firmware, or a combination thereof. Thus, in one implementation, "circuit" can be hardwired logic circuitry or programmable logic circuitry, such as a programmable processor, for example, a microprocessor. "Circuit" can also be software implemented or carried out by a processor, such as any type of computer program. According to an alternative implementation, any other type of implementation of the corresponding functionality can be understood as "circuit," and these corresponding functionalities are described in more detail below.

[0033] Figure 1 Robot 100 is shown.

[0034] Robot 100 includes a robot arm 101 (typically a robotic element), such as an industrial robot arm for moving, mounting, or processing workpieces. Robot arm 101 has robot links 102, 103, 104 and a base (or typically a support) 105, through which these robot links 102, 103, 104 are supported. The term "robot link" refers to the movable portion of robot arm 101, the manipulation of which enables physical interaction with the surrounding environment, for example, to perform a task. For control purposes, robot 100 includes a control device 106 configured to interact with the surrounding environment according to a control program. The last element 104 of robot links 102, 103, 104 (viewed from the base 105) is also called an end effector 104 and may contain one or more tools, such as a welding torch, a gripping tool, a painting device, etc.

[0035] Other robot links 102, 103 (closer to the base 105) can form a positioning device such that a robot arm (or articulated arm) with an end effector 104 at its end is positioned together with the end effector 104. The robot arm 101 is a robotic arm that can perform activities similar to those of a human arm (possibly using tools at its end).

[0036] The robotic arm 101 may include connecting elements 107, 108, and 109 that connect robot links 102, 103, and 104 to each other and to a base 105. Connecting elements 107, 108, and 109 may have one or more joints, each of which can provide rotational and / or translational (i.e., displacement) motion of the associated robot link relative to each other. Movement of robot links 102, 103, and 104 may be introduced by means of an adjustment mechanism controlled by a control device 106.

[0037] The term "regulatory element" can be understood as a component adapted to influence a mechanism in response to its actuation. The regulator can convert a command (so-called activation) output by the control device 106 into mechanical motion. The regulator, for example, an electromechanical converter, can be configured to convert electrical energy into mechanical energy in response to its manipulation.

[0038] The term "control device" (also known as "Controller") can be understood as any type of logical implementation unit, which may include, for example, circuitry and / or a processor, capable of implementing software, firmware, or a combination thereof stored in a storage medium and issuing commands to, for example, the regulating element in the current example. The control device can be configured, for example, as a control system, or in the current example, the operation of a robot, through program code (e.g., software).

[0039] In the current example, the control device 106 includes a memory 111 and one or more processors 110, the memory storing code and data, which the processors 110 use to control the robot arm 101. In different embodiments, the control device 106 controls the robot arm 101 based on a control configuration 112 stored in the memory 111.

[0040] It should be noted that the design of the robot 100 with a robotic arm is merely an example, and the robot can be designed in the form of any machine in which mechanical components (including valves or other movable parts) can be controlled.

[0041] Control configuration 112 is a set of control parameters that affect control behavior in order to make trade-offs, for example, between production speed and wear and tear between machines.

[0042] Examples of machines with control parameters are manufacturing machines, such as milling machines, lathes, and deep hole drills, in which the control device 106 adjusts, for example, the feed rate of the deep hole drill, the rotational speed of the milling head, etc., as a function of the current state (and / or time) of the machine.

[0043] Because the relationship between the control configuration and the result is complex and difficult to predict, i.e. given by an unknown "black box function", the control device 106 uses Bayesian optimization to determine the control configuration.

[0044] In different implementations, the control device 106 uses prior knowledge to reduce the number of iterations required in Bayesian optimization. Examples of this implementation can be used for optimizing various industrial processes.

[0045] If a machine is used, for example, to manufacture a large number of parts, then the machine's control parameters must be coordinated for each individual part before it can be mass-produced. Using prior knowledge from previously performed tasks and optimizing machine settings for this purpose enables more efficient optimization for manufacturing new parts. This, in particular, allows for reduced research and development costs.

[0046] Another application of different implementations lies in hyperparameter tuning for machine learning (ML) methods and models. When applying ML models to physical processes or systems, there are typically multiple parameters whose values ​​must be specifically adapted to the corresponding task—that is, specifically to the dataset in this application. In the case of neural networks, these parameters are called hyperparameters, such as the number of layers, the number of neurons per layer, the activation function, the learning rate, and so on. To find the optimal values, the training process of the neural network must be repeated for each set of hyperparameters, which requires a considerable amount of computational power. The embodiments described below allow the control device to quickly identify task-specific hyperparameters by using prior knowledge from the optimization of hyperparameters for similar tasks.

[0047] Therefore, the embodiments are not limited to the control of the robotic arm 101 or the machine, but can be generally used to adjust control configurations (i.e., control parameter values), such as to adjust the hyperparameters of ML models used in physical systems, such as ML models for image classification, or for detecting objects in the surrounding environment of a vehicle.

[0048] The control device 106 is not only capable of driving actuators to adjust their position in space within components such as the end effector 104, but also typically capable of controlling process parameters in the production or processing process, such as process temperature, process time, vacuum or gas environment, etc., to obtain desired properties of the workpiece, such as hardness, strength, thermal conductivity, electrical conductivity, etc., as described above. The control device 106 can also adjust hyperparameters for a specific task, such as for an ML model used in image classification.

[0049] In control scenarios involving physical systems such as robots, machines, production or processing facilities, or vehicles, output parameters are often noisy. This means that output parameters (such as the position of a manipulated object, the characteristics achieved by a workpiece, or the accuracy of image classification) can vary even if the control parameter values ​​are the same, as these control parameter values ​​are caused by certain process parameters.

[0050] To obtain the desired output parameter values, these control parameter values ​​should be determined such that the objective function, which depends on the output parameters, is optimized. For example, the object 114 to be moved should be moved as close as possible to its destination, a specific temperature should be adjusted as precisely as possible, or the product's hardness should be as close as possible to the target value.

[0051] Because the output parameter values ​​are noisy and the objective function depends on these output parameter values, the objective function is also noisy. Furthermore, the objective function is often unknown because it represents a complex relationship between the control parameter values ​​and the output parameters (the value of which depends on the objective function).

[0052] exist Figure 1 In the example, control device 106 can obtain sensor data from one or more sensors 113 (e.g., cameras in the robot example, and temperature sensors, current sensors, etc. in other applications) to obtain information about output parameter values ​​for specific control parameter values, that is, to evaluate the objective function. Sensor 113 may also be, for example, part of robot arm 101.

[0053] According to different implementations, the control device 106 determines the control parameter values ​​used to optimize (that is, to optimize according to the given objective function as described above) the physical or chemical process used to solve the current task (that is, the task to be performed).

[0054] Bayesian optimization can be applied if the unknown function f (a so-called "black-box" function, such as the objective function in the example above) should be optimized (minimized or maximized). The unknown function f is a function that can be evaluated or measured only for the value x and observed (possibly due to noise). The observed value y is then y = f(x) + ε, where ε represents the noise share. It is also assumed that every evaluation (measurement) of the unknown function f is expensive, meaning it incurs costs, as is the case when conducting experiments on a lab bench. Since evaluating the unknown function is expensive, it is desirable to perform only a small number of evaluations during optimization.

[0055] For Bayesian optimization of an unknown function f, a surrogate model is used to model f. The BO process involves initializing the surrogate model based on available information (such as the evaluation of function f so far) and then performing multiple iterations, each iteration having: (1) Calculate the next set of control parameters x by optimizing the acquisition function based on the alternative model. i The next set of control parameters should be evaluated; (2) Through y i =f(x i To evaluate the control parameter set x i The function f; (3) Using [xi , y i The replacement model is updated accordingly.

[0056] Perform the iterative process until at least one final criterion is reached, such as reaching the required number of iterations or the desired result (e.g., regarding the quality of the manufactured product or the accuracy of image classification).

[0057] Under certain pre-defined conditions, such as the continuity of the unknown function, a statistical model can be used as an alternative model. A Gaussian process (also known as a Gaussian Process) is typically used as the statistical model, meaning that a process is executed with respect to the evaluation points (x1, ..., x). n And the evaluation at these evaluation points, that is, the evaluation of the corresponding function values ​​(y1, ..., y) at these evaluation points. n Gaussian process regression observations.

[0058] However, in order to utilize prior knowledge from optimizations of previous tasks, a neural network 115 is used as an alternative model instead of a Gaussian process, according to a different implementation. This neural network is implemented (and trained) by, for example, control device 106. For example, the representation of neural network 115 is stored in memory 111.

[0059] In different implementations, a neural network is used as an alternative model that (at least) receives a set of control parameters (i.e., the variables of the function to be optimized) and a vector (also called a latent space vector) as input, which describes the representation of the current task in the latent space. The latent space vector contains the task parameter values ​​for the current task.

[0060] Any information known about the current task can be fed into the neural network as the next input. The output of the neural network is a function value of the input set of control parameter values ​​(i.e., the cost, benefit, or accuracy of the input set of control parameter values) and, in one implementation, the variance of that function value.

[0061] By inferring the latent space vector suitable for the current task, the alternative model can be quickly adapted to the current task during the BO process, enabling the neural network (with the suitable latent space vector) to effectively model the objective function. As a result, Bayesian optimization is rapidly developing in the direction of optimizing the objective function.

[0062] Instead of separate BLR layers for each task, as in reference [1], different implementations utilize a latent space vector to use the latent representation for that task as input to the neural network. The value of this latent space vector is specific to each task and effectively alters the properties of the features encoded by the neural network.

[0063] Figure 2 This paper elucidates the modeling of the objective function using neural networks.

[0064] The objective function of the current task, that is, the task to be performed, is an unknown function. The value of this unknown function represents the optimized outcome (e.g., benefit, accuracy, cost, quality) of the task being performed. In this case, x is a set of control parameters, and These are task-specific parameters. The unknown objective function is modeled using a neural network. A function implemented by a neural network is called a... , where z is the latent space vector and θ represents the set of trainable parameters (i.e., weights) of the neural network.

[0065] and For the t-th task and control parameter value group x n,t (That is, the control configuration for evaluating the nth function) provides the function value y. n,t N t This represents the number of function evaluations for the t-th task, i.e., t = 1, … N. t .

[0066] The parameter set θ is identical for all tasks (i.e., the current task and previously executed tasks). The vector z can be viewed as an encoding of the parameters τ. Since the parameters τ and their probability distribution are unknown, z cannot be directly computed from τ for the current task. Instead, a latent space is used. The prior distribution of (where) This allows neural networks to be viewed as having a latent space. Generative networks. For example, using Gaussian prior distributions. .

[0067] To determine the control configuration for a new task to be performed (e.g., by a machine), the control device 106 (e.g., processor 110) first performs pre-training of the neural network 115 using existing information. The goal of the pre-training is to determine suitable global parameters θ (i.e., the weights of the neural network 115) such that, for each task... Each of them has a corresponding latent encoding. , making .

[0068] Since there is no information about τ, during training, for each task, we (using the parameters) Learn unique embedded systems Embedded (That is, the latent space vector for different tasks) is learned together with the parameter θ. Training is performed using cross-validation or by statistically splitting the training dataset into training and testing parts based on the size of the training dataset.

[0069] Training dataset For example, for each (previous) t-th task that is executed... All contain N t An evaluation. The task to be performed now should be the (T+1)th task, that is, another task besides the T tasks that have already been performed. For example, the t-th task is to manufacture the t-th component, and... This explains the configuration of the nth control. The quality of the t-th component is determined by the manufacturing machine used for that component. An internal representation of the common features of component manufacturing is learned via a neural network through training (and thereby learning θ) using this dataset.

[0070] The neural network is trained by learning the weights to achieve a log-likelihood. The average of the training data is to be as large as possible, that is, the goal is to in , It is a probability distribution, which is derived from the probability distribution of the noise component ε under the condition of function evaluation (e.g., Gaussian noise). It is a regularization term, obtained through: Provided.

[0071] The first term causes: latent space vector The empirical cumulative probability distribution function F approximates the cumulative probability distribution function Φ of the d-dimensional Gaussian distribution. The cumulative probability distribution function is obtained through... To provide.

[0072] The second term leads to the conclusion that the empirical covariance matrix is ​​close to the identity, meaning that the components of different dimensions of the latent space vector are obviously uncorrelated (or at least partially correlated).

[0073] Therefore, this regularization term ensures that: the latent space vector The probability distribution follows a Gaussian prior distribution. The control device 106 uses the Gaussian prior distribution as described below for embedding into the task to be performed. The reasoning.

[0074] If the control device 106 has already trained the neural network 115 using training data, then the control device can use the neural network to make predictions about the task to be performed. In particular, the control device can utilize the data after a (noisy) evaluation of the objective function of the task to be performed. Determine the embedding The posterior distribution (from the prior probability distribution) Starting from, for example, by means of MCMC (Markov Chain Monte Carlo) method, such as HMC (Hamiltonian Monte Carlo), that is, MCMC method using Hamiltonian dynamics.

[0075] Clearly, control device 106 is being tested here for... The value and retain it for its sake As assessment point Provide close to This value is the function value. The control device obtains the value of the target function, for example, through sensor data provided by sensor 113. The assessment.

[0076] Next, based on the determined posterior distribution, the control device 106 uses the Monte Carlo method to determine the posterior distribution of the function values ​​of the objective function for the current task to be performed with respect to the control configuration x according to the following formula: Therefore, adjustments are made based on an assessment of the task at hand. In other words, these evaluations are used to update the alternative model given by the neural network 115. The average value of the probability distribution can be obtained from the above formula as an estimate of the objective function, and statistical parameters such as variance can be used depending on the acquisition function used.

[0077] For example, the control device can be used in the first iteration of the BO process when there is no evaluation for the task to be performed at present. For example, according to the above formula for As concluded, and the control device exists in the presence of evaluation data. Used in a later iteration of the BO process. For example, according to the above formula for As concluded.

[0078] In this way, the control device 106 can perform a BO process to determine the control configuration for the task to be performed, using the neural network 115 as an alternative model.

[0079] In general, different implementation methods are provided for... Figure 3 The method shown in the figure.

[0080] Figure 3 A flowchart illustrating the methods used to control physical systems is shown.

[0081] This method has: In 301, in response to the input of the control configuration of the physical system and the input of the values ​​of the task input parameters, respectively, a neural network is trained to output the results of the executed tasks for multiple tasks performed by the physical system, wherein the training has the following characteristics: determining the weights of the neural network and determining the values ​​of the task input parameters for each of the executed tasks; In section 302, Bayesian optimization is used to determine the control configuration for another task. This involves sequentially evaluating the control configuration, with each evaluation determining the outcome of the other task for the corresponding control configuration. A neural network, parameterized by task input parameters distributed according to a probability distribution, is used as a model of the relationship between the control configuration and the outcome. This network is updated sequentially with each evaluation, adjusting the probability distribution of the task input parameters based on these evaluations. In 303, the physical system is controlled according to this control configuration to perform this other task.

[0082] In one implementation, one or more performance measurements are determined by a physical system (e.g., a manufacturing machine) or by a training method for an ML model, and these measurements are used to coordinate the control parameter values ​​of the physical system or the ML model, and then an optimal set of parameters is proposed for the machine or the ML model.

[0083] To this end, available data from previous optimizations for tasks similar to the one to be performed (and possibly additionally data from less expensive sources of information) are used to train a general model, which can then be used for more efficient optimization of the control parameter values ​​for the target task.

[0084] The values ​​of the task input parameters represent the task. Therefore, the task input parameters can also be considered as task representation parameters.

[0085] The prior alternative model (before evaluation) is provided by a neural network having a prior distribution of the values ​​of the task input parameters. The posterior model (after one or more evaluations) is provided by a neural network having a posterior distribution of the values ​​of the task input parameters, which is derived by adjusting for the evaluations. For this adjustment, one or more function evaluations are determined, and it is determined for what values ​​of the task input parameters the neural network better approximates the function evaluations. The distribution of the task input parameters, for example (with respect to the posterior distribution), is adapted such that the probability increases for such task input parameter values ​​and decreases for other task input parameter values ​​for which the neural network approximates these evaluations worse.

[0086] "Physical system" can be understood as different devices and apparatuses, such as robots, computer-controlled machines, vehicles, home appliances, power tools, manufacturing machines, personal assistants, or access control systems.

[0087] Neural networks can have different architectures, and for example, they can have fully connected layers and / or convolutional layers.

[0088] Different implementations can receive and utilize sensor signals from various sensors, such as video, radar, LiDAR, ultrasound, motion, sound, thermal imaging, etc., to obtain sensor data for, for example, evaluating an objective function. The sensor data can be processed accordingly. This may include classifying the sensor data or performing semantic segmentation of the sensor data, for example, to identify the presence of objects (in the surrounding environment where this sensor data was obtained). Implementations can be used to configure machine learning systems and, for example, to control robots to perform different manipulation tasks in different scenarios. In particular, implementations can be applied to the control of the implementation of manipulation tasks, such as manipulation tasks in an assembly line.

[0089] According to the implementation method, the method is computer-based.

[0090] Although the invention has been shown and described primarily with reference to specific embodiments, those skilled in the art will understand that numerous changes can be made with respect to its design and details without departing from the spirit and scope of the invention as defined by the following claims. Therefore, the scope of the invention is determined by the appended claims and is intended to cover all changes falling within the literal meaning or equivalent scope of the claims.

Claims

1. A method for controlling a physical system, the method comprising: In response to the inputs of the control configuration and the values ​​of the task input parameters of the physical system, respectively, a neural network is trained to output the results of the tasks performed by the physical system for multiple tasks. The training process includes: determining the weights of the neural network and determining the values ​​of the task input parameters for each task being performed; The control configuration for another task is determined by means of Bayesian optimization, wherein the control configuration is evaluated sequentially, and the result of performing the other task is determined for the corresponding control configuration in each evaluation case; The neural network, parameterized by task input parameters distributed according to a probability distribution, is used as a model to control the relationship between configuration and outcome, and is sequentially updated using the evaluation by adjusting the probability distribution of the task input parameters based on the evaluation; and The physical system is controlled according to the control configuration to perform the other task; The probability distribution of the task input parameters for the other task is adjusted according to the evaluation in such a way that the probability that the output of the neural network is closer to the task input parameter value provided by the evaluation is increased relative to the probability that the output of the neural network is less close to the task input parameter value provided by the evaluation.

2. The method of claim 1, wherein training of the neural network is performed using a loss function via supervised learning, the loss function depending on the weights of the neural network and the values ​​of task input parameters for the task being performed.

3. The method of claim 2, wherein the loss function has a regularization term that causes an empirical distribution of the values ​​of the task input parameters trained for the performed task to approximate a pre-given probability distribution.

4. The method of claim 3, wherein the pre-given probability distribution is a Gaussian distribution.

5. The method of claim 1 or 2, wherein the physical system has one or more actuators, and controlling the physical system to perform the other task according to the control configuration includes controlling the one or more actuators according to control parameter values ​​given by the control configuration.

6. The method of claim 1 or 2, wherein the control configuration has hyperparameters of a machine learning model implemented by the physical system.

7. The method according to claim 1 or 2, wherein the other task is image classification of digital images or production of products.

8. A control device configured to implement the method according to any one of claims 1 to 7.

9. A computer program product having a computer program, the computer program having program instructions that, when implemented by one or more processors, cause the one or more processors to perform the method according to any one of claims 1 to 7.

10. A computer-readable storage medium having stored thereon program instructions that, when implemented by one or more processors, cause the one or more processors to perform the method according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Learning robotic tasks using one or more neural networks

    US20190228495A1