This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Dual-Update Data-Driven Control of Deformable Mirrors Using Walsh Basis Functions

Aleksandar Haber1\text{r}^{1}, and Thomas Bifano2\text{o}^{2} 1 Department of Manufacturing and Mechanical Engineering Technology, College of Engineering Technology, Rochester Institute of Technology, 78 Lomb Memorial Drive, Rochester, NY 14623, USA.
2 Mechanical Engineering Department, Boston University, 8 Saint Mary’s Street, Boston, MA 02215, USA.
Emails: awhmet@rit.edu, aleksandar.haber@gmail.com
Abstract

In this paper, we develop a novel data-driven method for Deformable Mirror (DM) control. The developed method updates both the DM model and DM control actions that produce desired mirror surface shapes. The novel method explicitly takes into account actuator constraints and couples a feedback control algorithm with an algorithm for recursive estimation of DM influence function models. In addition to this, we explore the possibility of using Walsh basis functions for DM control. By expressing the desired and observed mirror surface shapes as sums of Walsh pattern matrices, we formulate the control problem in the 2D Walsh basis domain. We thoroughly experimentally verify the developed approach on a 140-actuator MEMS DM, developed by Boston Micromachines. Our results show that the novel method produces the root-mean-square surface error in the 144014-40 nanometer range. These results can additionally be improved by tuning the control and estimation parameters. The developed approach is also applicable to other DM types, such as for example, segmented DMs.

I Introduction

Deformable Mirrors (DMs) are one of the main components of Adaptive Optics (AO) systems [1, 2]. A typical DM consist of a reflective optical surface that is deformed by a set of actuators. By precisely shaping the surface of a DM, we can compensate for wave-front aberrations in AO systems [3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16].

In this paper, we consider the problem of developing control algorithms for DMs. There are a large number of approaches for DM control. A complete survey of all the methods goes well beyond the length limits of this manuscript. Consequently, we briefly mention only the most relevant or recent approaches. Most of the DM control approaches are based on the following control paradigm [17, 18, 19, 20, 21]. First, a model of the DM (influence function matrix) is estimated before the correction process. Then, such a model is either directly inverted, or it is used together with an iterative feedback control algorithm to calculate the DM control actions. That is, in most of the feedback control approaches, only control actions (control voltages) for the DM are updated on the basis of the observed wave-front aberrations, and the mirror model is kept constant. However, this approach that is based on linear and time-invariant DM models, might not be able to produce satisfactory wave-front correction performance in at least two scenarios that are encountered in practice. The first scenario is when the DM behavior changes over time. For example, an environment in which a DM operates might induce temperature fluctuations that can create thermo-mechanical deformations of mirror components and other associated phenomena that can significantly alter the DM dynamics [22, 23, 24, 25, 26, 27, 28, 12, 13, 29, 10]. This is especially the case for optical systems operating in space and for optical systems operating with high-power laser sources, where the absorbed heat increases the temperature of optical components. The second scenario is when the DM control actions significantly deviate from an initial linearization point (determined for example by bias control actions) that is used to obtain the linear model. Namely, most of the developed DM devices and prototypes exhibit a nonlinear behavior for sufficiently large magnitudes of control actions that are necessary to produce wave-front shapes with larger Peak-to-Valleys (PVs). That is, to correct for certain wave-front shapes, control actions need to significantly deviate from the nominal control actions that are used to obtain linearized DM models. In both of these scenarios, the performance of the DM control algorithms developed on the basis of time-invariant and linear models estimated for nominal operating conditions will gradually degrade.

On the other hand, it is a very well-known fact in control theory literature that control methods that dynamically update systems’ models on the basis of available observations are able to cope with time-varying dynamics, model uncertainties, and system nonlinearities. Furthermore, even in the case of linear systems, adaptive control methods are more accurate, faster, and in many cases, more optimal than classical feedback algorithms. All these facts motivate the development of a dual-update control algorithm in this paper. Under the term “dual-update” control algorithm, we understand a control algorithm that is able to update both control actions and a model (influence function) during DM operation. Here is it should be emphasized that these types of algorithms are often referred to as adaptive algorithms in control theory literature. However, since the word “adaptive” has different meanings in optics and control theory communities, we use the word “dual-update”, not to confuse an interested reader.

To the best of our knowledge, adaptive control approaches for DM control have received less attention and interest compared to the classical optimal control approaches [30, 16]. Thus, the approach proposed in [31] iteratively calibrates a DM influence function during the correction process. The approach developed in [32] uses a recursive least-squares method to dynamically estimate DM influence function during DM operation. The main limitation of the approaches developed in [32, 31] is that they do not explicitly take into account actuator saturation. A reliable control method has to take into account actuator physical constraints and has to be able to deal with actuator saturation. Recently, in [33], we have developed a DM control approach that updates the DM model on the basis of batches of observed wave-front data. This method takes into account actuator saturation. However, once the DM model is updated, the control is performed in an open-loop setting. Consequently, this method is not suitable for online control, where adaptive DM model updating is coupled with feedback control. Apart from these methods, adaptive filters have been used in [34] to predict and control wave-front disturbances.

A widely used approach for DM control is to express the observed wave-front using a Zernike modal basis. In this way, we implicitly perform the spatial model-order reduction of the DM control problem (the control problem is transformed from the spatial domain to the modal basis domain). On the other hand, for certain mirror types and for desired wave-front shapes consisting of steep peaks and valleys, Walsh basis functions might be a more suitable option than the Zernike basis functions [35, 36, 37]. Apart from this, in the general case, since Walsh basis functions are orthogonal, they can be used instead of Zernike polynomials in classical adaptive optics applications.

In this paper, we develop a novel dual-update DM control approach. The developed approach explicitly takes into account actuator constraints and it couples a feedback control algorithm with a recursive estimation of the DM influence function model. In this way, we are able to dynamically update the DM model and at the same time compute control actions that produce the desired shape. Furthermore, by expressing the desired and observed mirror surface shapes as sums of Walsh pattern matrices, we formulate the control problem in the 2D Walsh basis domain. We experimentally verify the developed approach on a 140 actuator MEMS DM, developed by Boston Micromachines.

The main contributions of this paper are summarized in the sequel. We propose a novel dual-update control approach for accurate DM control. Furthermore, in contrast to other dual-update or adaptive DM control approaches proposed in the literature, our approach explicitly takes into account actuator saturation. In this way, we can avoid the loss of performance that comes from actuator saturation. In addition, in this paper, we thoroughly experimentally investigate the performance of Walsh basis functions for DM control. This is important since only a handful of articles have explored the possibility of using Walsh basis functions for wave-front reconstruction and control [35, 36, 37], and the true potential of using Walsh basis functions for DM control is largely unexplored. It should be emphasized here that although we have performed experiments on a continuous face sheet DM, the developed control approach is applicable to other DM types. The developed approach is especially suitable for segmented DMs. Finally, we can easily modify the develop control algorithm to use Zernike basis functions instead of the Walsh basis functions.

This paper is organized as follows. In Section II, we present the procedure for approximating the mirror surface shape as a sum of Walsh pattern matrices. In Section III, we present the control method. In Section IV, we present the experimental results. In Section V, we present conclusions and briefly discuss future work.

II Mirror deformation representation using Walsh pattern matrices

In this section, we present a simple numerical procedure for approximating the mirror surface shape as a sum of Walsh pattern matrices.

Mirror surface deformation is usually represented by a matrix. That is, every entry of this matrix is a mirror deformation at a fixed spatial location. We refer to this matrix as the mirror deformation matrix. Let Wn×nW\in\mathbb{R}^{n\times n} be the mirror deformation matrix, where nn is the total size (measured in pixels) along xx and yy dimensions of the observed mirror surface. We decompose this matrix as follows

Wp=1Mq=1Map,qZp,q,\displaystyle W\approx\sum_{p=1}^{M}\sum_{q=1}^{M}a_{p,q}Z_{p,q}, (1)

where ap,qa_{p,q}\in\mathbb{R} are coefficients, and Zp,qn×nZ_{p,q}\in\mathbb{R}^{n\times n} are Walsh pattern matrices with the entries that can either be 1-1 or 11. The number nn should be selected such that n=2Vn=2^{V}, where VV is a user-selected positive integer. The total number of the Walsh pattern matrices in (1) is equal to M2M^{2}, where MnM\leq n. We form the Walsh pattern matrices using Walsh basis functions. Here it should be emphasized that since this paper presents a proof of concept and due to mathematical simplicity and brevity, we use Walsh basis functions defined over a square domain. The mirror surface shape can also be represented using Walsh basis functions defined over a circular domain (polar Walsh basis functions) [38]. Consequently, the developed method can easily be used in the case of circular correction domains. However, even without using polar Walsh basis functions, with some modifications, the used approach that is based on square-domain Walsh basis functions, can be used for wave-front correction over circular correction domains. On the other hand, the control approach that is developed in Section III is practically independent of the type of basis functions for expanding the mirror surface shape. Thus, instead of using Walsh basis functions, we can also use Zernike basis functions in the developed control approach.

In the sequel, we first introduce a procedure for constructing the Walsh pattern matrices Zp,qZ_{p,q}. Then, we introduce a procedure for computing the coefficients ap,qa_{p,q}. First, we choose the constant VV. We select the constant VV such that a deformation submatrix with the dimensions of 2V2^{V} by 2V2^{V} pixels is within the limits of the maximal active mirror surface area that is observable by the used sensor (more details about the sensor used in our experiments can be found in Section IV). In our case, we use V=8V=8 or V=9V=9, giving us the submatrices with the dimensions of 256256 by 256256, and 512512 by 512512, respectively (see Section IV for more details).

Let the entries of the vector 𝜸i(V)n\boldsymbol{\gamma}_{i}^{(V)}\in\mathbb{R}^{n}, n=2Vn=2^{V}, represent the values of the Walsh function ii of the order VV. Here the index ii takes the values from 11 to 2V2^{V}. For example for V=2V=2, the vectors 𝜸i(2)\boldsymbol{\gamma}_{i}^{(2)}, i=1,2,3,4i=1,2,3,4, representing the Walsh basis functions take the following form

𝜸1(2)=[1111],𝜸2(2)=[1111],𝜸3(2)=[1111],𝜸4(2)=[1111].\displaystyle\boldsymbol{\gamma}_{1}^{(2)}=\begin{bmatrix}1\\ 1\\ 1\\ 1\end{bmatrix},\;\;\boldsymbol{\gamma}_{2}^{(2)}=\begin{bmatrix}1\\ 1\\ -1\\ -1\end{bmatrix},\boldsymbol{\gamma}_{3}^{(2)}=\begin{bmatrix}1\\ -1\\ -1\\ 1\end{bmatrix},\;\;\boldsymbol{\gamma}_{4}^{(2)}=\begin{bmatrix}1\\ -1\\ 1\\ -1\end{bmatrix}. (2)

The vectors 𝜸i(V)\boldsymbol{\gamma}_{i}^{(V)} can easily be constructed by using the MATLAB function hadamard()\text{hadamard}(\cdot). The rows of a matrix returned by this function represent Walsh basis functions. However, the Walsh basis functions that are represented by the rows of this matrix are not arranged in increasing order. Consequently, the rows of the matrix returned by the function hadamard()\text{hadamard}(\cdot) need to be permuted. For more details, see the MATLAB tutorial page [39] explaining the construction process of the Walsh basis functions.

Once the vectors 𝜸i(V)\boldsymbol{\gamma}_{i}^{(V)} are constructed, for selected VV, we use the following procedure to construct the Walsh pattern matrices. First, we need to select the constant MM. While selecting the constant MM we have to keep in mind several competing factors. Generally speaking, we have to make a trade-off between representation accuracy that is increased by increasing MM, and dimensions of the matrices of the control algorithm that increase with the factor of M2M^{2}. Larger matrix dimensions increase the computational and memory complexities of the decomposition process, as well as the computational and memory complexities of the control and estimation algorithms that are introduced in Section III. We have tested the control algorithm for MM up to 120120 and this value is sufficient for desired shapes used in our experiments. Our lab computer has 6464 GB RAM, and for M120M\geq 120, MATLAB programming language that is used to control the DM, runs out of memory. Larger values of MM are possible if the control algorithm is implemented in a more memory-efficient way. One of the possible pathways to decrease the computational and memory complexities is to exploit the structure of the control matrices using approaches similar to the approaches developed in [40, 41, 11, 42, 43, 44, 45, 46, 47, 48]. However, this requires additional research, implementation, and testing efforts that are left for future research.

Once we have selected VV and MM, we can proceed with the construction of the pattern matrices. We perform the following steps:

  1. 1.

    Step 1: In this step, we construct the matrices Z1,qnZ_{1,q}\in\mathbb{R}^{n}, where q=1,2,,Mq=1,2,\ldots,M, and n=2Vn=2^{V}. The matrix Z1,qZ_{1,q} is constructed by transposing the vector 𝜸q(V)\boldsymbol{\gamma}_{q}^{(V)} and by stacking the newly formed row vectors on top of each other nn times:

    Z1,q=[(𝜸q(V))T(𝜸q(V))T(𝜸q(V))T].\displaystyle Z_{1,q}=\begin{bmatrix}\Big{(}\boldsymbol{\gamma}_{q}^{(V)}\Big{)}^{T}\\ \Big{(}\boldsymbol{\gamma}_{q}^{(V)}\Big{)}^{T}\\ \vdots\\ \Big{(}\boldsymbol{\gamma}_{q}^{(V)}\Big{)}^{T}\end{bmatrix}. (3)
  2. 2.

    Step 2: In this step, we construct the matrices Zq,1Z_{q,1}, where q=1,2,,Mq=1,2,\ldots,M. The matrices Zq,1Z_{q,1} are constructed by transposing the matrices Z1,qZ_{1,q} that are formed in step 1, that is, Zq,1=Z1,qTZ_{q,1}=Z_{1,q}^{T}.

  3. 3.

    Step 3: In this step, we construct the matrices Zp,qZ_{p,q}, for the indices p2p\geq 2 and q2q\geq 2. The matrix Zp,qZ_{p,q} is calculated as follows

    Zp,q=Zp,1Z1,q,\displaystyle Z_{p,q}=Z_{p,1}\odot Z_{1,q}, (4)

    where \odot is the matrix element-wise product (Hadamard matrix product).

A few comments about this construction procedure are in order. The matrix Zp,qZ_{p,q} can be seen as a p,qp,q block of a large block matrix. The first block row of this matrix is constructed in Step 1. In Step 2, we construct the first block column, where every block is a transpose of the corresponding matrix in the first block row. Then, in step 3, we construct the remaining block matrices by simply multiplying the matrices belonging to the first block column with the matrices belonging to the first block row. The constructed 2D Walsh pattern matrices are shown in Fig. 1 for M=3M=3.

Refer to caption
Figure 1: 2D Walsh pattern matrices. The yellow and blue colors correspond to 11 and 1-1 values, respectively.

Next, we explain the decomposition process of the matrix WW, that is, we explain how to compute the coefficients ap,qa_{p,q} in (1) for known WW. First, we vectorize the equation (1). The vectorization process is done by introducing the vectorization operator vec()\text{vec}(\cdot) [49]. Let Xn×nX\in\mathbb{R}^{n\times n} be an arbitrary matrix with the column vectors denoted by 𝐱1,𝐱2,,𝐱n,n\mathbf{x}_{1},\mathbf{x}_{2},\ldots,\mathbf{x}_{n},\in\mathbb{R}^{n}. The vectorization operator is defined by

𝐱=vec(X)[𝐱1T𝐱2T𝐱nT]T.\displaystyle\mathbf{x}=\text{vec}(X)\coloneqq\begin{bmatrix}\mathbf{x}_{1}^{T}&\mathbf{x}_{2}^{T}&\ldots&\mathbf{x}_{n}^{T}\end{bmatrix}^{T}. (5)

That is, the vectorization operator produces the vector 𝐱n2\mathbf{x}\in\mathbb{R}^{n^{2}} obtained by stacking column vectors 𝐱in\mathbf{x}_{i}\in\mathbb{R}^{n} of the matrix XX on top of each other. By applying the vectorization operator to (1), we obtain

vec(W)p=1Mq=1Map,qvec(Zp,q),\displaystyle\text{vec}\big{(}W\big{)}\approx\sum_{p=1}^{M}\sum_{q=1}^{M}a_{p,q}\text{vec}\big{(}Z_{p,q}\big{)}, (6)
𝐰=p=1Mq=1Map,q𝐳p,q,\displaystyle\mathbf{w}=\sum_{p=1}^{M}\sum_{q=1}^{M}a_{p,q}\mathbf{z}_{p,q}, (7)

where 𝐰=vec(W)\mathbf{w}=\text{vec}\big{(}W\big{)}, 𝐰n2\mathbf{w}\in\mathbb{R}^{n^{2}}, and 𝐳p,q=vec(Zp,q)\mathbf{z}_{p,q}=\text{vec}\big{(}Z_{p,q}\big{)}, 𝐳p,qn2\mathbf{z}_{p,q}\in\mathbb{R}^{n^{2}}. On the other hand, due to the fact that the pattern matrices Zp,qZ_{p,q} are formed on the basis of the Walsh functions, we have that

𝐳l,sT𝐳p,q={n2,l=ps=q0,lpsq\displaystyle\mathbf{z}_{l,s}^{T}\mathbf{z}_{p,q}=\begin{cases}n^{2}&,\;\;l=p\land s=q\\ 0&,\;\;l\neq p\lor s\neq q\\ \end{cases} (8)

The property (8) comes from the fact that the Walsh basis functions form a complete orthogonal set of functions. This property can be used to retrieve the coefficients ap,qa_{p,q}. Namely, from (7) and (8), we have

1n2𝐳p,qT𝐰=ap,q.\displaystyle\frac{1}{n^{2}}\mathbf{z}_{p,q}^{T}\mathbf{w}=a_{p,q}. (9)

The equation (9) enables us to construct a projection matrix that produces the coefficients of the expansion (1). Let the matrices ΨiM×n2\Psi_{i}\in\mathbb{R}^{M\times n^{2}} and ΠM2×n2\Pi\in\mathbb{R}^{M^{2}\times n^{2}}, and the vectors 𝐚iM\mathbf{a}_{i}\in\mathbb{R}^{M} and 𝐚M2\mathbf{a}\in\mathbb{R}^{M^{2}}, be defined by

Π=1n2[Ψ1Ψ2ΨM],Ψi=[𝐳1,iT𝐳2,iT𝐳M,iT],𝐚=[𝐚1𝐚2𝐚M],𝐚i=[a1,ia2,iaM,i].\displaystyle\Pi=\frac{1}{n^{2}}\begin{bmatrix}\Psi_{1}\\ \Psi_{2}\\ \vdots\\ \Psi_{M}\end{bmatrix},\;\;\Psi_{i}=\begin{bmatrix}\mathbf{z}_{1,i}^{T}\\ \mathbf{z}_{2,i}^{T}\\ \vdots\\ \mathbf{z}_{M,i}^{T}\end{bmatrix},\;\;\mathbf{a}=\begin{bmatrix}\mathbf{a}_{1}\\ \mathbf{a}_{2}\\ \vdots\\ \mathbf{a}_{M}\end{bmatrix},\;\;\mathbf{a}_{i}=\begin{bmatrix}a_{1,i}\\ a_{2,i}\\ \vdots\\ a_{M,i}\end{bmatrix}. (10)

The vector 𝐚\mathbf{a} groups all the coefficients of the expansion (1). Then, using this construction, from (9) we have

𝐚=Π𝐰.\displaystyle\mathbf{a}=\Pi\mathbf{w}. (11)

The equation (11) shows that to express the deformation matrix WW as a sum of the Walsh pattern matrices, we just need to vectorize this matrix and to multiply the result with the projection matrix Π\Pi. That is, to compute the expansion coefficients ap,qa_{p,q}, we need to perform a single vector-matrix operation.

III Control method

In this section, we present the control method. The basic idea of the control method is to update both the DM control actions and the DM influence function model. To develop the control method, we use the Walsh basis function expansion presented in Section II.

Let WDn×nW_{D}\in\mathbb{R}^{n\times n} be a desired mirror shape that we want to produce, and let 𝐰D=vec(WD)\mathbf{w}_{D}=\text{vec}\big{(}W_{D}\big{)}, 𝐰Dn2\mathbf{w}_{D}\in\mathbb{R}^{n^{2}}. Using (11), we compute the desired set of coefficients as follows

𝐚D=Π𝐰D,\displaystyle\mathbf{a}_{D}=\Pi\mathbf{w}_{D}, (12)

where Π\Pi is the projection matrix introduced in (10) and 𝐚DM2\mathbf{a}_{D}\in\mathbb{R}^{M^{2}} is the vector grouping the desired coefficients.

We send control actions to the DM or observe its deformation response at discrete-time instants, denoted by k0k\in\mathbb{N}_{0}. Let 𝐰kn2\mathbf{w}_{k}\in\mathbb{R}^{n^{2}} be the observed mirror deformation in the vectorized form, that is 𝐰k=vec(Wk)\mathbf{w}_{k}=\text{vec}\big{(}W_{k}\big{)}, where Wkn×nW_{k}\in\mathbb{R}^{n\times n} is the observed mirror deformation matrix at the discrete-time instant kk. By using the projection (11), we have

𝐚k=Π𝐰k,\displaystyle\mathbf{a}_{k}=\Pi\mathbf{w}_{k}, (13)

where 𝐚kM2\mathbf{a}_{k}\in\mathbb{R}^{M^{2}} are the coefficients. We postulate the following DM model

𝐚k+1=Qk𝐠k+𝐝k+1,\displaystyle\mathbf{a}_{k+1}=Q_{k}\mathbf{g}_{k}+\mathbf{d}_{k+1}, (14)

where QkM2×rQ_{k}\in\mathbb{R}^{M^{2}\times r} is the influence matrix, and the vector 𝐠kr\mathbf{g}_{k}\in\mathbb{R}^{r} is defined by

𝐠k=[u1,kβu2,kβur,kβ]T,\displaystyle\mathbf{g}_{k}=\begin{bmatrix}u_{1,k}^{\beta}&u_{2,k}^{\beta}&\ldots&u_{r,k}^{\beta}\end{bmatrix}^{T}, (15)

and where ui,ku_{i,k}, i=1,2,,ri=1,2,\ldots,r, is the control input applied to the iith actuator at the time instant kk, rr is the number of DM actuators (in our case r=140r=140), and β=1.7420\beta=1.7420 is an estimate of the constant of the exponential dependence between DM control actions and the observed deformation response. This estimate is obtained using the linearized least-squares method explained in [33]. The entries of the vector 𝐮kr\mathbf{u}_{k}\in\mathbb{R}^{r} are the control inputs ui,ku_{i,k}. The values of the control input ui,ku_{i,k} are in the interval [0,1][0,1], with zero corresponding to no control action, and 11 corresponding to the maximal control action applied to the actuator ii (maximal control voltage applied to the actuator). The vector 𝐝k+1M2\mathbf{d}_{k+1}\in\mathbb{R}^{M^{2}}, that is not known a priori, takes into account the measurement noise and unmodeled mirror behavior that is not captured by the model Qk𝐠kQ_{k}\mathbf{g}_{k}.

The control method consists of two steps. In the first step, we estimate an initial value of the influence matrix and compute the initial values of control inputs. These values are used to initialize the adaptive control algorithm. The adaptive control algorithm combines recursive estimation of the influence matrix with a novel control algorithm. In the sequel, we explain the first step.

III-A Initial estimation of the influence matrix and control actions

For a positive integer SrS\geq r (SS should be larger than the number of DM actuators), we introduce the following notation for batch data matrices:

A1:S=[𝐚1𝐚2𝐚S],G0:S1=[𝐠0𝐠1𝐠S1],\displaystyle A_{1:S}=\begin{bmatrix}\mathbf{a}_{1}&\mathbf{a}_{2}&\ldots&\mathbf{a}_{S}\end{bmatrix},\;G_{0:S-1}=\begin{bmatrix}\mathbf{g}_{0}&\mathbf{g}_{1}&\ldots&\mathbf{g}_{S-1}\end{bmatrix}, (16)

where A1:SM2×SA_{1:S}\in\mathbb{R}^{M^{2}\times S} and G0:S1r×SG_{0:S-1}\in\mathbb{R}^{r\times S}. To compute the initial values, we will assume that the influence matrix is constant. Under this assumption, from (14), we obtain

𝐚k+1=Q(0)𝐠k+𝐝k+1,\displaystyle\mathbf{a}_{k+1}=Q^{(0)}\mathbf{g}_{k}+\mathbf{d}_{k+1}, (17)

where Q(0)M2×rQ^{(0)}\in\mathbb{R}^{M^{2}\times r} is the initial value of the influence matrix QkQ_{k}. We use the approach presented in [33] to estimate Q(0)Q^{(0)}. First, we generate random input signals 𝐮k\mathbf{u}_{k}, for k=0,1,,S1k=0,1,\ldots,S-1. The entries of the input vector 𝐮k\mathbf{u}_{k} are generated from a normal distribution with the mean of 0.50.5 and variance of 0.150.15. If any of the generated entries is larger (smaller) than the upper bound 11 (lower bound 0), then the value of this entry is set to 11 (0). By forming the equations (17) for k=0,1,2,,S1k=0,1,2,\ldots,S-1, we obtain a batch matrix equation. From this equation, we can estimate Q(0)Q^{(0)} by solving the following multi-variable least-squares problem

minQ(0)A1:SQ(0)G0:S1F2,\displaystyle\min_{Q^{(0)}}\left\|A_{1:S}-Q^{(0)}G_{0:S-1}\right\|_{F}^{2}, (18)

where F\left\|\cdot\right\|_{F} is the Frobenius norm. The solution is given by

Q(0)=A1:SG0:S1T(G0:S1G0:S1T)1.\displaystyle Q^{(0)}=A_{1:S}G_{0:S-1}^{T}\Big{(}G_{0:S-1}G_{0:S-1}^{T}\Big{)}^{-1}. (19)

From (19), we see the justification of the condition SrS\geq r. Namely, the number of data samples SS should satisfy the following condition: SrS\geq r (rr is the number of DM actuators), to ensure that the matrix G0:S1G0:S1TG_{0:S-1}G_{0:S-1}^{T} in the solution (19) is invertible (the columns of G0:S1G_{0:S-1} are linearly independent since the control inputs are randomly selected), and consequently, that the solution is well-defined. Once the initial value of the influence function is determined, we determine the initial control actions using the following strategy.

Namely, the goal of the control algorithm is to produce the desired mirror surface shape, that can be expressed as the vector 𝐚DM2\mathbf{a}_{D}\in\mathbb{R}^{M^{2}}, consisting of the Walsh coefficients corresponding to the desired mirror shape WDn×nW_{D}\in\mathbb{R}^{n\times n}. Consequently, from (17), we can find the set of initial control actions by solving the following optimization problem:

min𝐠0𝐚DQ(0)𝐠022,\displaystyle\min_{\mathbf{g}_{0}}\left\|\mathbf{a}_{D}-Q^{(0)}\mathbf{g}_{0}\right\|_{2}^{2}, (20)
subject to:  0𝐠0𝟏,\displaystyle\text{subject to:}\;\;\mathbf{0}\leq\mathbf{g}_{0}\leq\mathbf{1}, (21)

where the less-than-equal relation operator \leq is applied element-wise. If we would simply minimize the cost function (20) with respect to 𝐠0\mathbf{g}_{0}, then most likely the computed control actions would violate the lower limit 0 and upper limit 11 on the control actions. Consequently, the constraint (21) is introduced in order to ensure that the computed control actions are physically realizable. We solve the problem (20)-(21) using the interior point method implemented in the MATLAB function lsqlin(). Once the solution of the problem (20)-(21) is determined, we can obtain the initial control input vector ui,0u_{i,0} for the iith actuator as follows

ui,0=gi,01/β,i=1,2,,r,\displaystyle u_{i,0}=g_{i,0}^{1/\beta},\;\;\;i=1,2,\ldots,r, (22)

where gi,0g_{i,0} is the iith entry of 𝐠0\mathbf{g}_{0}. The estimated influence matrix Q(0)Q^{(0)} and the vector 𝐠0\mathbf{g}_{0} are used to initialize the adaptive control method developed in the sequel.

Here, it is important to emphasize that the above-presented approach for generating the initial control actions and the initial influence matrix is actually used for DM control without further improvements, see for example [17, 21] and similar least-squares approaches. Our experimental results in Section IV, show that the developed dual-update control method is able to significantly improve the DM control performance once it is initialized with the generated initial guesses. Consequently, we demonstrate that the developed approach has significant advantages over the least-squares control approaches that are based on a similar strategy to the above-presented strategy used to generate initial guesses.

III-B Control Algorithm Development

In the interest of deriving the control algorithm, we have to introduce one simplification related to the unknown vector 𝐝k\mathbf{d}_{k}. In the development of the control algorithm, we assume that the vector 𝐝k\mathbf{d}_{k} does not depend on the control index kk, that is

𝐝k=𝐝=const,\displaystyle\mathbf{d}_{k}=\mathbf{d}=\text{const}, (23)

Of course, in experiments, this condition might not hold exactly due to the measurement noise. However, this assumption is necessary in order to keep the derivations as simple as possible. As our experiments show, the developed algorithm works very well despite the fact that in experiments there might be some deviations from the condition (23). Even without this assumption, it is possible to derive the control algorithm, however, the mathematical apparatus will become more complex and it will involve expectation operators. Taking into account the general model (14), this assumption gives the following model

𝐚k+1=Qk𝐠k+𝐝.\displaystyle\mathbf{a}_{k+1}=Q_{k}\mathbf{g}_{k}+\mathbf{d}. (24)

Consequently, to develop the control algorithm, we introduce the control error 𝜺kM2\boldsymbol{\varepsilon}_{k}\in\mathbb{R}^{M^{2}} as follows

𝜺k𝐚D𝐚k.\displaystyle\boldsymbol{\varepsilon}_{k}\coloneqq\mathbf{a}_{D}-\mathbf{a}_{k}. (25)

By shifting the time index in (25) and by combining the resulting equation with (24), we obtain

𝜺k+1=𝐚DQk𝐠k𝐝.\displaystyle\boldsymbol{\varepsilon}_{k+1}=\mathbf{a}_{D}-Q_{k}\mathbf{g}_{k}-\mathbf{d}. (26)

On the other hand, for the time step kk, we have

𝜺k=𝐚DQk1𝐠k1𝐝.\displaystyle\boldsymbol{\varepsilon}_{k}=\mathbf{a}_{D}-Q_{k-1}\mathbf{g}_{k-1}-\mathbf{d}. (27)

From (26) and (27), we have

𝜺k+1𝜺k\displaystyle\boldsymbol{\varepsilon}_{k+1}-\boldsymbol{\varepsilon}_{k} =Qk1𝐠k1Qk𝐠k,\displaystyle=Q_{k-1}\mathbf{g}_{k-1}-Q_{k}\mathbf{g}_{k}, (28)
𝜺k+1\displaystyle\boldsymbol{\varepsilon}_{k+1} =𝜺k+Qk1𝐠k1Qk𝐠k,\displaystyle=\boldsymbol{\varepsilon}_{k}+Q_{k-1}\mathbf{g}_{k-1}-Q_{k}\mathbf{g}_{k}, (29)
𝜺k+1\displaystyle\boldsymbol{\varepsilon}_{k+1} =𝜸kQk𝐠k,\displaystyle=\boldsymbol{\gamma}_{k}-Q_{k}\mathbf{g}_{k}, (30)
𝜸k\displaystyle\boldsymbol{\gamma}_{k} =𝜺k+Qk1𝐠k1.\displaystyle=\boldsymbol{\varepsilon}_{k}+Q_{k-1}\mathbf{g}_{k-1}. (31)

Let us assume that at the discrete-time instant kk, the values of 𝜺k\boldsymbol{\varepsilon}_{k}, Qk1Q_{k-1}, QkQ_{k}, and 𝐠k1\mathbf{g}_{k-1} are known. Our goal is to compute the control actions for the next time step k+1k+1. That is, our goal is to compute the vector 𝐠k\mathbf{g}_{k} that consists of the control inputs ui,ku_{i,k} (see the equation (15)). First, we introduce the cost function

𝜺k+1T𝜺k+1=(𝜸kQk𝐠k)T(𝜸kQk𝐠k).\displaystyle\boldsymbol{\varepsilon}_{k+1}^{T}\boldsymbol{\varepsilon}_{k+1}=\Big{(}\boldsymbol{\gamma}_{k}-Q_{k}\mathbf{g}_{k}\Big{)}^{T}\Big{(}\boldsymbol{\gamma}_{k}-Q_{k}\mathbf{g}_{k}\Big{)}. (32)

Similarly to the optimization problem in (20)-(21), we compute the control inputs for the time instant k+1k+1, by solving the following constrained optimization problem

min𝐠k(𝜸kQk𝐠k)T(𝜸kQk𝐠k),\displaystyle\min_{\mathbf{g}_{k}}\Big{(}\boldsymbol{\gamma}_{k}-Q_{k}\mathbf{g}_{k}\Big{)}^{T}\Big{(}\boldsymbol{\gamma}_{k}-Q_{k}\mathbf{g}_{k}\Big{)}, (33)
subject to  0𝐠k𝟏.\displaystyle\text{subject to}\;\;\mathbf{0}\leq\mathbf{g}_{k}\leq\mathbf{1}. (34)

We solve the problem (33)-(34) using the interior point method implemented in the MATLAB function lsqlin(). Once the solution, denoted by 𝐠k\mathbf{g}_{k}, of the problem (33)-(34) is determined, we can obtain the control input vector ui,ku_{i,k} for the iith actuator as follows

ui,k=gi,k1/β,\displaystyle u_{i,k}=g_{i,k}^{1/\beta}, (35)

where gi,kg_{i,k} is the iith entry of 𝐠k\mathbf{g}_{k}.

III-C Dual-update control algorithm summary

To formulate and solve the problem (33)-(34), we need to compute the quantities 𝜺k\boldsymbol{\varepsilon}_{k}, Qk1Q_{k-1}, and 𝐠k1\mathbf{g}_{k-1} that form the vector 𝜸k\boldsymbol{\gamma}_{k}, as well as the matrix QkQ_{k}. We use a recursive identification approach to compute these quantities [50]. To define the recursive identification approach, we need to define the following quantities. By applying the vec()\text{vec}(\cdot) operator to (24), we obtain

𝐚k+1\displaystyle\mathbf{a}_{k+1} =Gk𝐪k+𝐝,\displaystyle=G_{k}\mathbf{q}_{k}+\mathbf{d}, (36)
Gk\displaystyle G_{k} =𝐠kTI,\displaystyle=\mathbf{g}_{k}^{T}\otimes I, (37)
𝐪k\displaystyle\mathbf{q}_{k} =vec(Qk),\displaystyle=\text{vec}\big{(}Q_{k}\big{)}, (38)

where 𝐪krM2\mathbf{q}_{k}\in\mathbb{R}^{rM^{2}} is the vector that parametrizes the influence matrix, GkM2×rM2G_{k}\in\mathbb{R}^{M^{2}\times rM^{2}}, and we have used the following property of the vec()\text{vec}(\cdot) operator [44]: vec(X1X2X3)=(X3TX1)vec(X2)\text{vec}\big{(}X_{1}X_{2}X_{3}\big{)}=\big{(}X_{3}^{T}\otimes X_{1}\big{)}\text{vec}(X_{2}).

The dual-update control method consists of the following steps.

Step 1: At time step kk, the following values are available from the previous steps: 𝐚k\mathbf{a}_{k}, Qk1Q_{k-1}, and 𝐠k1\mathbf{g}_{k-1}. Using these values, compute 𝜺k\boldsymbol{\varepsilon}_{k} given by (25) and 𝜸k\boldsymbol{\gamma}_{k} given by (31). Form and solve the optimization problem (33)-(34), using the MATLAB function lsqlin(). The solution is given by 𝐠k\mathbf{g}_{k}. Using this value, compute the control actions (22). Apply the control actions to the DM.

Step 2: Wait for the time instant k+1k+1, and observe the mirror surface response 𝐰k+1\mathbf{w}_{k+1}. Use the mirror surface observation to compute the vector 𝐚k+1\mathbf{a}_{k+1} (observed coefficients) using (13) (for the shifted time index k+1k+1). On the basis of the computed value 𝐠k\mathbf{g}_{k}, from the previous step kk, form the matrix GkG_{k} using (37). The following values are available from the previous time step kk: PkrM2×rM2P_{k}\in\mathbb{R}^{rM^{2}\times rM^{2}} and 𝐪k\mathbf{q}_{k}. Update the matrix PkP_{k} and the vector of parameters 𝐪k\mathbf{q}_{k} by performing the following steps:

Sk\displaystyle S_{k} =(λI+GkPkGkT)1,\displaystyle=\Big{(}\lambda I+G_{k}P_{k}G_{k}^{T}\Big{)}^{-1}, (39)
Lk+1\displaystyle L_{k+1} =PkGkTSk,\displaystyle=P_{k}G_{k}^{T}S_{k}, (40)
Pk+1\displaystyle P_{k+1} =1λPk1λLk+1GkPk,\displaystyle=\frac{1}{\lambda}P_{k}-\frac{1}{\lambda}L_{k+1}G_{k}P_{k}, (41)
𝐞k+1\displaystyle\mathbf{e}_{k+1} =𝐚k+1Gk𝐪k,\displaystyle=\mathbf{a}_{k+1}-G_{k}\mathbf{q}_{k}, (42)
𝐪k+1\displaystyle\mathbf{q}_{k+1} =𝐪k+Lk+1𝐞k+1.\displaystyle=\mathbf{q}_{k}+L_{k+1}\mathbf{e}_{k+1}. (43)

where 0<λ10<\lambda\leq 1 is a user selected parameter, 𝐞k+1M2\mathbf{e}_{k+1}\in\mathbb{R}^{M^{2}}, SkM2×M2S_{k}\in\mathbb{R}^{M^{2}\times M^{2}}, and Lk+1rM2×M2L_{k+1}\in\mathbb{R}^{rM^{2}\times M^{2}} is the gain matrix. If the convergence of the control error is not achieved, go to Step 1 (index in Step 1 now becomes k+1), otherwise, stop the recursion.

Several comments about the developed algorithm are in order. The vector 𝐞k+1\mathbf{e}_{k+1} defined in (42) is called the model error. This vector quantifies the difference between the observed modal response 𝐚k+1\mathbf{a}_{k+1} and the model prediction Gk𝐪kG_{k}\mathbf{q}_{k}. Following the guidelines given in [50, p. 379] and [51, p. 68], we use λ=0.98\lambda=0.98. However, other possibilities for selecting λ\lambda are also possible [51, 52]. The matrix PkP_{k} is initialized as P0=0.05IP_{0}=0.05I. Here we have used a scaled identity matrix (sparse matrix) to initialize PkP_{k}, in order to minimize the computational burden. This is necessary since the matrices in (39)-(43) are large dimensional. Namely, initialization of PkP_{k} as a dense matrix will significantly increase the computational burden. The issue of decreasing the computational complexity of the steps (39)-(43) is a future research topic. The quantities 𝐠k\mathbf{g}_{k} and QkQ_{k} are initialized with the values 𝐠0\mathbf{g}_{0} and Q(0)Q^{(0)} computed in the initialization step explained in Section III-A.

IV Experimental Results

In this section, we present the experimental results.

We test the developed approach using a Boston Micromachines MEMS DM with r=140r=140 actuators. The actuation grid is 1212 by 1212 with all 44 corner actuators being inactive. The DM stroke is 3.53.5 [μm][\mu m] and the pitch is 400400 [μm][\mu m]. The behavior of this DM type has been analyzed in many papers, see for example [53, 54] and follow-up works. Consequently, due to paper brevity, we do not further summarize other mirror properties.

The produced mirror surface shape is sensed by a Partitioned Aperture Wave-front (PAW) sensor  [55, 56, 57]. This sensor has a large dynamic range, it is relatively fast, and it operates with uncollimated light sources. It has a relatively high resolution that is only limited by the used camera. In addition, this sensor is speckle-free, robust, and polarization-independent. Further details related to this sensor can be found in [56, 57]. The used experimental setup is the same as the experimental setup used to generate the results in our previous publication [28]. Consequently, in the interest of brevity, we just mention its basic configuration. The light source is a red LED (660 [nm], Thorlabs). A system of optical components is used to direct and shape the beam and to illuminate the DM surface. A monochrome camera (Blackfly BFS-U3-123S6M-C) is used as a PAW sensing element. The maximal size of the observed image (deformation matrix) is 10011001 by 999999. The DM and sensor are controlled using the MATLAB programming environment.

As explained in Section II, to decompose the observed deformation as a sum of Walsh pattern matrices, the deformation matrix size should be expressed as a power of 22. On the other hand, the camera of the PAW sensor produces a deformation image size of 10011001 by 999999. This image covers an area that is larger than the active DM area. Taking all these things into consideration, we have at least two options for selecting the deformation matrix size. The first option is 256256 by 256256 matrix, and the second option is 512512 by 512512. The second option covers the centers of all the actuators (including 44 corner inactive actuators). However, in the second option, a part of deformation caused by the edge actuators will not take part in the defined 512512 by 512512 deformation matrix. We investigate the performance of the developed method for both options.

IV-A Results for the 256 by 256 deformation matrix

First, we present the control results for the active-controlled surface represented by 256256 by 256256 image (256256 by 256256 deformation matrix). This corresponds to n=256=28n=256=2^{8}, that is, to V=8V=8 (for more details, see Section II). We generate a “raw” desired mirror surface shape as

WDraw=a1,1Z1,1+a2,2Z2,2+a3,3Z3,3,\displaystyle W_{D}^{\text{raw}}=a_{1,1}Z_{1,1}+a_{2,2}Z_{2,2}+a_{3,3}Z_{3,3}, (44)

with the coefficients of the expansion equal to a1,1=1a_{1,1}=-1, c2,2=0.1c_{2,2}=-0.1, and c3,3=0.2c_{3,3}=0.2. The raw desired surface is shown in Fig. 2(a). This desired surface contains vertical (90 degree) surface changes between the segments of the regular checkerboard pattern shown in Fig. 2(a).

Refer to caption
Figure 2: (a) “Raw” desired shape defined in (44). (b) Gaussian 2D low-pass filter applied to the “raw” desired shape. (c) Desired shape after applying the filter and offset. (d) Coefficients of the decomposition (1) obtained by decomposing the filtered desired shape.

On the other hand, the deformation response of a single actuator is a smooth function resembling the Gaussian function. Consequently, the mirror actuators are not able to produce vertical 90 degree deformation changes from one segment to another. Consequently, we need to apply a smoothing low-pass 2D filter to the desired raw surface shape. We choose the Gaussian 2D filter shown in Fig. 2(b). The standard deviation of the filter is 3030. After applying the Gaussian 2D filter, we offset the resulting deformation by 1-1 (from every entry of the matrix we subtract 1-1). This process produces the desired surface shape shown in Fig. 2(c). We compute the decomposition given by the equation (1) for M=80M=80. This produces a total of 64006400 coefficients that are shown in Fig. 2(d). These are the desired coefficients that we want to produce.

Next, we compute the control actions using the developed approach. Figure 3 shows the control results. Panels (a) and (b) in Fig. 3 show the desired and best-produced shapes, respectively. Panel (c) in Fig. 3 shows the error (difference between the desired and produced shapes). The Root-Mean-Square (RMS) surface error is 1414 [nm][nm]. Finally, Fig. 3(d) shows the desired and best-produced coefficients of the 2D Walsh basis expansion (1).

Refer to caption
Figure 3: (a) Desired filtered mirror shape. (b) Best produced mirror shape. (c) Error. (d) Desired and produced coefficients.

Figure 4 shows the surface cross section generated at two horizontal cutting planes. Figure 5 shows the convergence of the control error 𝜺k+1\boldsymbol{\varepsilon}_{k+1} defined in (25) and the model error 𝐞k+1\mathbf{e}_{k+1} defined in (42).

Refer to caption
Figure 4: Surface cross sections at the horizontal cut planes generated at the pixels (a) 128128 and (b) 168168. The “least-squares” shape corresponds to the initial surface shape produced by the initial control actions generated by solving (20)-(21).
Refer to caption
Figure 5: Convergence of the control method. The graphs shows the 2-norms of the control error 𝜺k+1\boldsymbol{\varepsilon}_{k+1} and model error 𝐞k+1\mathbf{e}_{k+1} defined in (25) and (42), respectively.

The presented results demonstrate the excellent performance of the developed method. The RMS surface error converges to 14.114.1 [nm][nm] in a relatively small number of iterations. Furthermore, from Fig. 4 we can observe that the method outperforms the “least-squares” approach for controlling the DM. In our simulations, this approach, which is explained in Section III-A, is used to generate the initial guess. However, this approach is used in a number of articles to control the DM. That is, the adaptive control method, proposed in this article, clearly has a significant advantage over the classical least-squares approach for DM control.

IV-B Results for the 512 by 512 deformation matrix

Here we present the results for the observed deformation matrix with the dimension of 512512 by 512512 pixels. In this case n=2Vn=2^{V}, where v=9v=9, for more details, see Section II. By using this choice of the deformation matrix, we are able to investigate the influence of the actuation boundaries on the performance of the developed algorithm. We test the following raw desires shapes with spatial frequencies from smaller to larger:

WD1=0.3Z1,1+0.3Z6,6,\displaystyle W_{D1}=-0.3Z_{1,1}+0.3Z_{6,6}, (45)
WD2=0.3Z1,1+0.3Z7,7,\displaystyle W_{D2}=-0.3Z_{1,1}+0.3Z_{7,7}, (46)
WD3=0.3Z1,1+0.3Z10,10.\displaystyle W_{D3}=-0.3Z_{1,1}+0.3Z_{10,10}. (47)

We apply the Gaussian low-pass filter to the desired shapes. The filter has the support of 7070 pixels and deviation of 2525. Once the filter is applied, on offset of 1-1 is applied to the filtered shapes to produce the final desired shapes. The final desired shapes are shown in panels (a) of Figs. 68, and 10. Panels (b) in Figs. 68, and 10, show the best-produced shapes. Panels (c) in Figs. 68, and 10, show the surface error. Panels (d) in Figs. 68, and 10, show the surface error over the central mirror part (obtained by cropping the surface error by 90 pixels on all 4 image sides).

Refer to caption
Figure 6: Control result for the raw desired shape (45) (note that this shape is filtered and scaled to generate panel (a)). (a) Filtered and scaled desired shape. (b) Best produced shape. (c) Surface error. (d) Surface error for the central mirror part (obtained by cropping the surface error shown in panel (c) by 90 pixels on all 4 image sides).

Panels (a) in Figs. 79, and 11, show the cross-sections of the desired and produced shapes generated by horizontal cut planes. Panels (b) in Figs. 7,  9, and 11 show the convergence of the control and model errors. The above-presented results demonstrate the excellent performance of the developed method. From panels (b) in Figs. 7,  9, and 11, we can observe that the RMS surface error converges to approximately 4040 [nm][nm] in a relatively small number of iterations. These results can additionally be improved by tuning the parameters (parameter λ\lambda and the matrix PP) of the algorithm. The development of methods for optimal tuning of the dual-update algorithm is a future research topic. Furthermore, by comparing the “least-squares” shapes with the desired shapes in panels (a) of the same figures, we can observe that our method has significant advantages over the state-of-the-art least-squares approaches for DM control.

Refer to caption
Figure 7: Control result for the raw desired shape (45) (note that this shape is filtered and scaled to generate panel (a) in Fig. 6). (a) Cross-sections of the produced and desired shapes generated by horizontal cut planes. The “least-squares” shape corresponds to the initial surface shape produced by the initial control actions generated by solving (20)-(21). (b) Convergence of the model, control, and RMS surface errors of the developed algorithm. Panel (b) shows the 2-norms of the control error 𝜺k+1\boldsymbol{\varepsilon}_{k+1} and model error 𝐞k+1\mathbf{e}_{k+1} defined in (25) and (42), respectively.
Refer to caption
Figure 8: Control result for the raw desired shape (46) (note that this shape is filtered and scaled to generate panel (a)). Captions of panels in this figure correspond to the captions of panels in Fig. 6.
Refer to caption
Figure 9: Control result for the raw desired shape (46) (note that this shape is filtered and scaled to generate panel (a) in Fig. 8). Captions of panels in this figure correspond to the captions of panels in Fig. 7.
Refer to caption
Figure 10: Control result for the raw desired shape (47) (note that this shape is filtered and scaled to generate panel (a)). Captions of panels in this figure correspond to the captions of panels in Fig. 6.
Refer to caption
Figure 11: Control result for the raw desired shape (47) (note that this shape is filtered and scaled to generate panel (a) in Fig. 10). Captions of panels in this figure correspond to the captions of panels in Fig. 7.

V Conclusion

In this paper, we have developed a novel approach for adaptive control of DMs. On the basis of the feedback information provided by the sensor, our method updates both the DM influence matrix and the control actions. In this way, we are able to generate RMS control accuracy of 144014-40 [nm][nm]. These results can additionally be improved by tuning the parameters of the algorithm. Besides introducing a novel control method, we have also demonstrated a good potential of using Walsh basis functions for DM control. Walsh basis function can achieve its full potential for control of segmented DMs. Our approach can straightforwardly be applied to the control problems involving segmented DMs. In future work, we will focus on improving the performance of the developed approach by optimally tuning the control algorithm parameters, and on reducing the computational complexity of the developed approach.

References

  • [1] R.K. Tyson. Principles of Adaptive Optics. CRC, 2015.
  • [2] F. Roddier. Adaptive Optics In Astronomy. Cambridge, 1999.
  • [3] M. Manetti, M. Morandini, P. Mantegazza, R. Biasi, M. Andrighettoni, and D. Gallieni. VLT DSM, the control system of the largest deformable secondary mirror ever manufactured. In Proc. SPIE, volume 9148, page 91484G, 2014.
  • [4] G. Vdovin and P. M. Sarro. Flexible mirror micromachined in silicon. Appl. Opt., 34(16):2968–2972, jun 1995.
  • [5] S. K. Ravensbergen, P. C. J. N. Rosielle, and M. Steinbuch. Deformable mirrors with thermo-mechanical actuators for extreme ultraviolet lithography: Design, realization and validation. Precision Engineering, 37:353–363, 2013.
  • [6] P.-Y. Madec. Overview of deformable mirror technologies for adaptive optics and astronomy. In Proc. SPIE, volume 8447, page 844705, 2012.
  • [7] A. Polo, A. Haber, S. F. Pereira, M. Verhaegen, and H. P. Urbach. Linear phase retrieval for real-time adaptive optics. J. Eur. Opt. Soc.-Rapid, 8(13070), 2013.
  • [8] M. Horenstein, T. Bifano, S. Pappas, J. Perreault, and .R Krishnamoorthy-Mali. Real time optical correction using electrostatically actuated mems devices. J. Electrost., 46(2-3):91–101, 1999.
  • [9] S. Kuiper, N. Doelman, J. Human, R. Saathof, W. Klop, and M. Maniscalco. Advances of TNO’s electromagnetic deformable mirror development. In Proc. SPIE, volume 10706, page 1070619, 2018.
  • [10] A. Haber, A. Polo, S. Ravensbergen, H. P. Urbach, and M. Verhaegen. Identification of a dynamical model of a thermally actuated deformable mirror. Opt. Lett., 38(16):3061–3064, 2013.
  • [11] A. Haber and M. Verhaegen. Framework to trade optimality for local processing in large-scale wavefront reconstruction problems. Opt. Lett., 41(22):5162–5165, 2016.
  • [12] A. Haber, A. Polo, I. Maj, S. F. Pereira, H. P. Urbach, and M. Verhaegen. Predictive control of thermally induced wavefront aberrations. Opt. Express, 21(18):21530–21541, 2013.
  • [13] R. Saathof, G. J. M. Schutten, J. W. Spronck, and R. H. M. Schmidt. Actuation profiles to form Zernike shapes with a thermal active mirror. Opt. Lett., 40(2):205–208, 2015.
  • [14] A. Haber and M. Verhaegen. Modeling and state-space identification of deformable mirrors. Opt. Express, 28(4):4726–4740, 2020.
  • [15] A. Chiuso, R. Muradore, and E. Marchetti. Dynamic calibration of adaptive optics systems: A system identification approach. IEEE Trans. Control Syst. Technol., 18(3):705–713, 2009.
  • [16] J. Mocci, M. Quintavalla, A. Chiuso, S. Bonora, and R. Muradore. PI-shaped LQG control design for adaptive optics systems. Control Eng. Pract., 102:104528, 2020.
  • [17] A. Haber, A. Polo, C. S. Smith, S. F. Pereira, P. Urbach, and M. Verhaegen. Iterative learning control of a membrane deformable mirror for optimal wavefront correction. Appl. Opt., 52(11):2363–2373, Apr 2013.
  • [18] E. Fernandez and P. Artal. Membrane deformable mirror for adaptive optics: performance limits in visual optics. Opt. Express, 11(9):1056–1069, May 2003.
  • [19] C. Vogel, G. Tyler, Y. Lu, T. Bifano, R. Conan, and C. Blain. Modeling and parameter estimation for point-actuated continuous-facesheet deformable mirrors. JOSA A, 27(11):A56–A63, 2010.
  • [20] C. R. Vogel, G. A. Tyler, and Y. Lu. Modeling, parameter estimation, and open-loop control of mems deformable mirrors. In Proc. SPIE, volume 7595, page 75950E, 2010.
  • [21] A. Polo, A. Haber, S. F. Pereira, M. Verhaegen, and H. P. Urbach. An innovative and efficient method to control the shape of push-pull membrane deformable mirror. Opt. Express, 20(25):27922–27932, Dec 2012.
  • [22] N. Gu, C. Li, Y. Cheng, and C. Rao. Thermal control for light-weighted primary mirrors of large ground-based solar telescopes. J. Astron. Telesc. Instrum. Syst., 5(1):014005, 2019.
  • [23] C. Blaurock, M. McGinnis, K. Kim, and G. E. Mosier. Structural-thermal-optical performance (STOP) sensitivity analysis for the James Webb Space Telescope. In Proc. SPIE, volume 5867, page 58670V, 2005.
  • [24] C. Buleri, M. Kehoe, C. Lukashin, T. Jackson, J. Beckman, A. Curtis, B. Edwards, T. Owen, A. Phenis, and M. Stebbins. Structural, thermal, and optical performance (STOP) analysis of the NASA ARCSTONE instruments. In Proc. SPIE, volume 10925, page 1092503, 2019.
  • [25] Q. Xue, L. Huang, P. Yan, M. Gong, Z. Feng, Y. Qiu, T. Li, and G. Jin. Research on the particular temperature-induced surface shape of a national ignition facility deformable mirror. Appl. Optics, 52(2):280–287, 2013.
  • [26] M. Kasprzack, B. Canuel, F. Cavalier, R. Day, E. Genin, J. Marque, D. Sentenac, and G. Vajente. Performance of a thermally deformable mirror for correction of low-order aberrations in laser beams. Appl. Opt., 52(12):2909–2916, Apr 2013.
  • [27] A. Haber, J. E. Draganov, K. Heesh, J. Tesch, and M. Krainak. Modeling and system identification of transient STOP models of optical systems. Opt. Express, 28(26):39250–39265, 2020.
  • [28] A. Haber, J. E. Draganov, K. Heesh, J. Cadena, and M. Krainak. Modeling, experimental validation, and model order reduction of mirror thermal dynamics. Opt. Express, 29(15):24508–24524, 2021.
  • [29] M. Habets, J. Scholten, S. Weiland, and W. Coene. Multi-mirror adaptive optics for control of thermally induced aberrations in extreme ultraviolet lithography. In Proc. SPIE, volume 9776, page 97762D, 2016.
  • [30] C. Kulcsár, H.-F. Raynaud, C. Petit, and J.-M. Conan. Minimum variance prediction and control for adaptive optics. Automatica, 48(9):1939–1954, 2012.
  • [31] W. Zou and S. A. Burns. High-accuracy wavefront control for retinal imaging with adaptive-influence-matrix adaptive optics. Opt. Express, 17(22):20167–20177, 2009.
  • [32] L. Huang, X. Ma, Q. Bian, T. Li, C. Zhou, and M. Gong. High-precision system identification method for a deformable mirror in wavefront control. Appl. Opt., 54(14):4313–4317, 2015.
  • [33] A. Haber and T. Bifano. General approach to precise deformable mirror control. Opt. Express, 29(21):33741–33759, 2021.
  • [34] J. Tesch, S. Gibson, and M. Verhaegen. Receding-horizon adaptive control of aero-optical wavefronts. Optical Engineering, 52(7):071406, 2013.
  • [35] F. Wang. Utility transforms of optical fields employing deformable mirror. Opt. Lett., 36(22):4383–4385, 2011.
  • [36] F. Wang. Wavefront sensing through measurements of binary aberration modes. App. Opt., 48(15):2865–2870, 2009.
  • [37] F. Wang. High-contrast imaging via modal convergence of deformable mirror. Astrophys. J., 751(2):83, 2012.
  • [38] L. N. Hazra and A. Guha. Far-field diffraction properties of radial Walsh filters. J. Opt. Soc. Am. A, 3(6):843–846, 1986.
  • [39] MATLAB. Discrete Walsh-Hadamard transform tutorial. (2021) [retrieved 17 October 2021], https://www.mathworks.com/help/signal/ug/discrete-walsh-hadamard-transform.html.
  • [40] P. Massioni, C. Kulcsár, H.-F. Raynaud, and J.-M. Conan. Fast computation of an optimal controller for large-scale adaptive optics. J. Opt. Soc. Am. A, 28(11):2298–2309, 2011.
  • [41] P. Massioni, H.-F. Raynaud, C. Kulcsár, and J.-M. Conan. An Approximation of the Riccati Equation in Large-Scale Systems with Application to Adaptive Optics. IEEE Trans. Contr. Syst. Technol., 23(2):479–487, 2015.
  • [42] A. Haber and M. Verhaegen. Moving horizon estimation for large-scale interconnected systems. IEEE Trans. Automat. Contr., 58(11), 2013.
  • [43] A. Haber and M. Verhaegen. Sparsity preserving optimal control of discretized PDE systems. Comput. Method Appl. M., 335:610–630, 2018.
  • [44] A. Haber and M. Verhaegen. Sparse solution of the Lyapunov equation for large-scale interconnected systems. Automatica, 73:256–268, 2016.
  • [45] A. Haber and M. Verhaegen. Subspace identification of large-scale interconnected systems. IEEE Trans. Automat. Contr., 59(10):2754–2759, 2014.
  • [46] B. Sinquin and M. Verhaegen. Tensor-based predictive control for extremely large-scale single conjugate adaptive optics. JOSA A, 35(9):1612–1626, 2018.
  • [47] G. Monchen, B. Sinquin, and M. Verhaegen. Recursive kronecker-based vector autoregressive identification for large-scale adaptive optics. IEEE Trans. Control Syst. Technol., 27(4):1677–1684, 2018.
  • [48] P. Cerqueira, P. Piscaer, and M. Verhaegen. Sparse data-driven wavefront prediction for large-scale adaptive optics. JOSA A, 38(7):992–1002, 2021.
  • [49] M. Verhaegen and V. Verdult. Filtering and System Identification: a Least Squares Approach. Cambridge, 2007.
  • [50] L. Ljung. System Identification: Theory for the User. Prentice Hall, 1999.
  • [51] I. D. Landau, R. Lozano, M. M’Saad, and A. Karimi. Adaptive Control: Algorithms, Analysis and Applications. Springer, 2011.
  • [52] L. Ljung and T. Söderström. Theory and Practice of Recursive Identification. MIT, 1983.
  • [53] A. Diouf, A. P. Legendre, J. B. Stewart, T. G. Bifano, and Y. Lu. Open-loop shape control for continuous microelectromechanical system deformable mirror. Appl. Opt., 49(31):G148–G154, 2010.
  • [54] J. B. Stewart, A. Diouf, Y. Zhou, and T. G. Bifano. Open-loop control of a MEMS deformable mirror for large-amplitude wavefront control. JOSA A, 24(12):3827–3833, 2007.
  • [55] R. Barankov and J. Mertz. Single-exposure surface profilometry using partitioned aperture wavefront imaging. Opt. Lett., 38(19):3961–3964, 2013.
  • [56] A. B. Parthasarathy, K. K. Chu, T. N. Ford, and J. Mertz. Quantitative phase imaging using a partitioned detection aperture. Opt. Lett., 37(19):4062–4064, 2012.
  • [57] J. Li, D. R. Beaulieu, H. Paudel, R. Barankov, T. G Bifano, and J. Mertz. Conjugate adaptive optics in widefield microscopy with an extended-source wavefront sensor. Optica, 2(8):682–688, 2015.