Method and Apparatus for M-Level Control and Digital-To-Analog Conversion

Information

  • Patent Application
  • 20230205149
  • Publication Number
    20230205149
  • Date Filed
    January 26, 2021
    3 years ago
  • Date Published
    June 29, 2023
    11 months ago
  • Inventors
    • Malmberg; Erik Hampus Niklas
    • Keusch; Raphael Urs
    • Loeliger; Hans-Andrea
  • Original Assignees
Abstract
A method is disclosed for steering a physical analog system (e.g., an electric motor) using a discrete-level (e.g., binary) control signal. The discrete-level control signal is computed by an iterative scheme that can handle a long planning horizon. A preference for infrequent level switches can be taken into account. The quality of the fit to the target trajectory can be expressed not only by the quadratic error, but also by other norms. The method can be used also for digital-to-analog conversion.
Description
TECHNICAL FIELD

The invention relates to finite control set model predictive control (FCS-MPC) and digital-to-analog conversion by using methods from sparse Bayesian learning.


In particular, the invention relates to a method for controlling an analog physical system with at least one M-level input signal(s) as well as to a device for carrying out this method.


BACKGROUND ART

The problem of computing a binary, ternary, or M-level input signal to steer an analog physical system along some desired trajectory, or to make it produce some desired analog output signal, appears both in automatic control and in digital-to-analog conversion. This problem is not trivial (even for linear systems), and the computational complexity of known algorithms for computing “optimal” such input signals grows exponentially with the planning horizon [1].


In model predictive control (MPC), many pertinent methods have been developed [2, 3, 4, 5], with different trade-offs between “optimality” within a fixed (small) planning horizon vs. the ability to handle a long planning horizon. However, for applications requiring a long planning horizon, existing methods are often unsatisfactory.


One method for digital-to-analog conversion is to feed a digitally computed binary (or M-level) signal into an analog linear filter, which then produces (an approximation of) the desired analog signal. A standard method to compute the required binary (or M-level) signal uses a digital ΔΣ modulator, which, however, limits the planning horizon to a single step in time. Longer planning horizons can be achieved with the same methods (and with the same limitations) as in MPC.


In order to solve the limited-horizon problem, the disclosed method uses ideas originating from sparse Bayesian learning [6, 7, 8, 9] and variational representations of non-Gaussian distributions as in [10, 11, 12].


DISCLOSURE OF THE INVENTION

The problem solved by the invention is to compute a binary, ternary, or M-level input signal to steer a linear (or linearized) analog physical system along some desired trajectory, or to make it produce some desired analog output signal, by a method that can handle an arbitrarily long planning horizon. Moreover, a preference for sparsity can easily be added so that the number of level switches in the discrete input signal(s) is kept small.


The key idea is to represent the M-level constraint by a combination of suitably parameterized Gaussian distributions (as detailed in Section 4), which enables the actual computation of the Ai-level input signal by means of iterations of Kalman-type recursions (as detailed in Section 5). In consequence, the computational complexity per iteration grows only linearly with the planning horizon.


In formal terms, the invention is a method for controlling an analog physical system with input signal u=(u1, . . . , uK) to follow a given target trajectory y̆=(y̆1, . . . , y̆K), wherein at least one component (custom-character, . . . , custom-character) of said input signal is discrete-valued with M levels, M∈{2, 3, . . . }, wherein

    • uK=(uk,1, . . . , uk,L)∈custom-characterL is the input signal of the analog physical system at time k∈{1, . . . , K},
    • K∈custom-character(normally K>>1) is a planning horizon,
    • L is the number of input signal components,
    • custom-character(with 1≤custom-character≤L) is the index of said discrete-valued component of u,
    • k=(y̆k,1, . . . , y̆k,H)∈custom-characterH is the given target trajectory at time k,
    • H is the number of components of the target trajectory,


      wherein said method uses an extended system model with output signal {tilde over (y)}=({tilde over (y)}1, . . . , {tilde over (y)}K), {tilde over (y)}k∈R″ for some {tilde over (H)}≥H, and with input signal ũ=(ũ1, . . . , ũK), ũkcustom-characterH for some {tilde over (L)}≥L, such that






u
k
=Sũ
k  (1)


for some matrix S and all k∈{1, . . . , K}, and with Lime-dependent parameters θ=(θ1, . . . , θK) and optional additional parameters ξ=(ξ1, . . . , ξK), wherein ũ=(ũ1, . . . , ũK) is determined by iteratively executing, in iterations i=1, 2, 3 . . . . , the steps of

    • (a) executing a maximization step in said extended system model with parameters θ fixed to θ(i−1) and ξ, fixed to ξ(i−1), thereby obtaining a candidate input signal (ũ1(i), . . . , ũK(i)) with optional precision information (VŨ1(i), . . . , VŨK(i)), and an output signal ({tilde over (y)}1(i), . . . , {tilde over (y)}K(i)) with optional precision information (V{tilde over (Y)}1(i), . . . , V{tilde over (Y)}K(i)), and
    • (b) determining new parameters θ(θ1(i), . . . , θK(i)) and optionally ξ(i)=(ξ1(i), . . . , ξK(i)), where θk(i) is a function of ũk(i) and VŨk(i), and ξk(i) is a function of {tilde over (y)}k(i) and V{tilde over (Y)}k(i) as computed in Step (a), and wherein said extended system model can be expressed as






p(ũ,ẙ,{tilde over (x)}0,{tilde over (e)}|θ,ξ)∝p(ẙ|ũ,{tilde over (x)}0,{tilde over (e)},ξ)p(ũ,θ)p({tilde over (x)}0)p({tilde over (e)})  (2)


wherein

    • p(ú, ẙ, {tilde over (x)}0, {tilde over (e)}|θ, ξ) is a probability density function in ũ, ẙ, {tilde over (x)}0 and {tilde over (e)} with parameters θ and ξ,
    • ẙ=(ẙ1, . . . , ẙK), ẙkcustom-characterH, is the target trajectory of said extended system model comprising y̆ and optionally additional trajectories,
    • “∝” denotes equality up to a scale factor,
    • said analog physical system is modeled by a discrete-time linear state space model recursions






x
k
=A
k
x
k
+B
k
u
k
+D
k
e
k  (3)






y
k
=C
k
x
k  (4)

    • for k∈{1, . . . , K}, and with state vector xkcustom-characterN, initial state x0 noise ekcustom-characterG, model. output ykcustom-characterH and matrices Ak, Bk, Ck, Dk,
    • said method uses an extended version of model (3) and (4) which is given by the state space recursions






{tilde over (x)}
k

k
{tilde over (x)}
k
+{tilde over (B)}
k

k
+{tilde over (D)}
k
{tilde over (e)}
k  (5)






{tilde over (y)}
k
={tilde over (C)}
k
{tilde over (x)}
k  (6)

    • for k∈{1, . . . , K}, and with state vector xkcustom-characterÑ with Ñ≥N, initial state x0, noise ekcustom-characterG with {tilde over (G)}≥G, and wherein the matrices Ah, Bk, Ck and Dk are derived from Ak, Bk, Ck and Dk,
    • p(ẙ|ũ, {tilde over (x)}0, {tilde over (e)}, ξ) is given by










p

(



y




u
~


,


x
~

0

,

e
~

,
ζ

)




exp

(


-

1
2







k
=
1

K





(



y


k

-


y
~

k


)

T




W
k

(



y


k

-


y
~

k


)




)



ψ

(


y
~

,
ζ

)






(
7
)







where Wk is a real non-negative weight matrix and where {tilde over (y)}k is the extended system model output signal determined by (5) and (6),

    • ψ({tilde over (y)}, ξ) is an optional factor in (7), which means it is either 1, or if present, it may take the form










ψ

(


y
~

,
ζ

)

=




k
=
1

K




ψ
k

(



y
~

k

,

ζ
k


)






(
8
)









    • such that, for fixed ξk, ψk({tilde over (y)}k, ξk) is a Gaussian probability density function in up to a scale factor,

    • p({tilde over (x)}0) is a Gaussian probability density,

    • p({tilde over (e)}) factors as













p

(

e
~

)

=




k
=
1

K



p

(


e
~

k

)






(
9
)









    • where each p(ek) is a Gaussian probability density,

    • p(ũ, θ) factors as













ρ

(


u
~

,
θ

)

=




k
=
1

K




ρ
k

(



u
~

k

,

θ
k


)






(
10
)









    • such that,
      • for fixed θk, pkk, θk) is a Gaussian probability density function in uk, up to a scale factor, and
      • for at least one index custom-character∈{1, . . . , L}, pkk, θk) contains as a factor the product









custom-character(custom-character;m1k,12) . . . custom-character(custom-character;mJk,J2)  (11)

      • of J≥2 Gaussian probability density functions with different means m1, . . . , mJ and with variances σk,12, . . . , σk,J2 determined by θk.


The invention also relates to a device for carrying out this method. This device comprises:

    • an output interface for generating said input signal u to the analog physical system and
    • a digital control unit connected to said output interface and adapted and structured to carry out the above method.


Finally, the invention also relates to a use of the method or device for at least one of the following applications:

    • digital-to-analog conversion by feeding a discrete-valued signal into an analog low-pass filter,
    • digital-to-analog conversion by feeding a discrete-valued signal into an analog band-pass filter,
    • controlling an electric motor with at least one discrete-level input signal,
    • controlling an electric power converter with at least one discrete-level input signal.





BRIEF DESCRIPTION OF THE DRAWINGS

The invention will be better understood and objects other than those set forth above will become apparent when consideration is given to the following detailed description thereof. This description makes reference to the annexed drawings, wherein:



FIG. 1 shows the system model with an analog physical system and a control unit, comprising a digital control unit and an output interface.



FIG. 2 shows a third order low-pass filter in Sallen—Key topology.



FIG. 3 shows a numerical example of the DAC of FIGS. 1 and 2.



FIG. 4 shows the cost function of eq. (22) for a two-level constraint.



FIG. 5 shows the cost, function or eq. (25) for a three-level constraint.



FIG. 6 shows the cost function of eq. (28) for a four-level constraint.



FIG. 7 shows three numerical examples of electric motor control as in Section 7.



FIG. 8 shows a numerical example of box-constrained trajectory planning as in Section 9.



FIG. 9 shows a numerical example of MIMO electric motor control as in Section 10.1.



FIG. 10 shows a diagram illustrating the dynamical system of Section 0.1.0.2.



FIG. 11 shows a numerical example of trajectory planning as in Section 10.2.





MODES FOR CARRYING OUT THE INVENTION

As mentioned, the key idea of the disclosed invention is to represent the M-level constraint by a combination of parameterized Gaussian distributions, as will be detailed in Section 4 below. However, this key idea requires a context of several other (mostly well-known) concepts, as will be explained in Sections 3, 5 and 6. Throughout Sections 3-5, a digital-to-analog converter as in Section 2.1 will be used for illustration. Further examples (i.e., further embodiments of the disclosed invention) will be given in Sections 7 and 10.


1 Notation

We denote the all-zero vector of length N by 0N, the all zero matrix of dimension N×M by 0N×M, the all-ones vector of length N by 1N, the all-ones matrix of dimension N×M by 1N×M and the identity matrix of dimension N×N by IN.


Further, the probability density function of a univariate Gaussian distribution in x∈custom-character with mean m∈R and variance σ2custom-character is denoted by










𝒩

(


s
;
m

,

σ
2


)

=


1


2


πσ
2







exp

(

-



(

x
-
m

)

2


2


σ
2




)

.






(
12
)







The probability density function of a multivariate Gaussian distribution in x∈custom-characterN with mean vector m∈custom-characterN and covariance matrix V∈custom-characterN×N is denoted by










𝒩

(


xz
;
m

,
V

)

=


1




(

2

π

)

N





"\[LeftBracketingBar]"

V


"\[RightBracketingBar]"








exp

(


-

1
2





(

x
-
m

)

T




V

-
1


(

x
-
m

)


)

.






(
13
)







2 System Overview

As shown in FIG. 1, the present invention relates to techniques for controlling an analog physical system 1 by means of a device 2. For example, system 1 may be a low-pass or band-pass filter as part of a digital-to-analog converter, an electric motor, or the load in a electric power converter.


System 1 has at least one input signal u that can take on at least M>1 discrete levels and at least one output signal y.


Device 2 comprises an output interface 4 for generating the input signal u. For example, the output interface 4 may be a binary or ternary output port of device 2.


Further, device 2 comprises a control unit 3, such as a microprocessor or FPGA, adapted to carry out the steps of the method described here. Device 2 is adapted to generate the input signal u in such a manner that the output signal y follows a desired trajectory (target trajectory).


2.1 EXAMPLE

As a first example, consider a digital-to-analog converter wherein the analog physical system 1 of FIG. 1 is a simple (i.e., low-cost) analog low-pass filter. The analog filter is exemplified by the circuit in FIG. 2, which shows a Sallen—Key low-pass filter [13]. The task of the digital control unit 3 and the output interface 4 is to produce a two-level input signal u to the analog filter such that the resulting output waveform y closely approximates any given target waveform y, as illustrated in FIG. 3. This task is solved by the disclosed invention as will be detailed below. Moreover, in Sections 3 and 5, this example will be used to illustrate the concepts and methods of this disclosure.


3 Analog-System Model

The linear state space model (3) and (4) represents the given analog physical system. Such a state space model can be obtained by well-known methods (including discretization in time and linearization) from an underlying continuous-time state space model. However, the method utilizes an extended system model (5) and (6) which is an extended version of said analog physical system model and may contain additional inputs, states or outputs.


3.1 EXAMPLE

In the example of Section 2.1, we have a single scalar input signal u=(u1, . . . , uK)(i.e., L=1) and a single scalar output y (i.e., H=1). Between ticks tk and tk+1 of the digital clock, the continuous-time input voltage is kept at the constant level uk (cf. FIG. 3). For the specific circuit of FIG. 2, we obtain a state space representation of the form (3) and (4) with xkcustom-character3 as follows.


The numerical example in FIG. 3 is obtained with the following values for the components in FIG. 2:






R
1=9.1 kΩ,C1=16 μF,  (14)






R
2=82 kΩ,C2=1.3 μF,  (15)






R
3=36 kΩ,C3=2 μF.  (16)


The resulting frequency response is











output


voltage


input


voltage


=



"\[LeftBracketingBar]"


270.535



(

i

ω

)

3

+

16.926


(

i

ω

)

2


+

108.16

(

i

ω

)


+
270.535




"\[RightBracketingBar]"






(
17
)







with i=√{square root over (−1)} and frequency f=w/(2π). The corresponding discrete-time model of the analog physical system is given by











A
k

=

[



0.83941



-
1.006




-
2.48427





0.00918


0.99485



-
0.01278





0.00005


0.00998


0.99996



]


,




(
18
)







Bk=[0.00918 0.00005 0]T, Ck=[0 0 270.53523], and Dk=[0 0 0]T. The state space matrices of the extended system model for this example are trivially given by Ãk=Ak, {tilde over (B)}k=Bk, {tilde over (C)}k=Ck, and {tilde over (D)}k=Dk.


3.2 Beyond the Example

In the above example, the matrices Ak, Bk, Ck and Dk do not depend on k, but in general, they might. In fact, these matrices may even depend on the iteration step i (e.g., as a consequence of customary linearization techniques). Moreover, in general, the analog physical system may have multiple inputs (L≥1) and/or multiple outputs (H≥1), cf. Section 10.1. Not all input signals need be restricted to discrete levels. In addition, the system model may also be driven by stochastic noise, hence the term Dkek in (3).


4 M-level Priors

For ease of exposition, we assume here a single scalar input signal (i.e., L=1).


4.1 Two-Level Prior

Restricting the analog-system input signal u to two levels {a, b} can be achieved with






S=1  (19)


in (1), i.e., L=1 and u=ũ, and with pkk, θk) and θk in (10) as






p
k(ukk)=custom-character(ũk;a,σk,12)custom-character(ũk;b,σk,22)  (20)


and θk=(σk,12, σk,22) For fixed θk, the function (20) is a product of two Gaussian probability density functions, which is again a Gaussian probability density function, up to a scale factor.


The function










max

θ
k





ρ
k

(



u
~

k

,

θ
k


)





(
21
)







can be viewed as a prior on uk (=ũk) that strongly encourages uk to lie in {a, b}, as is obvious from FIG. 4, which shows the function










cost
(

u
k

)

=


-
log



max

θ
k






ρ
k

(


u
k

,

θ
k


)

.






(
22
)







4.2 Three-Level Prior

Restricting the analog-system input signal u to three levels {b, 0, −b} can be achieved with






S=[1 1]  (23)


i.e., L=2 and uk=uk,2, and with pkk, θk)=pkk,1, ũk,2, θk) in (10) as






p
k(ũk,1k,2k)=custom-character(ũk,1;0,σk,1,12)custom-character(ũk,1;b,σk,1,22)custom-character(ũk,2;−b,σk,2,22)  (24)


with θk=(σk,1,12, σk,1,22, σk,2,12, σk,2,22). Again, for fixed θk, the function (24) is a Gaussian probability density function, up to a scale factor.


In this case, the function (21) can be viewed as a prior on ũk that strongly encourages uk=Sũk to lie in {b, 0, −b}, as is obvious from FIG. 5, which shows the function










cost
(

u
k

)

=


-
log



max




u
~

k

:
S



u
~

k


=

u
k





max

θ
k






ρ
k

(


u
k

,

θ
k


)

.






(
25
)







The three-level prior is a combination of two two-level priors whereas S acts as a mapping between the two-level components of a and the three-level component of u.


4.3 Four-Level Prior

Restricting the analog-system input signal u to four levels {0, 2b, 3b} can be achieved with






S=[1 1 1],  (26)


i.e., {tilde over (L)}=3 and ũkk,1k,2k,3, and with pkk, θk)=pkk,1, ũk,2, ũk,3, θk) in (10) as






p
k(ũk,1k,2k,3k)=custom-character(ũk,1;0,σk,1,12)custom-character(uk,1;b,σk,1,22custom-character(ũk,2;0,σk,2,12)custom-character(ũk,2;b,σk,2,22custom-character(ũk,3;0,σk,3,12)custom-character(ũk,3;b,σk,3,22)  (27)


with θk=(σk,1,12, σk,1,22, σk,2,12, σk,2,22, σk,3,12, σk,3,22), Again, for fixed θk, the function (27) is a Gaussian probability density function, up to a scale factor.


In this case, the function (21) can be viewed as a prior on ũk that strongly encourages uk=Sũk to lie in {0, b, 2b, 3b)}, as is obvious from FIG. 6, which shows the function










cost
(

u
k

)

=


-
log


max




u
~

l

:
S



u
~

k


=

u
k




max

θ
k






ρ
k

(



u
~

k

,

θ
k


)

.






(
28
)







4.4 M-Levels

M-level priors with M>3 can be achieved, in more than one way, by generalizations of (23) and (24) with











ρ
k

(



u
~


k
,
1


,

,


u
~


k
,

L
~



,

θ
k


)

=






~

=
1


L
~







j
=
1


J


~





𝒩
(




u
~


k
,


~



;

m



~

,
j



,

σ

k
,


~

,
j

2


)







(
29
)







with fixed means custom-character and with θk comprising the variances custom-character. Advantageously, the components ũk,lare restricted to two levels and S is an all-ones vector.


5 Extended System Model and Algorithms

The analog physical system is modeled by a discrete-time linear state space model with state recursions (3) and output relation (4) where the matrices Ak, Bk, Ck and Dk are obtained using well-known methods. Said model consists of L input signal components, N states and H output signal components where at least one input signal component is discrete-valued. One may use Dk and ek, to model any present system noise. For the sake of simplicity, said system noise is omitted in the given examples of Sections 5, 7 and 10.


The disclosed method, however, utilizes an extended system model (5) and (6) which is an extended version of said analog physical system model and may contain additional inputs, states or outputs. In the example of Section 2.1, the extended system model is trivially given by the analog physical model since no additional inputs signal components, states or output signal components are needed. Beyond this example, additional inputs signal components may be used to model discrete-valued inputs for M>2, as shown in Section 4. Additional states and output signal components may be introduced, for example, to map input level differences to additional output signal components, as detailed in Section 7.


The extended system model comprises, besides (5) and (6), also the function (7), the prior p(ũ, θ), the initial state distribution p({tilde over (x)}0), and the noise distribution p({tilde over (e)}) and is summarized in (2).


5.1 Harnessing Linear Gaussian Estimation

For fixed parameters θ (and ξ, if applicable), the extended system model (2) is a customary linear-Gaussian model. In particular, the posterior distributions p(ũ|ẙ, θ, ξ) and p({tilde over (y)}|ẙ, θ, ξ) are both jointly Gaussian, and the MAP (maximum a posteriori) estimates of ũ and {tilde over (y)} coincide with their MMSE (mini-mum mean-squared error) estimates. Moreover, the estimate of u=(ũ1, . . . , ũK) with ũk=(ũk,1, . . . , ũk,L), the estimate of {tilde over (y)}=({tilde over (y)}1, . . . , {tilde over (y)}K) with {tilde over (y)}k({tilde over (y)}k,1, . . . , {tilde over (y)}k,{tilde over (H)}) and the corresponding sequence of posterior variances VŨ=(VŨ1, . . . , VŨK) with Vc=(VŨk,1, . . . , VŨk,L), and V{tilde over (Y)}(V{tilde over (Y)}1, . . . , V{tilde over (Y)}K) with V{tilde over (Y)}k=(V{tilde over (Y)}k,1, . . . , V{tilde over (Y)}k,{tilde over (H)}) can be computed by well-known recursive algorithms (variations of Kalman filter algorithms) with complexity linear in K. A preferred such algorithm is the MBF algorithm aug-mented with input signal estimation as described in Section V of [14]. Alternatively, the estimates of ũ and {tilde over (y)} (but not their variances) can be computed by steepest-descent or other customary optimization algorithms.


Accordingly, the input signal it can be computed by alternating, in iterations i=1, 2, 3, . . . , the steps of

    • (a) computing the estimates ũ(i)=(ũ1(i), . . . , ũK(i)) and {tilde over (y)}(i)=({tilde over (y)}1(i), . . . , {tilde over (y)}K(i)) and optionally the precision information VŨ(i)=(VŨ1(i), . . . , VŨK(i)) and V{tilde over (Y)}(i)=(V{tilde over (Y)}1(i), . . . , V{tilde over (Y)}K(i)) for fixed parameters θ=θ(i−1) and ξ=ξ(i−1), and
    • (b) determining new parameters θ(i) based on ũ(i) (and perhaps VŨ(i)) and new parameters ξ(i) based on {tilde over (y)}(i) (and perhaps V{tilde over (Y)}(i)), as computed in Step (a).


The following two Sections describe two ways to determine new parameters θ. Specific ways to determine the optional parameters C are given in Sections 7 and 8.


5.2 Determining the Variances by Alternating Maximization

One possibility for Step (b) above is to determine the new parameters by










θ

(
i
)


=


argmax
θ




p
(



u
~


(
i
)


,


y



θ

,

ζ

(

i
-
1

)



)






(
30
)









=


argmax
θ




ρ

(



u
~


(
i
)


,
θ

)



,





(
31
)







which splits into










θ
k

(
i
)


=


argmax

θ
k






ρ
k

(



u
~

k

(
i
)


,

θ
k


)






(
32
)







for k∈{1, . . . , K}, which can be expressed in closed form: for pkk,1, . . . , ũk,{tilde over (L)}, θk) as in (29), we obtain





(custom-character)(i)=(custom-charactercustom-character)2  (33)


Using (32) amounts to effectively using the prior (21). The posterior variances (YŨ1, . . . , VŨK) are not required.


5.3 Determining the Variances by Expectation Maximization

Another possibility for Step (b) is to determine the new parameters by expectation maximization as follows:











θ

(
i
)


=


argmax
θ




E
[

log



p
(


U
~

,


y



θ

,

ζ

(

i
-
1

)



)


]



,




(
34
)







where the expectation is with respect to p(ũ|ẙ, θ(i−1), ξ(i−1)). But (34) simplifies to











θ
k

(
i
)


=


argmax

θ
k





E
[

log




ρ
k

(



U
~

k

,

θ
k


)


]



,




(
35
)







for k∈{1, . . . , K}, where the expectation is with respect to p(ũk|{tilde over (y)}, θ(i−1), ξ(i−1)). For pkk,1, . . . , ũk,{tilde over (L)}, θk) as in (29), we obtain











(

σ

k
,


~

,
j

2

)


(
i
)


=

E
[


(



U
~


k
,


~



-

m



~

,
j



)

2

]





(
36
)








=


V


U
~


k
,


~




(
i
)


+


(


u
~


k
,


~



(
i
)


)

2

-

2


m



~

,
j





u
~


k
,


~



(
i
)



+


m



~

,
j

2

.







(
37
)







EXAMPLE

In the example of Section 2.1, the function (7) can be written as










p

(



y




u
~


,


x
~

0

,

e
~

,
ζ

)



exp

(


-

1
2







k
=
1

K




w

(



y


k

-


y
~

k


)

2



)





(
38
)







with weight w>0, ẙ=y̆ and with p(u, θ) as in (10) and (20) with a=0 and b=1. From (20), we have θk=(σk,12, σk,22). Determining θ(i) by (32) results in





σk,1(i)=(ũk(i))2  (39)





and





σk,2(i)=(ũk(i)−b)2.  (40)


Determining θ(i) by (35) results in





σk,1(i)=VUk(i)+(ũk(i))2  (41)





and





σk,2(i)=YUk(i)+(ũk(i))2−2k(i)+b2  (42)


The numerical example in FIG. 3 is obtained with (41) and (42), p({tilde over (x)}0)=custom-character({tilde over (x)}0; 0, 0.01), {tilde over (e)}k=0, and with w=25. Larger values of u, in (38) will yield better approximations of the target y̆. However, if a is too large, the computed input signal u may fail to comply with the two-level constraint.


6 Online Operation and Feedback Control
6.1 Online Operation

In many applications, the disclosed method will be used in an online mode as follows. In a first planning period (with planning horizon K), the disclosed method is used to determine an input signal (u1, . . . , uK). However, only an initial segment (u1, . . . , ur) with 0<r<K is actually fed into said analog physical system. In a second planning period, the disclosed method is used to determine an input signal (ur+1, . . . , ur+K), but only (ur+i, . . . , u2r) is actually fed into said analog physical system. An so on: in the n-th planning period, the disclosed method is used to determine an input signal (u(n−1)r+1, . . . , u(n−1)r+K), of which only (u(n−1)r+1, . . . , unr) is actually fed into said analog physical system.


6.2 Feedback Control

In the online mode of Section 6.1, measurements or additional output signals of said analog physical system, if available, can be used to improve p({tilde over (x)}0) (i.e., the estimate of the initial state {tilde over (x)}0), for each planning period (as described in Section 5.1, Step (a)) by customary state-tracking methods.


7 Sparse Switching Between Discrete Levels

In many applications, switching the input signal between the allowed discrete levels is costly (e.g., because of thermal losses) and should be done as infrequently as possible.


The disclosed method can handle such situations by an extended system model as follows. For ease of exposition, we will assume a single scalar input signal (i.e., L=1) and a single scalar output (i.e., H=1). First, a state space model representation (with Ak, Bk, Ck and Dk) of the analog physical system is derived. Then, the state space is extended by two states yielding the state space matrices of the extended system model












A
~

k

=

[



0





0

















0

2
×
N






1





0











0

N
×
2








A
k




]


,



B
~

k

=

[



1




0





B
k




]


,




(
43
)









C
~

k

=

[



1






-
1




0
N









0
2







C
k




]


,



D
~

k

=

[




0
G






0
G






D
k




]






(
44
)







derived from Ak. Bk, CA. and Dk, with ũk=uk, {tilde over (e)}k=ek, and {tilde over (y)}k=(Uk−uk−1, yk) for k∈{1, . . . , K}. By choosing Ck as above, the level differences uk−uk−1 appear as an additional signal component {tilde over (y)}k,1 in the extended system model output signal {tilde over (y)}.


A quadratic penalty on the level differences can be achieved by setting nonzero weights in Wk of the function (7) for the particular output signal component Penalties of other forms can be achieved using the optional factors ψk({tilde over (y)}k. ξk) in (8). Said factors ψk({tilde over (y)}k, ξk) are proportional to Gaussian probability densities for fixed ξk. However, their variances may be unknown and determined in every iteration step. By choosing suitable factors ψk({tilde over (y)}k, ξk), the penalty function










cost
(


y
~


k
,
1


)

=


-
log



max

ζ
k





ψ
k

(



y
~


k
,
1


,

ζ
k


)






(
45
)







can advantageously represent the absolute value function |uk−uk−1| the Huber function, or convex-concave functions as described in [12].


Example: Electric Motor Control

For a concrete example, consider a simple model of an electric motor as follows. The model has a scalar input a (the control voltage applied to the motor coil) and a scalar output y (the motor coil current) where the input is assumed to be a discrete-valued signal. Given a desired motor coil current y̆ (target trajectory), the goal is to determine a discrete-valued (three level) control voltage a such that the resulting motor coil current approximates the desired motor coil current. The motor coil is assumed to be an ideal inductor modeled by a first order integrator. The discrete-time model of the analog physical system is given by






A
k=1,Bk1/α,Ck=1,Dk=0  (46)


for k∈{1, . . . , K} and where a is the inductance of the motor coil. The extended state space matrices (43) and (44) are












A
~

k

=

[



0


0


0




1


0


0




0


0


1



]


,



B
~

k

=

[



1




0





1
/
α




]


,




(
47
)









C
~

k

=

[



1



-
1



0




0


0


1



]


,



D
~

k

=

[



0




0




0



]


,




(
48
)







for k∈{1, . . . , K}. The priors pkk, θk) are chosen according to the three-level prior described in Section 4.2 with b=1 and S=[1 1], strongly encouraging the input signal to lie in {−1, 0,1}. n The first component of the extended system model target trajectory ẙ is given by (ẙ1,1, . . . , ẙK,1)=(0, . . . , 0), and the second component by (ẙ1,2, . . . , ẙK,2)=y̆. The function (7) becomes










p

(



y




u
~


,


x
~

0

,

e
~

,
ζ

)



exp

(


-

1
2







k
=
1

K





(



y


k

-


y
~

k


)

T




W
k

(



y


k

-


y
~

k


)




)





(
49
)







with diagonal weight matrix Wk=diag (w1, w2), where w1>0 and w2>0 are real weights. This results in a quadratic penalty on the level differences with weight w1 and a quadratic penalty on the approximation error with weight w2.


The numerical results of FIG. 7 are obtained with p({tilde over (x)}0)=custom-character({tilde over (x)}0; 03, 0.01·I3), {tilde over (e)}k=0, α=10 and K=150, and with (41) and (42). The experiment was executed three times with different weights w1 and w2.


The desired target motor coil current y̆ is shown in the first plot as dashed line together with the resulting motor coil current y as solid line. The plots below show the determined input signal a as solid line. Three different trade-offs between switching effort and approximation error are shown from top to bottom.


Top: A large w1 leads to few level switches and a small w2 allows large approximation error.


Middle: A Medium w1 and w2 leads to more level switches but a fairly good approximation of y̆.


Bottom: A. small w1 and a large w2 leads to many level switches and a precise approximation of y̆.


8 Beyond Quadratic Fitting Cost

For ease of exposition, an extended system model with scalar inputs and outputs (i.e., {tilde over (L)}=L={tilde over (H)}=H=1) is assumed for this section.


If the optional factor ψ({tilde over (y)}, ξ)=1, the function (7) results in a standard 2-norm penalty on the deviation between the extended system model target trajectory and extended system model output signal j. However, the disclosed method can handle other p-norms with p≥1, p≠2 (and essentially also quasi-norms with 0<p<1) by utilizing the optional factor ψ({tilde over (y)}, ξ) and updating ξ in every iteration step. The function (7) can be written as










p

(



y




u
~


,


x
~

0

,

e
~

,
ζ

)




exp

(


-

1
2







k
=
1

K





w
k

(



y


k

-


y
~

k


)

2



)



ψ

(


y
~

,
ζ

)






(
50
)







with scalar weight Wk. Choosing











ψ
k

(



y
~

k

,

ζ
k


)

=




2

π


w
k





exp
(



-


β
k
2

(

2
-
p

)





(

w
k

)



-
p


2
-
p





2

p


)






(
51
)







yields










p

(



y




u
~


,


x
~

0

,

e
~

,
ζ

)




exp

(


-

1
2







k
=
1

K





w
k

(



y


k

-


y
~

k


)

2



)



exp
(



-


β
k
2

(

2
-
p

)





(

w
k

)



-
p


2
-
p





2

p


)






(
52
)







where the weights wk are determined by ξk and βk is a constant scale factor depending on the initial weight wk, and is defined by










β
k

=



(



p

ω

k

2

)


1

2
-
p



.





(
53
)







The optional parameters are determined in every iteration I by










ζ
k

(
i
)


=


ω
k

(
i
)


=




"\[LeftBracketingBar]"





𝓎


k

-


𝓎
~

k

(
i
)




β
k




"\[RightBracketingBar]"



p
-
2







(
54
)







for k∈{1, . . . . K}.


As denoted above, βk is a constant scale factor, precalculated before the first iteration and not updated during the iterations.


The utilization of the optional factor ψ({tilde over (y)}, ξ) results in the following cost term










cost
(


𝓎


-

𝓎
~


)

=


-
log


max
ζ


p

(



𝓎


|

u
~


,


x
~

0

,

e
~

,
ζ

)







(
55
)







=


1
2






k
=
1

K



ω
k







"\[LeftBracketingBar]"




𝓎


k

-


𝓎
~

k




"\[RightBracketingBar]"


p

.









(
56
)








Example: Absolute-Value Penalty

An absolute value penalty (i.e., p=1) is achieved by choosing










ψ

(



𝓎
~

k

,

ζ
k


)

=




2

π


ω
k





exp

(


-

β
k
2



2


ω
k



)






(
57
)







with ξk=wk an βk=wk/2.


9 Soft Box Constraint

For ease of exposition, an extended system model with scalar inputs and outputs (i.e., {tilde over (L)}=L={tilde over (H)}=H=1) is assumed for this section.


If the optional factor ψ({tilde over (y)}, ξ)=1, the function (7) results in a standard 2-norm penalty on the deviation between the extended system model target trajectory ẙ and extended system model output signal {tilde over (y)}. However, the disclosed method may also be used to enforce {tilde over (y)} to lie within fixed bounds by utilizing the optional factor ψ({tilde over (y)}, ξ) and updating ξ in every iteration step. Specifically, the method may be used to enforce







k
≤{tilde over (y)}
k
≤ẙ
kk,k∈{1, . . . ,K},  (58)


where ẙk and ẙk, +ηk set the lower and upper bounds of the box constraint at time k, respectively. The function (7) can be written as










p


(



𝓎


|

u
~


,


x
~

0

,

e
~

,
ζ

)





exp

(


-

1
2







k
=
1

K




ω
k

(



𝓎


k

-


𝓎
~

k


)

2



)



ψ

(


𝓎
~

,
ζ

)






(
59
)







with scalar weight wk. In order to achieve (58), we choose











ψ
k

(



𝓎
~

k

,

ζ
k


)

=




2

π


ω
k





exp

(

-


γ
2


2


ω
k




)



exp

(


-

1
2






ω
k


(



𝓎


k

+

η
k

-


𝓎
~

k


)

2


)



exp

(

-


γ
2


2


ω
k





)






(
60
)







with auxiliary weight wk yielding











p


(



𝓎


|

u
~


,


x
~

0

,

e
~

,
ζ

)





exp

(


-

1
2







k
=
1

K




ω
k

(



𝓎


k

-


𝓎
~

k


)

2



)




exp

(


-

1
2







k
=
1

K



ω
k





(



𝓎


k

+

η
k

-


𝓎
~

k


)

2




)

·

exp

(


-

1
2







k
=
1

K



γ
2


2


ω
k





)




exp

(


-

1
2







k
=
1

K



γ
2


2


ω
k






)



,




(
61
)







where the weights wk and wk, are determined by ξk and where γ is a constant scale factor.


The optional parameters are determined in every iteration i by










ζ
k

(
i
)


=


(


ω
k

(
i
)


,

ω
k



(
i
)



)

=

(




"\[LeftBracketingBar]"


γ



𝓎


k

-


𝓎
~

k

(
i
)






"\[RightBracketingBar]"


,



"\[LeftBracketingBar]"


γ



𝓎


k

+

η
k

-


𝓎
~

k

(
i
)






"\[RightBracketingBar]"



)






(
62
)







for k∈{1, . . . , K}.


The utilization of the optional factor ψ({tilde over (y)}, ξ) results in the following cost term for (59)










cost
(

𝓎
~

)

=


-
log


max
ζ


p

(



𝓎


|

u
~


,


x
~

0

,

e
~

,
ζ

)







(
63
)








=


γ





k
=
1

K




"\[LeftBracketingBar]"




𝓎


k

-


𝓎
~

k




"\[RightBracketingBar]"




+



"\[LeftBracketingBar]"




𝓎


k

+

η
k

-


𝓎
~

k




"\[RightBracketingBar]"




,





(
64
)








where (64) is constant for {tilde over (y)}k in the interval [ẙk, ẙkk], and rises with slope 2γ outside of [ẙk, ẙkk].


The constraint (58) may be applied to any output of the extended system model, i.e., to any linear function of the state {tilde over (x)}k (including also inputs).


Example: Steering Object Through Tunnel

For a concrete example, consider a control problem wherein the analog physical system is a third order integrator chain. The task is to determine a discrete-valued (seven level) control input u to the analog physical system such that the resulting output trajectory y lies between y̆ and y̆+η, with η=(η1, . . . , ηK)∈custom-characterK.


The discrete-time model of the analog physical system is given by











A
k

=

[



1


0


0




1


1


0





1
/
2



1


1



]


,


B
k

=

0.0015
·

[



1





1
/
2






1
/
6




]



,




(
65
)














C
k

=

[



0


0


1



]


,


D
k

=

[



0




0




0



]


,




(
66
)







for k∈{1, . . . , K}. The state space matrices of the extended system model are trivially given by Ãk=Ak, {tilde over (B)}k=Bk, {tilde over (C)}k=Ck and {tilde over (D)}k=Dk, and thus {tilde over (y)}=y and ẙ=y̆.


The priors pkk, θk) are chosen according to the M-level prior described in Section 4.4 with {tilde over (L)}=6, custom-character=2, for all custom-character∈{1, . . . , L}, (m1,1, m1,2, . . . , m6,2)=(0, 1, 0, 1, 0, 1, 0, −1, 0, −1, 0, −1), and S=[1 1 1 1 1 1], strongly encouraging the input signal to lie in {−3, −2, −1, 0, 1, 2, 3}.


The numerical results of FIG. 8 are obtained with p({tilde over (x)}0)=custom-character({tilde over (x)}0; 03, 0.01·I3), {tilde over (e)}k=0, γ=20 and K=300, and with (41), (42) and (62).


The desired bounds y̆ and y̆+η are shown in the first plot as dashed line together with the resulting output trajectory y as solid line. The plot below shows the determined discrete-value control signal u as solid line.


10 Further Examples

In the following sections, we describe further embodiments of the invention.


10.1 Multiple Discrete Inputs and Multiple Outputs

In the previous examples, the analog physical system had a single input (i.e., L=1) and a single output (H=1). However, the disclosed method can handle multiple inputs and outputs.


Example: MIMO Motor Control

This example generalizes the example of Section 7 to multiple inputs and outputs. Specifically, the motor in this example is composed of three motor coils which are controlled independently. As a consequence, L=3 and H=3. The input signal u of the analog physical system consists of three components (u1,1, . . . , uK,1), (u1.2, . . . , uK,2) and (u1,3, . . . , uK,3) describing the discrete-valued control voltages for the three motor coils. Analogously, the model output y contains three signal components describing the three motor coil currents as well as the target trajectory Y contains three signal components, describing the three desired motor coil currents.


The three motor coils of the analog physical system are modeled by three first-order integrators, yielding the following state space representation











A
k

=

[



1


0


0




0


1


0




0


0


1



]


,




(
67
)











B
k

=

1
/

α
[



1


0


0




0


1


0




0


0


1



]



,








C
k

=

[



1


0


0




0


1


0




0


0


1



]


,







D
k

=

[



0




0




0



]





with inductance a for k∈{1, . . . , K}.


The states of the system are fully decoupled. Coupling between the states could easily be incorporated by populating the non-diagonal entries of Ak. The state space matrices of the extended system model are trivially given by Ãk=Ak, {tilde over (B)}k=Bk, {tilde over (C)}k=Ck and {tilde over (D)}k=Dk.


The prior pk(uk, θA) is a product of multiple three-level priors, i.e.,











ρ
k

(



u
~

k

,

θ
k


)

=


ρ
k

(



u
~


k
,
1


,


u
~


k
,
2


,


u
~


k
,
3


,


u
~


k
,
4


,


u
~


k
,
5


,


u
~


k
,
6


,

θ
k


)





(
68
)






=



ρ

k
,
1


(



u
~


k
,
1


,


u
~


k
,
2


,

θ

k
,
1



)




ρ

k
,
2


(



u
~


k
,
3


,


u
~


k
,
4


,

θ

k
,
2



)




ρ

k
,
3


(



u
~


k
,
5


,


u
~


k
,
6


,

θ

k
,
3



)






(
69
)







with θk=(θk,1, θk,2, θk,3), and where each factor in (69) is chosen according to the three-level prior described in Section 4.2 with b=1. The parameter θk comprises all variances of (24). The matrix S is chosen to be









S
=

[



1


1


0


0


0


0




0


0


1


1


0


0




0


0


0


0


1


1



]





(
70
)







with L=6 yielding






u
k,1

k,1

k,2  (71)






u
k,2

k,3

k,4  (72)






u
k,3

k,5

k,6  (73)


The function (7) amounts to










p

(



𝓎


|

u
~


,


x
~

0

,

e
~

,
ζ

)



exp

(


-

1
2







k
=
1

K




(



𝓎


k

-


𝓎
~

k


)






W
k

(



𝓎


k

-


𝓎
~

k


)




)





(
74
)







with weight matrix Wk=wI3 and ẙ=y̆.


The numerical results of FIG. 9 are obtained with p({tilde over (x)}0)=custom-character({tilde over (x)}0; 03, 0.01·I3), {tilde over (e)}k, =0, w=5, α=5 and K=200, and with (41) and (42). The desired motor coil currents y̆ are shown in the first plot together with the resulting motor coil currents y as solid line. The plots below show the determined input signals components of it. as solid lines.


10.2 Trajectory Planning with Sparse Checkpoints


In the previous examples, the weight matrix Wk in (7) did not depend on the time index k. However, time-dependent weights can be useful. For example, consider a situation where the target trajectory y̆ consists of sparse checkpoints at times k1, k2, . . . ⊂{1, . . . , K}, with no constraints between these checkpoints. This situation can be handled by choosing Wk=0{tilde over (H)}×{tilde over (H)} for k∉{k1, k2, . . . }.


Example: Flappy Bird

In this example, the analog physical system consists of a point of mass m moving on a xy-plane, as depicted in FIG. 10. The horizontal velocity vx is constant and not of particular interest (and not part of the system model). The vertical velocity vy is influenced by a constant gravitational acceleration g, pulling the point mass downwards. Any input fed to said system modifies its total impulse in y-direction and thus its vertical velocity.


The analog physical system is modeled by a linear state space model with two-dimensional input u (i.e., L=2) and scalar output y (i.e., H=1) according to











A
k

=

[



1


T




0


1



]


,


B
k

=

[



0


0





1
/
m



1



]


,




(
75
)














C
k

=

[



1


0



]


,


D
k

=

[



0




0



]






(
76
)







for k∈{1, . . . , K} where T is the time constant of the discretization. The extended system model is given by Ãk=Ak, {tilde over (B)}k=Bk, {tilde over (C)}k=Ck, {tilde over (D)}k=Dk, and






S=I
2×2  (77)


The extended input ũ (and also u) comprises of two input components, i.e., {tilde over (L)}=2. The component (ũ1,1, . . . , ũK,1) is a two-level control input and its corresponding prior pkk,1, θk), k∈{1, . . . , K}, is chosen according to Section 4.1 with a=0 and b=1. The component (ũ1,2, . . . , ũK,2) is a constant input accounting for the gravitational pull and is defined as ũk,2=−Tg for all k∈{1, . . . , K}. The combined prior amounts to






p
k(ũkk)=pk(uk,1k)δ(ũk,2+Tg)  (78)


for k∈{1, . . . , K} where δ(·) is the Dirac delta.


The function (7) is given by










p

(



y




u
~


,


x
~

0

,

e
~

,
ζ

)



exp

(


-

1
2







k
=
1

K





w
k

(



y


k

,


y
~

k


)

2



)





(
79
)







with weights










w
k

=

{





10
,




k


{

60
,
120
,
180
,
240

}







0
,





else





,

k


{

1
,

,
K

}








(
80
)







with k∈{60, 120, 180, 240} representing the time instances of the prescribed checkpoints. The goal is to determine a binary input signal (u1,1, . . . , uK,1) for said model such that the moving point mass passes through the checkpoints as closely as possible.


The numerical results of FIG. 11 are obtained with p({tilde over (x)}0)=custom-character({tilde over (x)}0; 02, 0.01·I2), {tilde over (e)}k=0, T=0.1, m=1, g=0.25 and K=250, and with (41) and (42).


The four checkpoints at time instances k∈{60, 120, 180, 240} are illustrated by black crosses in the first plot. The determined input signal (u1,1, . . . , uK,1) is indicated by stems in the second plot. The resulting output trajectory y is depicted as solid line in the first plot. As can be seen, the output trajectory y is an admissible trajectory and does not collide with any of the obstacles.


Notes

While there are shown and described presently preferred embodiment of the invention, it is to be distinctly understood that the invention is not limited thereto but may be otherwise variously embodied and practiced within the scope of the following claims.


REFERENCES



  • [1] A. H. Land and A. G. Doig, “An automatic method for solving discrete programming problems,” ECONOMETRICA, vol. 28, no. 3, pp. 497-520, 1960.

  • [2] J. Richalet, A. Rault, J. Testud, and J. Papon, “Model predictive heuristic control,” Automatica (Journal of IFAC), vol. 14, no. 5, pp. 413-428, 1978.

  • [3] T. Geyer, Model Predictive Control of High Power Converters and Industrial Drives, pp. 3-23. John Wiley & Sons, 2016.

  • [4] P. Karamanakos, T. Geyer, N. Oikonomou, F. Kieferndorf, and S. Manias, “Model predictive control in power electronics: Strategies to reduce the computational complexity,” in IECON 2013-39th Annual Conference of the IEEE Industrial Electronics Society, pp. 5818-5823, IEEE, 2013.

  • [5] Y. Zhang, W. Xie, Z. Li, and Y. Zhang, “Model predictive direct power control of a PWM rectifier with duty cycle optimization,” IEEE Transactions on Power Electronics, vol. 28, no. 11, pp. 5343-5351, 2013.

  • [6] M. E. Tipping, “Sparse Bayesian learning and the relevance vector machine,” Journal of Machine Learning Research, vol. 1, no. Jun, pp. 211-244, 2001.

  • [7] M. E. Tipping, A. Faul, and J. J. T. Avenue, “Fast marginal likelihood maximisation for sparse Bayesian models,” in Proceedings of the Ninth international Workshop on Artificial Intelligence and Statistics, pp. 3-6,2003.

  • [8] D. P. Wipf and B. D. Rao, “Sparse Bayesian learning for basis selection,” IEEE Transactions on Signal Processing, vol. 52, no. 8, pp. 2153-2164, 2004.

  • [9] D. P. Wipf and S. S. Nagarajan, “A new view of automatic relevance determination,” in Advances in Neural Information Processing Systems, pp. 1625-1632, 2008.

  • [10] J. Palmer, K. Kreutz-Delgado, D. Wipf, and B. Rao, “Variational representations of non-Gaussian priors,” UCSD, San Diego, 2005.

  • [11] J. Palmer, K. Kreutz-Delgado, B. D. Rao, and D. P. Wipf, “Variational EM algorithms for non-Gaussian latent variable models,” in Advances in Neural Information. Processing Systems, pp. 1059-1066, 2006.

  • [12] H.-A. Loeliger, B. Ma, H. Malmberg, and F. Wadehn, “Factor graphs with NUV priors and iteratively reweighted descent for sparse least squares and more,” in 2018 IEEE 10th International Symposium on Turbo Codes & Iterative Information Processing (ISTC), pp. 1-5, IEEE, 2018.

  • [13] R. P. Sallen and E. L. Key, “A practical method of designing RC active filters,” IRE Transactions on Circuit Theory, vol. 2, no. 1, pp. 74-85, 1955.

  • [14] H.-A. Loeliger, L. Bruderer, H. Malmberg, F. Wadehn, and N. Zalmai, “On sparsity by NUV-EM, Gaussian message passing, and Kalman smoothing,” in 2016 Information Theory and Applications Workshop (ITA), pp. 1-10, La Jolla, Calif., 2016.


Claims
  • 1. A method for controlling an analog physical system with input signal u=(u1, . . . , uK) to follow a given target trajectory y̆=(y̆1, . . . , y̆K), wherein at least one component (, . . . , ) of said input signal is discrete-valued with M levels, M∈{2, 3, . . . }, wherein uk=(uk,1, . . . , uk,L)∈L is the input signal of the analog physical system at time k∈{1, . . . , K},K∈ is a planning horizon,L is the number of input signal components,(with 1≤≤L) is the index of said discrete-valued component of u,y̆k=(y̆k,1, . . . , y̆k,H)∈H is the given target trajectory at time k,H is the number of components of the target trajectory,wherein said method uses an extended system model with output signal {tilde over (y)}=({tilde over (y)}1, . . . , {tilde over (y)}K), {tilde over (y)}k∈H for some {tilde over (H)}≥H, and with input signal ũ=(ũ1, . . . , ũK)∈L for some {tilde over (L)}≥L, such that uk=Sũk  (81)for some matrix S and all k∈{1, . . . , K}, and with time-dependent parameters θ=(θ1, . . . , θK) and optional additional parameters ξ=(ξ1, . . . , ξK), wherein ũ=(ũ1, . . . , ũK) is determined by iteratively executing, in iterations i=1, 2, 3, . . . ,wherein said method comprises the steps of(a) executing a maximization step in said extended system model with parameters θ fixed to θ(i−1) and fixed to θ(i−1), thereby obtaining a candidate input signal (ũ1(i), . . . , ũK(i)) with optional precision information (VŨ1(i), . . . , VŨK(i)), and an output signal (y1(i), . . . , yK(i)) with optional precision information (V{tilde over (Y)}1(i), . . . , V{tilde over (Y)}K(i)), and(b) determining new parameters θ(i)=(θ1(i), . . . , θK(i)) and optionally ξ(i)=(ξ1(i), . . . , ξK(i)), where θk(i) is a function of ũk(i) and VŨk(i), and ξk(i) is a function of {tilde over (y)}k(i) and V{tilde over (Y)}k(i), as computed in Step (a),and wherein said extended system model can be expressed as p(ũ,ẙ,{tilde over (x)}0,{tilde over (e)}|θ,ξ)∝p(ẙ|ũ,{tilde over (x)}0,{tilde over (e)},ξ)p(ũ,θ)p({tilde over (x)}0)p({tilde over (e)})  (82)whereinp(ũ, ẙ, {tilde over (x)}0, {tilde over (e)}|θ, ξ) is a probability density function in ũ, ẙ, {tilde over (x)}0 and {tilde over (e)} with parameters θ and ξ,ẙ=, (ẙ1, . . . , ẙk), ẙk∈H, is the target trajectory of said extended system model comprising y̆ and optionally additional trajectories,“∝” denotes equality up to a scale factor,said analog physical system is modeled by a discrete-time linear state space model with recursions xk=Akxk−1 Bkuk Dkek  (83)yk=Ckxk  (84)for k∈{1, . . . , K}, and with state vector xk∈N, initial state x0, noise ek∈G, model output yk∈H, and matrices Ak, Bk, Ck, Dk,said method uses an extended version of model of eq. 83 and eq. 84 which is given by the state space recursions {tilde over (x)}k=Ãk{tilde over (x)}k+{tilde over (B)}kSũk+{tilde over (D)}k{tilde over (e)}k  (85){tilde over (y)}k={tilde over (C)}k{tilde over (x)}k  (86)for k∈{1, . . . , K}, and with state vector xk∈N with Ñ≥N, initial state {tilde over (x)}0, noise ek∈G with {tilde over (G)}≥G, and wherein the matrices Ak, Bk, Ck and Dk are derived from Ak, Bk, Ck and Dk,p(ẙ|ũ, x0, {tilde over (e)}, ξ) is given by
  • 2. The method of claim 1 wherein, in Step (a), the candidate input signal (ũ1(i), . . . , ũK(i)) is the mean of the posterior distribution p(ũ|ẙ, θ(i−1), ξ(i−1)).
  • 3. The method of claim 1 wherein, in Step (a), the output signal ({tilde over (y)}1(i), . . . , {tilde over (y)}K(i)) is the mean of the posterior distribution p({tilde over (y)}|ẙ, θ(i−1), ξ(i−1))
  • 4. The method of claim 1 wherein, in Step (a), the precision information VUk(i), k∈{1, . . . , K}, comprises the posterior variances of p(ẙ, θ(i−1), ξ(i−1)) wherein ∈{1, . . . , L} indicates a discrete-valued component of ũk.
  • 5. The method of claim 1 wherein, in Step (a), the precision information VYk(i), k∈{1, . . . , K}, comprises the posterior variances of p({tilde over (y)}k,{tilde over (h)}|ẙ, θ(i−1), ξ(i−1)) for all {tilde over (h)}∈{1, . . . ,{tilde over (H)}}.
  • 6. The method of claim 1 wherein, in Step (b), the new parameters θk(i) are determined by
  • 7. The method of claim 1 wherein, in Step (b), the new parameters θk(i) are determined by
  • 8. The method of claim 1 any of the preceding claims wherein pk(ũk,θk)=(ũk;a,σk,12)(ũk;b,σk,22)  (94)where θk=(σk,12, σk,22), S=1, {tilde over (L)}=L=1 and with the two levels a∈ and b∈.
  • 9. The method of claim 1 wherein pk(ũk,θk)=pk(ũk,1,ũk,2,θk)  (95)withpk(ũk,1;ũk,2;θk)=(ũk,1;0,σk,1,12)(ũk,1;b,σk,1,22)·(ũk,2;0,σk,2,12)(ũk,2;−b,σk,2,22)  (96)
  • 10. The method of claim 1 wherein a preference for sparsity in the number of level switches in at least one of the discrete valued input signal components (, . . . , ) is achieved by utilizing extended state space matrices Ãk, {tilde over (B)}k, {tilde over (C)}k and {tilde over (D)}k, such that said level switches appear as an additional output signal component ({tilde over (y)}1,{tilde over (h)}, . . . , {tilde over (y)}K,{tilde over (h)}) with {tilde over (y)}k,{tilde over (h)}=−  (97)
  • 11. The method of claim 1 wherein Wk≠0{tilde over (H)}×{tilde over (H)} for several k∈{k1, k2, . . . } ⊂{1, . . . , K} and Wk=0{tilde over (H)}×{tilde over (H)} otherwise.
  • 12. The method of any of the preceding claims wherein eq. 87 is
  • 13. The method of claim 12 wherein the optional factor in eq. 88 penalizes the difference |ẙk,{tilde over (h)}−{tilde over (y)}k,{tilde over (h)}| by the p-th power by specifically setting the factor ψ({tilde over (y)}, ξ) to
  • 14. The method of claim 1 wherein eq. 87 is
  • 15. The method of claim 14 wherein the optional factor in eq. 88 penalizes γ(|ẙk,{tilde over (h)}−{tilde over (y)}k,{tilde over (h)}|+|ẙk,{tilde over (h)}+ηk,{tilde over (h)}−{tilde over (y)}k,{tilde over (h)}|) by specifically setting the factor ψ({tilde over (y)}, ξ) to
  • 16. The method of claim 1 wherein S is a linear mapping between at least one two-level component of u and at least one discrete-valued component of u.
  • 17. A device for carrying out the method of claim 1, said device comprising: an output interface for generating said input signal u to the analog physical system anda digital control unit connected to said output interface and adapted and structured to carry out the method of claim 1.
  • 18. Use of the method of claim 1 for at least one of: digital-to-analog conversion by feeding a discrete-valued signal into an analog low-pass filter,digital-to-analog conversion by feeding a discrete-valued signal into an analog band-pass filter,controlling an electric motor with at least one discrete-level input signal,controlling an electric power converter with at least one discrete-level input signal.
Priority Claims (1)
Number Date Country Kind
PCT/EP2020/066218 Jun 2020 WO international
PCT Information
Filing Document Filing Date Country Kind
PCT/EP2021/051752 1/26/2021 WO