This invention generally relates to system and method for simultaneously optimizing a local policy and control trajectory for trajectory-centric Reinforcement Learning.
Reinforcement Learning (RL) is a learning framework that handles sequential decision-making problems, wherein an ‘ agent’ or decision maker learns a policy to optimize a long-term reward by interacting with the (unknown) environment. At each step, an RL agent obtains evaluative feedback (called reward or cost) about the performance of its action, allowing it to improve (maximize or minimize) the performance of subsequent actions.
In general, global learning and optimization for arbitrary non-linear systems could be extremely challenging both computationally and algorithmically. However, a lot of tasks that a lot of systems need to perform are trajectory-centric and thus, a local learning and optimization could be very data-efficient. Trajectory-centric control could be challenging for a the non-linear system due to the time-varying nature of the controller. It is very common for a real system to deviate from the planned trajectory during operation due to an incorrect model or noise in observation or actuation. A machine learning method allows to learn and then predict the uncertainty in the evolution of a controlled trajectory. It is desirable, from a control perspective, to design a local state-dependent policy that can stabilize a controlled trajectory using the learned uncertainty model. Most of the techniques can't use the knowledge of the uncertainty present in the system model to allow stabilization of a desired control trajectory.
It is also desirable that the trajectory and the corresponding stabilizing policy be designed simultaneously. This will naturally strike a trade-off between the optimality of the control trajectory and its stabilization. Intuitively in such a setting, a policy optimization algorithm will avoid regions of state-space which might be harder to control and thus, can exploit the uncertainty in the model to design robust-optimal trajectory-centric controllers. Most of the current techniques perform these two steps (trajectory design and controller synthesis) separately and thus, can't exploit such knowledge of model uncertainty.
In the light of above-mentioned facts and challenges, there is a requirement of better policy optimization methods that can use the uncertain statistical models of physical systems and exploit the structure of these models for robust performance of these systems across a wide range of tasks.
Recent research has resulted in remarkable success of these algorithms in various domains like computer games. In trajectory-centric RL, the goal is to optimize a policy that can successfully perform a task from an initial state of the system and guide the system to desired final state(s). The trajectory-centric methods have the advantage that they can learn faster as these methods learn local predictive models and these use them to optimize policies in a local neighborhood of the system.
Reinforcement learning algorithms can be broadly divided into two categories—Model-based methods and model-free methods. Model-based Reinforcement Learning (MBRL) techniques are generally considered to be data-efficient as they learn a task-independent predictive model for the system. The learned model is then used to synthesize policies for the system using stochastic control approaches. However, these methods are generally very hard to train and thus result in low-performance policies. There are several reasons for low performance obtained by these class of algorithms and one of the key challenges is that the predictive models for the system estimated during the learning process are inherently stochastic due to the noise present in data collected during learning process. As a result, a wrong model can drive the optimization algorithm to parts of state-space where the system is unstable and the learning process can then diverge. Another challenging aspect of MBRL is that an estimated model could have different levels of uncertainty in different regions of state-space and thus, the subsequently policy optimization step should exploit this structure of the learned statistical model for optimal performance. Most of the policy-optimization techniques either ignore or can't incorporate this information during policy optimization.
MBRL has the advantage is that the predictive models estimated during learning are task-agnostic and hence, they can be used for multiple tasks and thus, are more efficient in terms of learning across multiple tasks. Thus, MBRL allows re-use of learned models to compute policies for different tasks. As a result, MBRL has the potential to enable learning of efficient policies for a lot of physical systems where collecting lots of data for optimizing policies could be very expensive.
According to some embodiments of the present invention, policy optimization is performed using the uncertain statistical models of physical systems to exploit the structure of these models for robust performance of these systems across a wide range of tasks. Further, some embodiments provide a controller and method which can handle arbitrary non-linear systems by effectively performing both computation and the related learning algorithms. As a lot of tasks that a lot of systems need to perform are trajectory-centric, some embodiments of the present invention can provide a local learning and optimization that are very data-efficient, resulting in the improvement of computers (computer performances).
Some embodiments of the present disclosure are based on recognition that a computer-implemented learning method is provided for optimizing a control policy controlling a system. Some examples of such systems may be systems including mechanical systems like HVAC systems, factory automation systems, robotic systems, and high-performance induction motors, etc. In this case, the method may include receiving states of the system being operated by a task-specific policy; initializing the control policy as an initial guess for performing a task (e.g., known partial models for the system and task); collecting data which may include the tuple of current state, action and the next state using a current control policy; estimating a statistical predictive model for the system; estimating the predictions as well as uncertainties associated with the prediction at any state, control pair; estimating the local set around the nominal system state in which the system needs to be stabilized; computing the gradient of a robustness constraint which can be used to optimize the parameters of the local stabilizing policy; computing the gradient of the dynamics of the system; determining a trajectory-centric control policy by solving the non-linear optimization program to minimize the cost of the trajectory and the local stabilizing policy using the gradient of the robustness constraint.
Some embodiments provide method and system to perform a trajectory-centric task for a system in the presence of uncertainties of a statistical model estimated during learning. The controller for optimizing a local control policy of a system for trajectory-centric reinforcement learning may includes an interface configured to receive data including tuples of system states, control data and state transitions measured by sensors; a memory to store processor executable programs including a stochastic predictive learned model for generating a nominal state and control trajectory (an open-loop trajectory) for a desired time-horizon as a function of time steps, in response to a task command for the system received via the interface, a control policy including machine learning method algorithms and an initial random control policy, a local policy for regulating deviations along a nominal trajectory; at least one processor configured to: learn the stochastic predictive model for the system using a set of the data collected during trial and error experiments performed using the initial random control policy; estimate mean prediction and uncertainty associated with the stochastic predictive model; formulate a trajectory-centric controller synthesis problem to compute the nominal trajectory along with a feedforward control and a stabilizing time-invariant feedback control simultaneously; determine a local set of deviations of the system, using the learned stochastic system model, from a nominal system state upon use of a control input at a current time-step; determine a system state with a worst-case deviation from the nominal system state in the local set of deviations of the system; determine a gradient of the robustness constraint by computing a first-order derivative of the robustness constraint at the system state with worst-case deviation; determine the optimal system state trajectory, the feedforward control input and a local time-invariant feedback policy that regulates the system state to the nominal trajectory by minimizing a cost of a state-control trajectory while satisfying state and input constraints; provide and solve a robust policy optimization problem using non-linear programming; update the control data according to the solved optimization problem; and output the updated control data via the interface.
Furthermore, another embodiment of the present invention can provide a computer-implemented method (control system) for controlling a system by optimizing a control policy. The computer-implemented method is provided for optimizing a local control policy of a system for trajectory-centric reinforcement learning. The method may include steps of learning a stochastic predictive model for the system using a set of data collected during trial and error experiments performed using an initial random control policy; estimating mean prediction and uncertainty associated with the stochastic predictive model; formulating a trajectory-centric controller synthesis problem to compute a nominal trajectory along with a feedforward control and a stabilizing time-invariant feedback control simultaneously; determining a local set of deviations of the system, using the learned stochastic system model, from a nominal system state upon use of a control input at a current time-step; determining a system state with a worst-case deviation from the nominal system state in the local set of deviations of the system; determining a gradient of the robustness constraint by computing a first-order derivative of the robustness constraint at the system state with worst-case deviation; determining the optimal system state trajectory, the feedforward control input and a local time-invariant feedback policy that regulates the system state to the nominal trajectory by minimizing a cost of a state-control trajectory while satisfying state and input constraints; providing and solving a robust policy optimization problem using non-linear programming; updating the control data according to the solved optimization problem; and output the updated control data via the interface.
The system may include an interface configured to receive task commands and states of the system via sensors; a memory to store computer-executable programs including an initializer, a policy collector, an estimator, an agent and an policy-update program, a program to estimate the stochastic predictive model of the system, a program to compute a robustness constraint and its gradient, a program to solve the non-linear optimization problem to obtain the optimal trajectory and the stabilizing policy; and a processor, in connection with the memory, configured to initialize the control policy as an initial guess for performing a task (e.g., known partial models for the system and task); collecting data which may include the tuple of current state, action and the next state using a current control policy; estimating a statistical predictive model for the system; estimating the predictions as well as uncertainties associated with the prediction at any state, control pair; estimating the local set around the nominal system state in which the system needs to be stabilized; computing the gradient of a robustness constraint which can be used to optimize the parameters of the local stabilizing policy; computing the gradient of the dynamics of the system; determining a trajectory-centric control policy by solving the non-linear optimization program to minimize the cost of the trajectory and the local stabilizing policy using the gradient of the robustness constraint.
The presently disclosed embodiments will be further explained with reference to the attached drawings. The drawings shown are not necessarily to scale, with emphasis instead generally being placed upon illustrating the principles of the presently disclosed embodiments.
The following description provides exemplary embodiments only, and is not intended to limit the scope, applicability, or configuration of the disclosure. Rather, the following description of the exemplary embodiments will provide those skilled in the art with an enabling description for implementing one or more exemplary embodiments. Contemplated are various changes that may be made in the function and arrangement of elements without departing from the spirit and scope of the subject matter disclosed as set forth in the appended claims.
Specific details are given in the following description to provide a thorough understanding of the embodiments. However, understood by one of ordinary skill in the art can be that the embodiments may be practiced without these specific details. For example, systems, processes, and other elements in the subject matter disclosed may be shown as components in block diagram form in order not to obscure the embodiments in unnecessary detail. In other instances, well-known processes, structures, and techniques may be shown without unnecessary detail in order to avoid obscuring the embodiments. Further, like reference numbers and designations in the various drawings indicated like elements.
Also, individual embodiments may be described as a process, which is depicted as a flowchart, a flow diagram, a data flow diagram, a structure diagram, or a block diagram. Although a flowchart may describe the operations as a sequential process, many of the operations can be performed in parallel or concurrently. In addition, the order of the operations may be re-arranged. A process may be terminated when its operations are completed, but may have additional steps not discussed or included in a figure. Furthermore, not all operations in any particularly described process may occur in all embodiments. A process may correspond to a method, a function, a procedure, a subroutine, a subprogram, etc. When a process corresponds to a function, the function's termination can correspond to a return of the function to the calling function or the main function.
Furthermore, embodiments of the subject matter disclosed may be implemented, at least in part, either manually or automatically. Manual or automatic implementations may be executed, or at least assisted, through the use of machines, hardware, software, firmware, middleware, microcode, hardware description languages, or any combination thereof. When implemented in software, firmware, middleware or microcode, the program code or code segments to perform the necessary tasks may be stored in a machine-readable medium. A processor(s) may perform the necessary tasks.
The system 100 can receive electric text/imaging documents 195 including speech data via the network 190 connected to the NIC 150. The storage device 130 includes algorithm modules 131 including, the model uncertainty estimator, the robust constraint gradient evaluator and a non-linear optimization program solver are stored into the storage 130 as program code data, and robotic control algorithms 132. The algorithms of model learning, robust constraint gradient estimator and the non-linear program optimizer 131 may be stored to a computer readable recording medium (not shown) so that the processor 120 can execute the algorithms of the models 131-132 and multimodal encoder-decoders 200 by loading the algorithms from the medium. Further, the pointing device/medium 112 may include modules that read and perform programs stored on a computer readable recording medium.
The robotic system 200 in the
Reinforcement Learning algorithms are divided into two broad categories: model-free and model-based. As the name suggests, the model-free RL algorithms do not use the state-transition probability of a system to learn a policy. In these type of algorithms, the policy for a system is parameterized as a function approximator. The policy parameters are then optimized either directly by maximize the expected reward for performing the desired task or estimating a value function associated with the task. These algorithms are generally very sample inefficient, i.e., they take very large number of training data to optimize a policy for the system. Furthermore, learning using these systems is task-dependent, as the optimization is performed to maximize the expected reward for a particular task.
Among the different kind of RL algorithms, MBRL algorithms are considered to be more data efficient. In a model-based RL algorithm, an initial (possibly random) control policy is used to collect state-transition data from a system. This state-transition data is then used to learn a forward predictive model for the system. It is important to note that learning of the predictive model is independent of any task and thus, any reward structure. Once a good estimate of the forward dynamics of the system is obtained, the dynamics model of the system is used to synthesize a controller that can perform the desired task. A task could be performed could be performed using a controlled trajectory or a state-dependent full policy. A controlled trajectory is a sequence of control inputs that can be implemented on the system from a known initial condition to achieve the desired state to perform the task. It is noted that such a controller is not state-dependent but is rather time-indexed. A state-dependent full policy could be independent of the initial state of the system and thus can be used from any initial state of the system to perform the desired task.
It is object of some embodiments of the invention to estimate a statistical model for the system using the state transition data collected. Several machine learning methods can be used for this step including Gaussian processes or stochastic neural networks. Gaussian process is a stochastic process which is completely specified by a mean and covariance function.
Gaussian process can be mathematically represented using the mean function, m(x) and the covariance function k(x, x′) of process ƒ(x) as follows:
m(x)=E[ƒ(x)]
k(x,x′)=E[(ƒ(x)−m(x))(ƒ(x′)−m(x′))]
and the Gaussian process is written as follows:
ƒ(x)˜N(m(x),k(x,x′)).
Note that x here is the input to the Gaussian process and for the particular case of system dynamics estimation is the state-action pair (xk, uk). The covariance function k(x, x′) is also known as the kernel function. There are several choices for a valid covariance function. Some of the most common choices are Radial Basis Function (RBF) kernel, the Matern kernel, the Squared exponential (SE) kernel, etc. Being a stochastic process, the Gaussian process is a collection of random variables, any finite collection of which are multi-variate Gaussian. After completion of the learning process from a training data set 511 D={X, Y}, the prediction at a test data point 512 x* is given by a Gaussian distribution (this can be shown using the property of multivariate Gaussian distribution).
Mathematically, it is represented by the following relationships.
p(ƒ(x*)|D,x*)=N(μ(x*),Σ(x*))
μ(x*)=k*T(K+σ2I)−1Y
Σ(x*)=k**−k*T(K+σ2I)−1k*
where, μ(x*) and Σ(x*) represent the mean and variance of the Gaussian distribution at the test data point x*. The learning process estimates the terms K, k** and k*. Once these terms are estimated, the prediction at a new test data point is obtained using the closed form equations represented above in the equations. As a result, during the learning process, a probabilistic relationship 515 is learned for the desired input-output relationship between the current state-action pair and the next state transition.
Some embodiments of the invention are based on the realization that for an arbitrary non-linear system, synthesizing the full state-dependent policy for the system is a very challenging task computationally as well as numerically. This requires a reliable estimate of the global model of the system and is also a challenging problem to solve. On the other hand, computing a local controlled trajectory is an easier problem but it might have poor performance as it is very susceptible to initial conditions and is time-indexed. Furthermore, the performance might decrease in the presence of an incorrect, uncertain model. Thus to achieve good performance with a trajectory-centric controller, this invention proposes to use a stabilizing controller that can ensure high performance in presence of bounded uncertainties.
It is the object of some embodiments of the invention to use the learned model ƒ of the system to then design a robust-trajectory centric controller for the system. The trajectory-centric controller consists of the open loop state and control (xk, uk) and the local stabilizing policy πθ which are optimized jointly while minimizing the cost to perform the desired task for the system. This joint optimization is performed as an instance of non-linear program, which is explained next with first a brief introduction to trajectory introduction.
Consider the discrete-time dynamical system,
x
k+1=ƒ(xk,uk)
where xk∈Rn
In typical applications the states and controls are restricted to lie in sets X={x∈Rn
such that,
xk ∈X, uk ∈U for k ∈[T]
Some embodiments of the present disclosure are based on the realization that the above constrained trajectory optimization problem is a non-linear optimization program (or NLP). Consequently, it is the object of some embodiments to solve the non-linear trajectory optimization program using an interior point method.
In the following text, we use the following shorthand notation, ∥v∥M2=vTMv. We denote the nominal trajectory as X ≡x0, x1, x2, x3, . . . , xT-1, XT, U≡u0, u1, u2, u3, . . . , uT-1. The actual trajectory followed by the system is denoted as {circumflex over (X)}≡{circumflex over (x)}0, {circumflex over (x)}1, {circumflex over (x)}2, {circumflex over (x)}3, . . . , {circumflex over (x)}T-1, {circumflex over (x)}T. We denote a local policy as π0, where π is the policy and θ denotes the parameters of the policy. The trajectory cost is also sometimes denoted as J=Σk∈[T}c(xk,uk)
Sample efficiency of the MBRL techniques make it a very attractive option for learning optimal controllers for physical systems. Some embodiments of this invention are based on the realization that the performance of MBRL algorithms is extremely susceptible to modeling errors. Any error in the predictive model of the systems is compounded very quickly and can drive the controller to areas where the model is highly uncertain and thus, very hard to control. This can make the whole learning process to diverge and thus, fail.
Some embodiments of the invention are based on the realization that an optimizer can be constrained to avoid the uncertain regions of state-space of a system if the trajectory is solved simultaneously with a policy which is optimized to stabilize the trajectory locally. Such a joint optimization forces an optimization to find trajectories which easy to stabilize as well as optimal. Thus, it allows us to strike a trade-off between the optimality and robustness in the presence of uncertain models estimated during the learning process. This results in better, stable learning of the MBRL algorithms.
Some embodiments of the invention are based on the realization that a lot of trajectory-stabilizing techniques compute controller that are time-varying. This makes real-time control of the controlled system harder. In general, a RL algorithm computes a state-dependent policy as an output as it is easier to implement. The main reason being that the system is non-linear and thus the system dynamics change even with a small perturbation in the system states. The time-dependent tracking controllers are not state-dependent and thus, perform poorly in the scene of perturbation from the planned trajectory. Consequently, the current invention proposes to compute time-independent feedback policy for trajectory stabilization locally around a nominal trajectory.
Consider the case where the system dynamics, ƒ is stochastic (i.e., it is defined by a mean and co-variance function), and only the mean component of ƒ is used to design the controller. Consider the deviation of the system at any step ‘k’ from the state trajectory X and denote it as δxk≡xk−{circumflex over (x)}k. We introduce a local (time-invariant) policy πθ that regulates the local trajectory deviation δxk and thus, the final controller is denoted as ûk=uk+πθ(δxk). The closed-loop dynamics for the system under this control is then given by the following:
{circumflex over (x)}
k+1=ƒ({circumflex over (x)}k,ûk)=ƒ(xk+δxk,uk+πθ(δxk))
The main objective is to find the time-invariant feedback policy πθ that can stabilize the open-loop trajectory X locally within Rk∈Rn
where {circumflex over (ƒ)}(⋅,⋅) denotes the mean function of the model. Note that in the above equation, we have introduced additional optimization parameters corresponding to the policy πθ when compared to classical Trajectory Optimization problem introduced earlier.
Some embodiments of the present disclosure are based on the realization that a stochastic model for a system can be used to estimate the set of system states where the system might move from the nominal trajectory during run time. This estimate of the uncertainty sets gives us the set of states where the system needs to be stabilized during run-time. The goal of the stabilizing controller is push all the states in this set back to the original nominal trajectory. As long as this is true, the system can then follow the original nominal trajectory and thus can achieve the desired optimal performance in performing the desired task.
It is the object of some embodiment to estimate the uncertainty region Rk using a stochastic machine learning algorithm like Gaussian process regression or Stochastic neural network during the model learning process. As explained earlier, Gaussian processes may be used to learn the stochastic dynamics model for the system as a probabilistic function.
Some embodiment of the invention use this probabilistic relationship to estimate the confidence intervals using the predictive Gaussian distribution at a test data point. A confidence level a ∈(0,1) is a user-chosen input that controls the size of the uncertainty set. This value is generally selected closer to 1 for worst-case controller design.
Further,
Some embodiments of the invention use this uncertainty region 630 estimated by the machine learning method to compute a stabilizing policy simultaneously with the trajectory 650. The function of the stabilizing policy is to keep the system close to the nominal system states which is given by the trajectory.
The robust trajectory optimization problem is to minimize the trajectory cost while at the same time satisfying a robust constraint at every step along the trajectory. The purpose 620 of the local stabilizing controller is to push the state with worst-case deviation 640 at every step along the trajectory 650 to ε-tolerance balls 620 around the trajectory. Mathematically, we express the problem as following:
such that,
We define the last term in the above equation as the robustness constraint for the trajectory optimization problem. There are several features of this constraint that are worth mentioning. The above constraint acts on the trajectory at every point along the nominal trajectory, and it ensures that the local stabilizing policy πθ pushes the worst-case deviation of the system state in the set Rk towards the nominal trajectory. Also, this allows a user how closely wants to follow the nominal trajectory by allowing to select a hyperparameter ϵk. This hyperparameter can also be time-indexed.
Some embodiments of the present invention are based on the realization that the robustness constraint leads to a sub-optimization problem inside of the main trajectory optimization problem. This requires estimating the term δxk in the set Rk that incurs the maximum deviation under the action of a stabilizing policy πθ. Then, the robustness constraint is satisfied when such a point incurs a deviation less that the hyperparameter ϵk. Finding solutions to the optimization problem for the robustness constraint for arbitrary non-linear dynamics ƒ is very challenging. However, the problem can be simplified by linearizing the dynamics of the system around the state-control pair (xk, uk) and the linear dynamics can be used to find a local solution to the optimization problem inside the robustness constraint.
The robustness constraint for the linearized dynamics model can be obtained using Taylor series expansion for the non-linear dynamics model ƒ, and thus the robustness constraint term (call it dmax) can be simplified to the following term in the following.
where, A(xk,uk)=∇x
Certain embodiments of the current disclosure ae based on the realization that the robustness constraint on the optimization problem might need extensive tuning of the hyperparameter Ek to get a feasible solution (i.e., a solution that satisfies the constraint for all k∈[T]). In some cases, a feasible solution may not even be guaranteed. A possible solution to circumvent this possible situation to turn the hard robustness constraint into a soft constraint by adding to the objective function, and thus penalizing it everytime the constraint is violated. In the most simplest setting, the robustness term dmax, k can be just moved to the objective function and minimized during optimization. This relaxes the constraint for robustness while guaranteeing feasibility of the optimization problem.
Some embodiments of the invention may solve the following optimization problem using the robustness constraint as a soft constraint and moving it to the objective function.
such that,
Some embodiments of the present disclosure are based on the realization that in order to be able to solve the non-linear trajectory optimization with robustness constraint (either as a hard or soft constraint), there is a requirement of computation of gradient of the robustness constraint. The robustness constraint is, however, a non-differentiable due to the maximum function in the constraint which is non-differentiable. However, a first-order gradient of the robustness term can be obtained using the Dankin's theorem. This realization is critical to the solution of the trajectory optimization problem. Thus it is the object of certain embodiments to estimate the gradient of the robustness constraint using Danskin's theorem.
More formally, let K⊂Rm be a non-empty, closed set and let Ω⊆Rn be a nonempty, open set. Assume that the function g:Ω×K→R is continuous on Ω×K and that ∇xg(x,y) exists and is continuous on Ω×K. Define the function h:Ω→R∪{∞} by:
and,
M(x)≡{y∈K|h(x)=g(x,y)}.
Let x ∈Ω be a given vector. Suppose that a neighborhood N(x) ⊆Ω of x exists such that M(x′) is nonempty for all x′∈N(x) and the set Ux′∈N(x)M(x′) is bounded. Then according to Danskin's theorem following two statements are valid.
The function h is directionally differentiable at x and
If M(x) reduces to singleton, say M(x)={y(x)}, then h is Gaeaux differentiable at x and
∇h(x)=∇xg(x,y(x))
Dankin's theorem allows us to find the gradient of the robustness constraint by first computing the argument of the maximum function and then evaluating the gradient of the maximum function at the point.
Thus, in order to find the gradient of the robust constraint, it is necessary to interpret it as an optimization problem in δxk, which is presented next. Some embodiments of the present disclosure are based on the realization that solution to the finding gradient of the robustness constraint in the general form could be very challenging. A simplification to the robustness constraint is obtained using by a linear parameterization of the stabilizing policy which allows to analytically compute the argument of the maximum function in the robustness constraint. This is very beneficial for computational requirements are it can be obtained analytically without any iterative optimization procedure.
Mathematically, we represent the stabilizing policy as time-invariant constant matrix W such that πθ(δxk)=W·δxk. Then the following realization lead us to estimate the argument of the maximum function in the robustness constraint.
The robustness constraint term dmax,k for the linear parameterization of the feedback policy is quadratic in the argument δxk. Mathematically, it is written as follows:
such that, δxkTskδxk≤1
where, Mk(xk,uk,W)≡A(xk,uk)+B(xk,uk)·W
The resulting form of the worst-case deviation term dmax, k allows us to compute it analytically as the maximum eigenvalue λmax of a matrix Q, where the matrix
The worst deviation δxmax is obtained as the corresponding eigenvector of the maximum eigenvalue.
The gradient of the robustness constraint dmax, k can be then obtained using Dankin's theorem as the gradient of the term at δxmax. More explicitly, using a notation z for an arbitrary vector, and using
the gradient of the robustness constraint term dmax wrt to the arbitrary vector z can be computed as
∇zdmax=∇zδxmaxTQ(z)δxmax
This provides us the gradient of the robustness constraint term at a time-step ‘k’. It is the object of some embodiment to compute the gradient of the robustness constraint term at all k ∈[T].
The robust policy optimization problem can then be solved using the gradient of the robustness constraint as well as the gradient of dynamics of the system to obtain the optimal solution. Some embodiments of the invention use the cost function for the trajectory, the dynamics of the system, the robustness constraint using the uncertainty region for the system and the gradient information of the dynamics as well as the robustness constraint to solve the robust non-linear optimization program to simultaneously synthesize the open-loop trajectory X=x1, x2, . . . , xT, . . . , U=u1, u2, . . . , uT-1 and the local stabilizing policy πθ(δxk)=W·δxk.
Simulation tests are performed using non-linear systems to test and verify the benefits of the proposed robust trajectory-centric controller. In particular, can the feedback controller obtained by this optimization stabilize the open-loop trajectory in the presence of bounded uncertainties? An underactuated pendulum system is used to study this question. The objective is to demonstrate effectiveness of the solution in stabilization of the optimal trajectory and compare the feedback gains obtained via the optimization against time-varying LQR solution. The dynamics of the pendulum is modeled as I {umlaut over (θ)}+b {dot over (θ)}+mgl·sin(θ)=u. The continuous-time model is discretized as (θk+1, {dot over (θ)}k+1)=ƒ((θk, {dot over (θ)}k), u_k). The goal state is xg=[π, 0], and the initial state is x0=[0,0].
The proposed robust trajectory-centric controller is tested on a real ball-and-beam system with unknown dynamics. The ball-and-beam system is a low dimensional non-linear system with non-linearity due to the presence of dry friction and delay in the actuators. The ball-and-beam system is modeled with 4 state variables [x, {dot over (x)}, θ, {dot over (θ)}], where x is the position of the ball, is the ball velocity, θ is the angular position of the beam and {dot over (θ)} is the angular velocity of the beam. The acceleration of the ball is given by the following non-linear equation:
where, mball is the mass of the ball, Iball is the rotational inertia of the ball, is the radius of the ball, b1 is the coefficient of viscous friction of the ball on the beam, b2 is the coefficient of dry friction of the ball on the beam. An inaccurate model of the system is used to design the open-loop trajectory as well the robust trajectory-cnetri controller. The proposed robust controller achieves better performance than the open-loop controller even with the incorrect model.
The above-described embodiments of the present disclosure can be implemented in any of numerous ways. For example, the embodiments may be implemented using hardware, software or a combination thereof. When implemented in software, the software code can be executed on any suitable processor or collection of processors, whether provided in a single computer or distributed among multiple computers. Such processors may be implemented as integrated circuits, with one or more processors in an integrated circuit component. Though, a processor may be implemented using circuitry in any suitable format.
Also, the various methods or processes outlined herein may be coded as software that is executable on one or more processors that employ any one of a variety of operating systems or platforms. Additionally, such software may be written using any of a number of suitable programming languages and/or programming or scripting tools, and also may be compiled as executable machine language code or intermediate code that is executed on a framework or virtual machine. Typically, the functionality of the program modules may be combined or distributed as desired in various embodiments.
Also, the embodiments of the present disclosure may be embodied as a method, of which an example has been provided. The acts performed as part of the method may be ordered in any suitable way. Accordingly, embodiments may be constructed in which acts are performed in an order different than illustrated, which may include performing some acts concurrently, even though shown as sequential acts in illustrative embodiments. Further, use of ordinal terms such as first, second, in the claims to modify a claim element does not by itself connote any priority, precedence, or order of one claim element over another or the temporal order in which acts of a method are performed, but are used merely as labels to distinguish one claim element having a certain name from another element having a same name (but for use of the ordinal term) to distinguish the claim elements.
Although the present disclosure has been described with reference to certain preferred embodiments, it is to be understood that various other adaptations and modifications can be made within the spirit and scope of the present disclosure. Therefore, it is the aspect of the append claims to cover all such variations and modifications as come within the true spirit and scope of the present disclosure.