Enhanced distance control using data communications

The method of sending dual commands in control systems addresses packet loss issues by using probabilistic MPC to ensure stable operation and maintain performance in uncertain environments.

JP2025537038APending Publication Date: 2025-11-12MITSUBISHI ELECTRIC R&D CENTRE EUROPE BV
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
JP2025550740
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-05-02
Filing Date
2023-11-17
Publication Date
2025-11-12

AI Technical Summary

Technical Problem

Wireless communication systems in control applications are prone to packet loss, which can cause instability in control algorithms like PID and MPC, especially in uncertain systems, leading to performance degradation or safety issues when nominal commands are lost.

Method used

A method involving the simultaneous transmission of nominal and switching commands, where the switching command is used if the nominal command is not received, calculated using probabilistic MPC with recovery strategies to maintain system stability.

Benefits of technology

Ensures stable operation by compensating for packet loss, maintaining system performance and safety without constant degradation, even in uncertain conditions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025537038000001_ABST
    Figure 2025537038000001_ABST
Patent Text Reader

Abstract

An agent repeatedly receives measurement data from at least one sensor, the measurement data defining, in iteration k, a current state of the actuator's environment resulting from application by the actuator of a nominal command in the previous iteration k-1, the nominal command in the previous iteration k-1 being initially calculated by a controller based on at least the current state of the actuator's environment defined by the measurement data acquired by the sensor during the previous iteration k-1 and sent by the controller to the agent for application by the actuator, the controller calculating, in addition to the nominal command, a switching command based on at least the current state in the iteration k at each iteration k, and sending the switching command together with the nominal command to the agent, the switching command being intended for use in operating the actuator when no command is received after application of the nominal command in iteration k.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to the automatic control of dynamic systems using data communications, such as wireless data transmission. Priority is claimed to European Patent Application No. 23315151.3, filed May 2, 2023, the contents of which are incorporated herein by reference. [Background technology]

[0002] The theory of automatic control, hereafter simply reported as "control", relates to methods for determining laws for controlling dynamical systems that can be realized by automatic devices, i.e. without human intervention. The system to be controlled can be of any kind, such as a sewing machine, a robot, a car, any other vehicle, etc. At any given time, a dynamical system is in a suitable state space

number

number

[0003] The objective of a controller is to move the plant state toward a reference value. This can be achieved using an open-loop controller, where the control action from the controller is independent of plant variables that relate command patterns to any desired state. An open-loop controller assumes perfect knowledge of the plant, which is not possible in practice. For example, vehicle behavior depends on passenger count and fuel level, which are not actually measured. Similarly, vehicle behavior depends on wind strength, road gradient, changes in grip, etc. Because all of these effects cannot be measured, it is common to model them as disturbances and rely on closed-loop control, where the control action depends on the desired achieved plant state, measured using sensors.

[0004] As shown in the example in Figure 1, in a control application where a plant and a controller are connected using a wireless communication network, - Control actions (arrows "commands" in Figure 1) are sent from a controller (of the PID or MPC type as detailed below) to so-called "agents" (plants, autonomous vehicles, vacuum cleaners, sewing machines, etc.) that generally comprise actuators that apply the commands from the controller and sensors that inform the controller of the current actual state of the agent, Conversely, measurements from the agent's sensors are sent to the controller (arrow "Detection" in Figure 1).

[0005] Control applications can rely on any wireless transmission technology, such as WiFi, Bluetooth, LTE, etc. More recently, the 3GPP® standardization organization has specified 5G systems that incorporate dedicated means to address control applications, more specifically Ultra-Reliable and Low-Latency Communications (URLLC). Wireless transmission is suitable for mobile or portable devices, such as automated guided vehicles (AGVs), autonomous mobile robots (AMRs), and any type of robot or vehicle.

[0006] On the other hand, wireless communication systems are susceptible to packet loss due to radio propagation effects such as attenuation loss, shadowing, multiplicative and additive noise, congestion effects, etc., when the timely transmission of a packet requires more radio resources than are available. As a result, the design of control applications must consider the possibility of packet loss occurring in either the transmission of commands from the controller to the plant and / or the transmission of state observations from the plant to the controller.

[0007] One of the most widely used mechanisms in closed-loop control is the proportional-integral-derivative controller ("PID" controller or "three-term" controller). A PID controller continuously calculates an error value e(t) as the difference between a desired set point (SP) and a measured process variable (PV) and applies a correction based on proportional, integral, and derivative terms (denoted P, I, and D, respectively). PID controllers are widely used for several reasons. They do not require a model of the plant and are "easy" to tune and implement. However, PID controllers are not optimal and can be unstable. Typically, PID controllers can suffer from "hunting," i.e., oscillations around the operating point. Another important limitation is that PID controllers do not consider a possible existing model of the plant, thus preventing them from predicting the future behavior of the system they are controlling.

[0008] Another type of controller, called an "MPC" controller (for "model predictive control"), falls within the realm of optimal control theory, a branch of mathematical optimization that deals with finding a control for a dynamic system over a time period such that the objective function being optimized, and therefore implicitly depends on a model of the system, is optimized. Three keywords: model-based, time period, and optimization, adequately characterize this type of controller. The controller is optimized iteratively, taking into account the future evolution of the system using a model according to a given objective function. Solutions to optimization problems can be obtained using dynamic programming (DP) methods, which calculate the optimal policy or control law u(x) for an additive cost function, where x denotes the state of the system controlled by the controller. The optimal policy has the property that, whatever the initial state and initial decisions, the remaining decisions must constitute an optimal policy with respect to the states resulting from the initial decisions. Dynamic optimization problems in discrete time can be stated in a recursive, stepwise form known as back-induction by writing down the relationship between the value function in one time period and the value function in the next time period.

[0009] Dynamic programming (DP) provides optimal policies that can be computed offline and used to generate control over the entire horizon. However, it quickly suffers from the well-known "curse of dimensionality," which prevents its straightforward application when the dimensionality of the state space is high. Model predictive control emerges as a less complex alternative to DP. MPC replaces the offline determination of control laws with the online solution of an optimal control problem whose solution yields a control action (a value, not a function) for the current state. It is therefore useful in situations where explicit solutions to the optimal control problem for all initial states are not easily obtainable. Since only a few optimal control problems admit explicit offline solutions, it is this feature that makes MPC so useful for many problems. Instead of searching for a policy offline, this technique searches for an "optimal" control sequence (an implicit policy computed for the current state value) at each iteration, then applies only the first control value, and this is repeated for the next iteration. This is simpler and allows for the addition of constraint enforcement, a key advantage of MPC.

[0010] Interestingly, in the deterministic case, the optimal policy computed using DP yields the same value for the initial state as MPC. Deterministic MPC in its basic form is open-loop. However, as mentioned above, the system is not precisely modeled, either intentionally or due to a lack of measurements. It is common to speak of uncertain systems requiring closed-loop control. DP can also be applied to uncertain systems, using a stochastic description of the disturbances in the model and optimizing over a statistical objective function. However, stochastic DP methods suffer from the same curse of dimensionality as deterministic DP. To reduce the complexity of DP, several approximations have been devised. So-called approximate dynamic programming (ADP) methods are typically divided into four categories according to the assumptions used to compute the policy: -Open-loop solution: The policy is calculated assuming only knowledge of the initial state values. -Open-loop feedback solution: The policy is calculated assuming knowledge of all states (or observations) up to time k, while being independent of the pattern of future system observations. - m-step-ahead solution: similar to DP, but the cost vs. movement function is approximated instead of iteratively constructed (this appears as a way of partially closing the loop). - Closed-loop solutions: Similar to DP, these methods take into account some statistics of measurements and future observations up to k.

[0011] Hereafter, an example of an embodiment can be aimed at an MPC approach that falls within the first two classes of solutions listed above, depending on the hypotheses. MPC approaches have already been introduced in the deterministic case above. Overall, this approach can be characterized by the following properties: -Availability of a spatial state model of the plant. -MPC replaces the offline determination of control laws with an online solution of an optimal control problem whose solution results in a control action on the current state. -Control values ​​(commands) are calculated assuming knowledge of past system observations collected up to the current iteration (or simply the first iteration), regardless of the pattern of future system observations.

[0012] Due to its relatively low computational complexity, combined with its ability to cope with constraints, MPC methodologies for uncertain systems span many different declinations, which can be divided into three main classes: -Certainty Equivalent Method -deterministic method -Probabilistic methods

[0013] In deterministic approaches, the process or model noise is assumed to be unknown but bounded. This assumption comes at the expense of very conservative control, leading to the search for robust MPCs, such as the so-called "min-max" MPC, in which the command value is calculated so that it remains relevant regardless of the value of the process noise. Another alternative is offered by so-called "tube-based MPC," in which the state is decomposed as the sum of a nominal state and a noise component (due to disturbances). The principle is to analyze the behavior of a nominal system in the presence of disturbances. It can be shown that a nominal MPC can be stable if, at each iteration, the state remains within a given set, defining a tube. Therefore, a controller is constructed: a deterministic MPC and a second controller that keeps the system "in the tube."

[0014] In the linear case with Gaussian disturbances (LQG algorithm), the "optimal" MPC controller is

number

number

number

number

number

number

[0015] Linear feedback and disturbance feedback techniques are constructed to benefit from the "time-varying" gains in the reference tube-based solution, allowing for better compensation of the effects of past disturbances.

[0016] Here, it is assumed that a state value is observed at each iteration (full-state MPC). It is possible that the state is partially observed or observed through noise. In such cases, the solution is to rely on a probability-equivalent MPC that implements the underlying deterministic MPC (with fixed values ​​of the process disturbances), where the state is replaced by the state estimate. The state can be estimated using a Luenberger observer in a deterministic context. If the observation noise can be modeled as a stochastic noise process with known statistics, the state can be estimated using a Bayesian filtering algorithm, such as a Kalman filter for Gaussian noise.

[0017] If the process noise itself can be described as a stochastic process with known statistics, another solution is to rely on stochastic MPC methods, where the cost function is evaluated as a statistical function (typically statistical expectation).

[0018] The different feedback techniques introduced above can be extended to stochastic MPC solutions (SMPC). Another important advantage of SMPC techniques is that they allow for the enforcement of constraints statistically, for example using chance constraints. SMPC techniques can also be devised according to whether the state is fully observed at each iteration (state feedback) or needs to be partially measured and estimated (output feedback).

[0019] In many control applications that rely on stochastic MPC algorithms, the MPC algorithms are assumed to be implemented in a remote controller away from the plant, where a transmission system is used to send commands from the controller to the plant and state observations from the plant to the controller, as described above when referring to Figure 1.

[0020] However, wireless systems are prone to packet loss, which can cause commands not to reach the agent or observations not to reach the controller, preventing the controller from calculating new commands. Therefore, it is necessary to define a strategy for controlling the plant when the controller is unable to provide the plant with new commands calculated according to a control algorithm operated in nominal mode. These commands are hereafter referred to as nominal commands. The impact of losing a nominal command on the plant naturally depends on the nature of the application. Some applications cannot tolerate the loss of a single command and will enter a safety or emergency mode. However, many applications can handle the loss of one or several consecutive commands. A typical strategy is to not apply the command, i.e., to leave the system operating in open-loop mode, or to maintain the command at its last value.

[0021] Loss of a command can be particularly damaging, but in such cases, the plant state must remain within a given operating domain or region, typically through the application of constraint enforcement in an MPC framework. For example, when using an MPC algorithm to control a robot or vehicle in a fixed position, the ability to handle the loss of a nominal command depends on the proximity to the obstacle. Near an obstacle, the loss of even a single nominal command can put the vehicle in a critical situation. A basic strategy in such situations is to increase the safety distance to the obstacle through the application of probability constraints. The problem here is that the plant will always impose constraints related to the command loss case, which may only occur occasionally. Overall, the performance of the control algorithm will degrade for very rare events. Summary of the Invention [Problem to be solved by the invention]

[0022] The present disclosure aims to improve the situation. [Means for solving the problem]

[0023] To that end, the invention provides a method for controlling an agent that operates at least one actuator according to commands repeatedly received from a controller, the method comprising the steps of: the agent repeatedly receiving measurement data from at least one sensor that senses the environment of the actuator, the measurement data defining, at an iteration k, a current state of the environment of the actuator resulting from the application by the actuator of a nominal command at the previous iteration k-1; The nominal command in the previous iteration k-1 is first calculated by the controller based on the current state of the environment of the actuator defined at least by measurement data acquired by the sensor during the previous iteration k-1, - sent by the controller to the agent to be applied by the actuator, where the controller, at each iteration k, - calculating a switching command based on the current state at least at iteration k in addition to the nominal command; -We propose a method in which a switching command is sent to an agent together with a nominal command, the switching command being intended to be used by the agent to operate an actuator if no command is received by the agent after application of the nominal command for iteration k.

[0024] It is therefore proposed to send two commands: one nominal command to make the actuator operate in a normal way in the current cycle k, and a switch command that will be stored (at least temporarily) and used by the actuator in the next cycle k+1 in case of a communication blackout between the controller and the agent ("blind" mode), in which the agent does not receive the nominal command for the next cycle k+1. The "switch" command therefore relates to the fact that the agent switches its operation in such a blind mode when it does not receive a nominal command from the controller.

[0025] Thus, for example, in the case of a connection between an agent and a controller via a wireless network, the loss of at least one data packet due to temporary poor network conditions may actually result in the agent not receiving a command and the agent subsequently using a switch command. Of course, there could be other reasons than communication loss, such as accidental data corruption of the nominal command when stored at the agent side.

[0026] Therefore, the agent will respond to the nominal command received from the controller (as shown in the attached figure below).

number

number

number

number

number

number

number

number

number

number

[0027] More specifically, the controller: - In the next iteration k+1, the environment state is changed to the first assumed state (

number

number

number

number

number

number

number

[0028] In one embodiment, this compensation is determined from a probability-constrained statistical calculation, as detailed below.

[0029] In one embodiment, the controller calculates the state at the next iteration k+1.

number

number

number

number

[0030] In this embodiment, the controller implements probabilistic model predictive control, in which uncertainties in the actuator's environment are statistically modeled;

number

number

number

number

number

[0031] Therefore, in this embodiment, the switching command is expressed by the following formula:

number

number

number

[0032] In this embodiment, the nominal command

number

number

number

number

[0033] In one embodiment, the nominal command is:

number

number

number

number

number

number

number

[0034] In affine disturbance feedback MPC, the command

number

number

number

number

number

number

[0035] In this embodiment, the parameter

number

number

[0036] In one embodiment, the controller calculates an optimization solution for determining at least the nominal command based on:

number

number

number

number

number

number

number

number

number

[0037] matrix

number

number

number

[0038] In this embodiment, the controller calculates an optimization solution for further determining the first recovery command and the second recovery command based on:

number

number

number

number

number

[0039] In this embodiment, the probabilistic constraints (previously introduced above) can be applied to calculate the commands (all commands: first recovery command and second recovery command, and therefore nominal command and switchover command) as follows: Represents probabilistic constraints on state and control inputs

number

number

number

number

number

number

number

[0040] The present specification is also directed to a system comprising a controller and an agent configured to implement the method described above.

[0041] The present description is also directed to a controller of such a system configured to calculate and send to the controller a switching command together with a nominal command.

[0042] This description also - use the nominal command when currently being received and store the received switching command together with the nominal command, or - Aimed at an agent of the system specifically configured to retrieve and use the most recent received switching command if no nominal command is received.

[0043] The present description is also directed to a computer program comprising instructions which, when executed by a processor, cause the implementation of the above method. Further details are provided in the following specification with reference to the accompanying drawings. [Brief explanation of the drawings]

[0044] [Figure 1] FIG. 1 shows a schematic diagram of the interaction between a controller and an agent (which typically includes a set of actuators and a set of sensors). [Figure 2] FIG. 1 illustrates disturbance compensation using feedback. [Figure 3] Agent to State

number

[0045] The above method can be advantageously implemented in control applications that rely on probabilistic MPC algorithms with the enforcement of probability constraints to keep the plant in a safe operating domain. The problem to be solved is to define a strategy for handling the loss of one or several consecutive commands without constantly degrading the overall performance of the control algorithm due to insufficient events. When dealing with MPC techniques, the solution is to apply a second command calculated by the algorithm in the previous iteration. However, this is only possible in the case of deterministic MPC. Feedback MPC requires the availability of the next state observation to calculate this command.

[0046] In this description, it is proposed to run the following two MPC algorithms in parallel: - a "normal" nominal MPC calculated assuming the state will be observed in the next iteration, and -Recovery MPC, which assumes that the following conditions are not observed:

[0047] In each iteration, the controller sends a nominal command for the current iteration and a recovery command for the next iteration. If the plant does not receive a command, it drives the plant using the recovery command from the previous iteration. However, this command was calculated using a recovery MPC that assumed a different command was applied in the previous iteration. The algorithm advantageously implements a compensation method to drive the state as if the state in the previous iteration had been driven by the first recovery command. This requires that the updated state, assumed to have been driven by the plant previously with the recovery MPC, be observable from the current state obtained using the nominal state. To ensure the feasibility of this operation, the nominal MPC is calculated with the feasibility of the compensation as an additional constraint. This constraint may reduce the operating region (as it adds another constraint to the region the state can reach), but to a lesser extent than if a robust MPC were always used.

[0048] Nominal stochastic MPC is disclosed below.

[0049] Remote control applications using stochastic MPC algorithms where the uncertain parts of the plant are modeled statistically. It is assumed that the controlled plant can be described as a linear system with space-time equations.

number

number

number

number

number

number

number

[0050] The present disclosure also applies to nonlinear systems, for example, by linearization operations.

number

[0051] This disclosure can also be extended to partial and / or noisy observation output feedback. MPC algorithms can be implemented over a finite horizon, assuming knowledge of the system equations.

number

number

number

[0052]

number

number

number

number

number

number

number

[0053] As explained earlier, disturbance mitigation in control is generally achieved by a feedback control policy. An inherent difficulty with this type of approach is that it is extremely difficult to optimize the feedback policy over an arbitrary nonlinear function. A basic solution is to parameterize the control policy as follows:

number

number

number

number

[0054] However, the set of constraint-admissible policies of this form is non-convex with respect to the quadratic cost function. Another solution is to parameterize the control policy as an affine function of the disturbance, called an "affine disturbance feedback control policy."

number

[0055] This type of parameterization is very well known in stochastic programming and has been shown to be equivalent to a state-feedback policy. The advantage of an affine disturbance feedback control parameterization is that its set of decision variables is guaranteed to be convex. However, the main drawback of this parameterization is that the number of decision variables grows quadratically with the prediction horizon, making real-time computation catastrophic as the prediction horizon increases. An alternative is given by:

number

number

[0056] At each iteration, the full state is observed, i.e.,

number

number

number

[0057] For convenience, predicting the behavior of a system over a finite horizon

number

number

number

[0058] matrix

number

number

number

[0059] For convenience, queue

number

number

number

[0060] In contrast to robust MPC, stochastic MPC (SMPC) finds a different way to solve MPC problems while taking into account uncertainty. SMPC utilizes a probabilistic description of the objective values ​​and constraint violations, allowing for the consideration of acceptable risk levels during system operation. Disturbances are independent, identically normally distributed random variables (i.e.,

number

number

number

number

number

number

number

number

number

number

number

[0061] Once the optimization is complete, the algorithm applies the following commands to the plant:

number

[0062] Without loss of generality, the quadratic cost function can be assumed as follows:

number

number

[0063] Here, the construction of the restorative stochastic MPC algorithm is described below.

[0064] The basic assumption here is that the controller and agents are connected using communication that may be unstable (e.g., due to temporary poor conditions in the wireless communication between the controller and the agents, or simply because data from a set of sensors may be temporarily corrupted). The agents send observations of the state of the actuators' environment (sensed by their sensors) to the controller. We assume this state is perfectly known. From this state knowledge, the controller calculates command signals using the SMPC algorithm described in the previous section and sends these commands to the agents to be implemented by the set of actuators. For example, in the case of a wireless communication network connecting the controller to the agents, wireless propagation impairments may result in the loss of data packets for either the state observations or the commands. In either case, the agents do not obtain new commands to drive their actuators. Therefore, it is necessary to define a strategy for executing control of the agents when the controller is unable to provide the agents with new commands calculated according to a control algorithm operated in nominal mode. These commands are hereafter referred to as nominal commands. The impact of losing the nominal commands on the actuators' environment (e.g., in a plant, a machine, an autonomous vehicle, etc.) naturally depends on the nature of the application. Some applications cannot tolerate the loss of a single command and will go into safety or emergency mode, however many applications can cope with the loss of one to a few consecutive commands (typically plants or machinery with shorter communication loss periods, or even autonomous vehicles).

[0065] In the following, for the sake of brevity, we will simply refer to the actuators and their environment (as sensed by a set of sensors) as the "plant."

[0066] A typical strategy is to not apply the command or to maintain the command at its last value. Loss of a command can be particularly damaging, but in that case, the plant state must remain within a given operational domain or region, typically through the application of constraint enforcement in an MPC framework. For example, when dealing with a robot or vehicle controlled to a fixed position using an MPC algorithm, the ability to handle loss of a nominal command depends on the proximity to an obstacle. Near an obstacle, the loss of even a single nominal command can put the vehicle in a critical situation. A basic strategy in such situations is to increase the safety distance to the obstacle. The problem here is that the plant will always impose constraints related to the case of command loss, which may only occur occasionally.

[0067] When dealing with MPC methods, a solution could be to apply a second command calculated by the algorithm in the previous iteration, but this is only possible for deterministic MPCs. Feedback MPCs generally require the availability of the next state observation to calculate this command. An alternative is to rely on robust MPC algorithms, which do not assume the availability of state observations, but when dealing with applications involving constraints, this essentially amounts to significantly increasing the safety distance to obstacles.

[0068] Here, it is proposed to rely on variations of the nominal SMPC in order to mitigate deviations from the nominal behavior at most. The command of the nominal SMPC is calculated as follows:

number

[0069] The variation of the nominal SMPC is obtained using additional constraints.

number

[0070] This constraint is

number

number

number

number

[0071] Referring to Figure 2, which illustrates disturbance compensation using feedback, the state is

number

number

number

number

number

[0072] In comparison, Figure 3 shows the state

number

[0073] In the following, a possible embodiment will be described in which the principle of switching from nominal to recovery mode is explained to overcome this problem.

[0074] The principle of the algorithm is that the controller repeats

number

number

number

number

[0075] These two commands are assumed to be sent together to the agent. Upon receipt, the agent will

number

number

number

number

number

[0076] The starting point of the operation is the state reached using the nominal command.

number

[0077] Now, looking at the state we reached when the first two recovery commands were applied, we see the following:

number

number

[0078] The command then returns the "noise-free" value

number

number

number

number

number

number

number

number

[0079] The state reached by the two recovery commands

number

number

number

[0080] However, the situation

number

number

number

[0081] FIG. 8, discussed below, illustrates the main steps of a method according to an exemplary embodiment of the present specification that is performed by a processor of such a controller when the processor reads instructions of a computer program based on an algorithm following the principles given above.

[0082] It should be noted that the principles of the proposed algorithm are particularly adapted to the case of observation erasure (such as an erroneous observation due to a temporary sensor failure, or a loss of an observation due to temporarily bad transmission conditions, or temporary memory corruption).

[0083] FIG. 8 shows steps S10 to S52 being performed in the same iteration k, and step S60 being performed in the next iteration k+1.

[0084] In step S10, the controller (or its processor) determines the state

number

[0085] In step S20, the controller calculates the nominal command, more specifically by first solving a nonlinear optimization problem (S21).

number

number

number

[0086] The result of this optimization calculation, given in step S22, is ultimately a nominal command.

number

[0087] Now, the next main step S30 performed by the controller concerns the calculation of the first of the two recovery commands by more specifically solving (S31) the nonlinear optimization problem given by:

number

number

number

[0088] The result of this second optimization calculation, given in step S32, is the recovery command

number

[0089] In main step S40, the controller calculates the recovery mode switch command from the nominal given in step S41, more specifically by:

number

number

number

number

[0090] Then, in a main step S50, the controller (reference CTLR in FIG. 8) executes the command

number

number

number

number

number

[0091] In the next step S52, the agent observes this new state.

number

[0092] Next Iteration

number

number

number

number

number

[0093] Figures 4 and 5 show the principle of the recovery SMPC. Typically, in Figure 4, the recovery SMPC

number

number

number

[0094] Referring now to Figure 6, which illustrates the principle of switching from nominal to recovery mode, a second recovery command can be applied without requiring knowledge of the current state. However, this typically occurs when a first recovery command was applied in a previous iteration, but the nominal command

number

number

number

number

[0095] Figure 7 shows the general principle of the proposed algorithm according to a possible embodiment of the method described, where the controller:

number

number

number

number

number

number

number

number

number

number

number

number

number

[0096] The embodiments of the present description are well suited to one-time or occasional communication losses. However, if the communication loss persists for a longer period, a state-of-the-art policy can be provided, such as determining the trend of previously received commands and applying new commands according to the trend. Furthermore, "at least one switch command" can be provided in advance in case of communication loss. Typically, industrial processing machines have several commands (switch commands) in addition to the switch command.

number

number

number

[0097] On the other hand, when a new state is received from an agent (communication is re-established), the controller can quasi-instantaneously determine the appropriate commands for that state.

[0098] Referring now to FIG. 9, a system according to the present description may include an agent AGT and a controller CTLR.

[0099] The controller CTLR is a communications interface COM1, which receives current state data from the agent AGT and sends commands to the agent (through the network NTW); a processor PROC1 configured to read the instructions of a computer program according to the present description and consequently to carry out the steps of a method according to the present description (typically the calculation of a switching command for the next iteration k+1 in addition to the nominal command calculated for the current iteration k), and a processing circuit comprising a memory unit MEM1 for storing at least such instructions of a computer program according to the present description.

[0100] As shown in the example of Figure 9, the agent AGT a communication interface COM2 for receiving commands from the controller CTLR and transmitting current state data to the controller (via the network NTW, which may for example be a wireless network); a processor PROC2 configured to read the instructions of a computer program according to the present description and consequently to carry out the steps of a method according to the present description (for example to temporarily store a switching command and to eventually use it if a nominal command has not been received after an expected time); a memory unit MEM2 for storing at least such instructions of a computer program according to the present description; It may include a processing circuit having a control interface for sending commands to actuators of the plant and an input interface for receiving measurement data from sensors located within the plant, both labeled "INT" in FIG. 9.

[0101] Of course, the computer program instructions may be distributed between the memory of each of the agents and the controller.

[0102] Figure 10 is a communication diagram between the agent and the controller of Figure 9. Typically, the agent AGT is configured to send sensor measurement data to the controller CTLR when it is available, so that on the controller side, the current state of the plant controlled by the agent is

number

number

number

number

number

[0103] In fact, in any of these situations of communication loss, it is useful for the agent to have a switch command on its side. - Controller is in new condition

number

number

number

number

[0104] In either case, the agent must be able to

number

number

number

[0105] Of course, the present disclosure is not limited to the above exemplary embodiment, but extends to other variations. For example, a nominal SMPC can be implemented for visibility enforcement. In the above example, the state

number

number

[0106] Furthermore, the proposed algorithm can be extended to any output-feedback SMPC algorithm that relies on the same principle of constructing commands from past estimated states (or so-called "innovations").

Claims

1. 1. A method for controlling an agent (AGT) that operates at least one actuator according to commands repeatedly received from a controller (CTLR), the agent repeatedly receiving measurement data from at least one sensor that senses the environment of the actuator, the measurement data being calculated in an iteration k based on a nominal command ( [Equation 1] ) the current state of the actuator's environment resulting from the actuator's application of [Equation 2] ) The nominal command ( [Equation 3] ) but first, the current state of the environment of the actuator as defined at least by the measurement data acquired by the sensors during the previous iteration k-1 ( [Equation 4] ) calculated by the controller (CTLR) based on transmitted by said controller (CTLR) to said agent (AGT) to be applied by said actuator, The controller (CTLR) at each iteration k: - the nominal command ( [Equation 5] ) plus the current state ( [Equation 6] ) based on the switch command ( [Equation 7] ) and - The above switching command ( [Equation 8] ) to the nominal command ( [Equation 9] ) to the agent (AGT), and the switching command ( [Equation 10] ) is the nominal command ( [0011] ) is intended to be used by the agent to operate the actuator if no command is received by the agent after application of method.

2. 2. The method of claim 1, wherein the agent and the controller are connected via a wireless network, and the loss of at least one data packet due to temporary poor network conditions causes the agent to not receive a command and the agent to subsequently use the switch command.

3. The agent (AGT) receives the nominal command ( [0012] ) and during the next iteration k+1, the next nominal command ( [0013] ) is not received, the switch command ( [0014] ) to search for and use the nominal command ( [Equation 15] ) received together with the switching command ( [0016] ) in the memory; The switching command ( [Equation 17] ) adjusts the actuator's environment to the last nominal command ( [Equation 18] ) at the next iteration k+1, which is assumed to result from the application of [Equation 19] ) to the predicted state ( [Equation 20] 3. The method of claim 1, wherein the driving voltage is assumed to be 0.

4. The controller: - In the next iteration k+1, the state of the environment is set to the first assumed state ( [Equation 21] ) is assumed to drive the first recovery command ( [Equation 22] )、 - At the next iteration k+2, the state of the environment is set to a second hypothetical state ( [Equation 23] ) is assumed to drive the second recovery command ( [0000] ), and - the first recovery command ( [Equation 25] ) instead of the nominal command ( [Equation 26] ) compensation to take into account the actual application of Based on this, the switching command ( [0000] 4. The method of claim 3, wherein the calculation is

5. The method of claim 4 , wherein the compensation is determined from a probability-constrained statistical calculation.

6. The controller determines the state at the next iteration k+1. [0000] but, - the state at the current iteration k [0000] - the command applied at the current iteration k [Equation 30] and - a random process caused by environmental disturbances at iteration k [Equation 31] The method according to claim 1 , wherein a law is applied that depends on

7. the controller implements probabilistic model predictive control in which uncertainties in the actuator's environment are statistically modeled; [Equation 32] and is expressed by an equation of the type - [Equation 33] are the discrete times associated with successive iterations, - Vector [Equation 34] denotes the current state at iteration k, - Vector [Equation 35] denotes the command applied at iteration k, - Vector [Equation 36] is the random process caused by environmental disturbances at iteration k, - A, B and E are matrices, The method of claim 6.

8. The switching command is [Equation 37] is given by During the ceremony, [Number 38] is a matrix [Number 39] The method of claim 7, wherein the matrix is ​​the pseudo-inverse of

9. Nominal Command [Equation 40] the assumed state after application of the first recovery command [Equation 41] the first hypothetical state after application of the second recovery command [Equation 42] The second hypothetical state after application of [Equation 43] The method of claim 8, wherein:

10. The nominal command: [0.0000] and the command is [Equation 45] is expressed as [Equation 46] 10. The method according to claim 7, wherein ∇ represents a feedback component that compensates for deviations due to environmental disturbances.

11. Parameters [Equation 47] but, [Number 48] 11. The method of claim 10, wherein:

12. the controller generating an optimization solution for determining at least the nominal command; [Number 49] Calculation is based on this [Number 50] and [0.51] Provided that: [Number 52] and matrix [Number 53] but, [Number 54] and [Number 55] 12. The method according to any one of claims 7 to 11, wherein:

13. The controller further comprises: [Number 56] Calculation is based on this [Number 57] and [Number 58] Provided that: wherein the first recovery command and the second recovery command are respectively as noted above. [Number 59] and [Number 60] The method of claim 12, wherein

14. A probability constraint is applied to calculate the command; Represents probabilistic constraints on state and control inputs [Number 61] and is given, [Number 62] and [Number 63] is a matrix [Number 64] indicates each column of [Number 65] is a vector [Number 66] Each component of [Number 67] indicates the probability level of constraint violation 14. The method of claim 12 or 13.

15. A system comprising a controller and an agent configured to perform the method of any one of claims 1 to 14.

16. The controller of claim 15 configured to calculate and send the switching command together with the nominal command to the controller.

17. using the nominal command when currently received and storing the switch command received with the nominal command; or 16. The agent of the system of claim 15, configured to retrieve and use the last received switching command if the nominal command is not received.

18. A computer program comprising instructions which, when executed by a processor, cause the performance of a method according to any one of claims 1 to 14.

Citation Information

Patent Citations

  • Wireless control system

    JP2008219512A

  • Model prediction controller with tunable integration component to compensate for model mismatch

    JP2012517052A

  • Edge-intelligence for stability guaranteed real-time control systems

    US20220159639A1

  • Electric motor control system and communication method

    WO2012114435A1