State estimation device and storage medium
The state estimation system addresses the challenge of achieving both numerical stability and accuracy in clock ensembles by separating observable and unobservable parts in the state-space model, ensuring high-precision time synchronization in Beyond 5G/6G wireless communication.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-07-07
- Publication Date
- 2026-04-02
AI Technical Summary
Conventional algorithms for time synchronization in clock ensembles fail to achieve both numerical stability and accuracy, leading to difficulties in maintaining long-term operation and optimal precision in time estimation.
A state estimation system that separates observable and unobservable parts in the state-space model, using a Kalman filter to estimate the state of each clock, and corrects the covariance matrix of the unobservable part to maintain numerical stability and improve accuracy.
Achieves highly accurate and precise time synchronization by ensuring numerical stability and optimal accuracy in clock networks, enhancing the precision of time synchronization in Beyond 5G/6G wireless communication.
Smart Images

Figure JP2025024412_02042026_PF_FP_ABST
Abstract
Description
State Estimation Device and Storage Medium
[0001] The present invention relates to a state estimation device and a storage medium. This application claims priority based on Japanese Patent Application No. 2024-171082 filed in Japan on September 30, 2024, and incorporates its content herein by reference.
[0002] For example, in Beyond 5G / 6G, which is the next-generation wireless communication standard, the requirement for high-precision time synchronization has been increasing for efficient use of frequencies in radio waves. Attempts have been made to achieve time synchronization through an ensemble of multiple clocks. (See, for example, Non-Patent Document 1.)
[0003] C. A. Greenhall “A Kalman filter clock ensemble algorithm that admits measurement noise”, Metrologia, Vol. 43, No.4(2006)L. Galleani, P. Tavella “Time and the Kalman filter”, IEEE control system magazine, vol. 30, no. 2(2010)
[0004] However, among the above-described conventional algorithms, there is no algorithm that can achieve both numerical stability and accuracy in time estimation. For example, there are algorithms that are difficult to operate in the long term because the numerical stability of the output results is not guaranteed, and algorithms that guarantee numerical stability but lose optimality in terms of accuracy. It is preferable to provide a state estimation system that can achieve high-precision time synchronization of a group of clocks by estimating the state of each clock included in the group of clocks.
[0005] An object of the present invention is to provide a state estimation device and a storage medium that can achieve high-precision time synchronization of a group of clocks.
[0006] One aspect of the present invention is a state estimation device for estimating the state of a clock described by a state-space model, comprising: a model acquisition unit for acquiring a state-space model of a clock network composed of multiple clocks; a time difference information acquisition unit for acquiring time difference information indicating the instruction time difference between the multiple clocks for each of the clocks; and a state estimation unit comprising a first estimation unit for estimating the observable portion of the state-space model and a second estimation unit for estimating the unobservable portion.
[0007] One aspect of the present invention is a storage medium that stores a program for causing a computer that performs state estimation of a clock described by a state-space model M to perform the following actions: acquire a state-space model M of a clock network composed of multiple clocks; acquire time difference information indicating the instruction time difference between the multiple clocks for each clock; estimate the observable portion of the state-space model M; and estimate the unobservable portion of the state-space model M.
[0008] According to the present invention, highly accurate time synchronization of a group of clocks can be achieved.
[0009] This figure shows an example of the functional configuration of the state estimation system of this embodiment. This figure shows an example of the functional configuration of the timing device of this embodiment. This figure shows another example of the functional configuration of the timing device of this embodiment. This figure shows an example of the functional configuration of the state estimation unit of this embodiment. This figure shows an example of the operation flow of the state estimation system of this embodiment. This figure shows an example of the state estimation side by the state estimation unit of this embodiment. This figure shows an example of the effect of the state estimation system of this embodiment. This figure shows the results of a comparison of the accuracy between a conventional method and the state estimation system of this embodiment.
[0010] The state estimation system 1 of this embodiment will be described with reference to the drawings. The embodiments described below are merely examples, and the embodiments to which the present invention is applied are not limited to the embodiments described below. In all the figures used to describe the embodiments, components having the same function will be given the same reference numerals, and repeated explanations will be omitted. Furthermore, in this application, "based on XX" means "based on at least XX," and includes cases where it is based on another element in addition to XX. Furthermore, "based on XX" is not limited to cases where XX is used directly, but also includes cases where it is based on XX after calculations or processing have been performed on it. "XX" is any element (for example, any information).
[0011] [Embodiments] Hereinafter, embodiments of the present invention will be described with reference to the drawings. Figure 1 is a diagram showing an example of the functional configuration of the state estimation system 1 of the embodiment. First, the configuration of the timing system 5, which is the state estimation target of the state estimation system 1 of this embodiment, will be explained along with its background. In the following description, the timing system 5 will also be referred to as the clock network.
[0012] [Timekeeping System (Clock Network)] The timekeeping system 5 includes a plurality of timekeeping devices 50. In one example of this embodiment, the timekeeping system 5 is configured to include m timekeeping devices 50, from timekeeping device 50-1 to timekeeping device 50-m (where m is a natural number).
[0013] Each of the timing devices 50 included in the timing system 5 is equipped with a clock (for example, an atomic clock) and performs timing operations independently of each other. In the following description, the timing device 50 will also be simply referred to as "clock".
[0014] The time measured by each timing device 50 (hereinafter also referred to as the timing time or clock reading) includes an error from the true time. The timing device 50 in this embodiment cannot know the error between the timing time it measures and the true time (hereinafter also referred to as the timing error).
[0015] In the timing system 5 (clock network), it is required that the time measured by each timing device 50 included in the timing system 5 be synchronized. For example, in the next-generation wireless communication standards, Beyond 5G / 6G, there is a growing demand for high-precision time synchronization in order to make efficient use of radio frequency.
[0016] While attempts have been made to achieve time synchronization through an ensemble of multiple timing devices 50, conventional algorithms have not been able to achieve both numerical stability and accuracy in time estimation. For example, there are only algorithms that are difficult to operate long-term because the numerical stability of the output results is not guaranteed, and algorithms that guarantee numerical stability but lose optimality in terms of accuracy. Furthermore, in order to achieve time synchronization with high accuracy and precision, it is important to manage the equipment resources within the network, but no research has delved into such management.
[0017] The state estimation system 1 of this embodiment aims to achieve highly accurate and precise time synchronization. By estimating the error of each clock from the time difference information between the timing devices 50 and performing control to correct it, the accuracy of the clocks is improved and they are synchronized. An algorithm is provided that maintains optimality in terms of accuracy while guaranteeing numerical stability, which was difficult to achieve conventionally. Specifically, by focusing on the observable and unobservable parts, which are characteristic of the state equation of the problem of estimating ensemble time with high accuracy, and separating and calculating them, the numerical stability of the output result is guaranteed. More specifically, by focusing on the fact that the component that diverges in the calculation of the unobservable part is unnecessary for estimation, this calculation is modified to be omitted. Furthermore, by providing a structure that corrects the covariance matrix of the unobservable part, it is possible to improve accuracy. The configuration of the state estimation system 1 of this embodiment, which is capable of achieving highly accurate and precise time synchronization in this way, will be described below.
[0018] [Functional Configuration of the State Estimation System] The state estimation system 1 comprises a state estimation device 10, a state space model storage unit 20, and an output device 30. The state estimation system 1 is connected to the timing system 5 (clock network) via a network (not shown).
[0019] The timing device 50 can output information to the state estimation device 10 that enables the calculation of a time difference, which is the difference between the time it has measured and the time measured by any other timing device 50.
[0020] For example, the timing device 50 outputs time information indicating the time it measured to the state estimation device 10. In this case, the state estimation device 10 acquires the time information output by each timing device 50 (i.e., time information including the error from the true time) and calculates the time difference between the timing devices 50. The state estimation device 10 acquires the calculated time difference as time difference information.
[0021] As another example, the timing device 50 may exchange time information with other timing devices 50 to calculate the time difference. In this case, the timing device 50 calculates the time difference between the time it measured and the time measured by any of the other timing devices 50, and outputs the calculated time difference as time difference information to the state estimation device 10.
[0022] In the following explanation, the information that enables the calculation of the time difference output by the timing device 50, and the information indicating the time difference calculated based on this information, will be collectively referred to simply as "time difference information."
[0023] The timing device 50 may have a function to adjust the rate based on the control of the state estimation device 10. In this case, the state estimation device 10 outputs control information for rate adjustment (for example, rate control information) to the timing device 50.
[0024] The output device 30 includes, for example, a display device such as a liquid crystal display, or a printing device such as a printer. The output device 30 presents the state estimation results from the state estimation device 10 to the user via images, printed media, or the like.
[0025] The state estimation device 10 comprises a calculation unit 100 and a storage unit 190. The calculation unit 100 includes, for example, a central processing unit (CPU) and operates based on programs and data stored in the storage unit 190, providing various functions. The storage unit 190 is composed of, for example, a hard disk drive or semiconductor memory (flash memory, RAM, ROM), and stores various information such as programs and data read by the calculation unit 100. The storage unit 190 may be implemented by a virtual storage device such as a cloud server located outside the user terminal device 10.
[0026] The state-space model storage unit 20 is composed of, for example, a physical server or a virtual server such as a cloud server, and stores the state-space model M.
[0027] The state-space model M is a model that defines the state space of a timing system 5 (clock network) composed of multiple timing devices 50 (clocks).
[0028] The state estimation device 10 is a device that estimates the state of the timing device 50 (clock) described by this state space model M.
[0029] The state estimation system 1 of this embodiment targets a timing system 5 (clock network) which is a collection of multiple timing devices 50. The model acquisition unit 110 inputs information about this clock network into the system. Information about the clock network may include, for example, the number of clocks included in the clock network, the type and order of each clock, the accuracy of each clock, connection information between clocks, and the sampling period of the system. Only some of this information may be input, or other information about the clock network may be input. Based on this information, the state space model derivation unit (not shown) derives a state space model M of the clock network. The derived state space model M is stored in the state space model storage unit 20 in advance. The derivation of this state space model M will now be explained.
[0030] [About the state-space model M]
[0031] Here, an example of the functional configuration of the timing device 50 will be described with reference to Figures 2 and 3.
[0032] Figure 2 shows an example of the functional configuration of the timing device 50 of this embodiment. The timing device 50 includes an atomic clock 501, a PLL unit 502, a first counter 503, a second counter 504, a first time comparison unit 505, and a second time comparison unit 506. The atomic clock 501 outputs a clock signal 511. The first counter 503 outputs a free-run counter value 512 obtained by counting the clock signal 511. The PLL unit 502 outputs a phase-synchronized signal 514 based on the clock signal 511 and a frequency adjustment amount 513. The second counter 504 outputs an adjusted counter value 515 obtained by counting the phase-synchronized signal 514. The first time comparison unit 505 compares the free-running counter value 512 output by the first counter 503 with the counter value 516 (free-running counter value 512 in the other timing device 50) based on the clock signal of another (adjacent) timing device 50, and outputs the difference y [k], which is the difference between them at time k. The second time comparison unit 506 compares the free-running counter value 512 output by the first counter 503 with the counter value 515 output by the second counter 504, and outputs the difference Z [k], which is the difference between them at time k.
[0033] A state-space model M is derived for a single timing device 50 (for example, the i-th timing device 50-i) among the timing devices 50 included in the timing system 5. When the order ni is given from the state-space model M acquired by the model acquisition unit 110, the state-space model M for the i-th timing device 50-i is given by equation (1).
[0034]
[0035] Figure 3 is a diagram showing another example of the functional configuration of the timepiece 50 of the present embodiment. The timepiece 50a of this example includes an atomic clock 501, a PLL unit 502, a counter 507, and a time comparison unit 508. The atomic clock 501 outputs a clock signal 511. The PLL unit 502 outputs a phase-locked signal 514 based on the clock signal 511 and the frequency adjustment amount 513. The counter 507 outputs an adjusted counter value 515 obtained by counting the phase-locked signal 514. The time comparison unit 508 compares the adjusted counter value 515 with a counter value 516 (the adjusted counter value 515 in the other timepiece 50) based on the clock signal of another (adjacent) timepiece 50, and outputs y[k], which is the difference between them at time point k.
[0036] When comparing timepieces that have undergone frequency adjustment as shown in Fig. 3, the state space model M of the i-th timepiece 50-i is given by Equation (2).
[0037] However, the matrix Li in the same equation is represented by Equation (3).
[0038]
[0039] Also, the matrix Li may be expressed as Equation (4) depending on the input format.
[0040]
[0041] The output of this state space model M is such that the difference between the time measurement time (i.e., the clock reading) hi(t) of the timepiece 50-i and the true time t is represented by Equation (5).
[0042]
[0043] Note that Δhi[k] = Δhi(kτ). The matrix Ai(τ) and ci correspond to a multiple integrator. That is, the matrix Ai(τ) and ci can be expressed by Equations (6) and (7).
[0044]
[0045]
[0046] In this case, the state includes the time (phase), frequency (derivative of phase), and frequency deviation (derivative of frequency) of the clock (e.g., the timing device 50-i), as well as the derivative values of time / phase. Furthermore, vi[k] is considered to be normalized white noise with a mean of 0 and a covariance matrix Qi. Given the system noise costandard deviations σi, 1, ..., σi, ni related to the accuracy of the clock from the state-space model M acquired by the model acquisition unit 110, the following can be calculated as shown in equations (8) and (9).
[0047]
[0048]
[0049] Furthermore, wi[k] is considered to be normal white noise with a mean of 0 and a covariance matrix Ri. Given the phase noise costandard deviation σ'i from the model acquisition unit 110, Ri can be calculated as (σ'i)².
[0050] In the derivation of the state-space model M, the matrices Ai(τ), ci, Qi(τ), and R may be expressed by equations other than those described above, and multiple equations may be switched and used depending on the input information from the model acquisition unit 110.
[0051] Using the state-space models M of each timing device 50 derived as described above, we derive the state-space model M of the entire clock network. When there are multiple timing devices 50, we consider how to obtain the difference between two clock readings. One method for accurately measuring the difference between clock readings is to combine a timestamp packet and DMTD (Dual Mixer Time Difference). This time difference information is assumed to be obtained from a time difference information input unit. The time difference information input unit may have a method for obtaining the difference between clock readings with such high accuracy within the system, or it may be obtained through a network or the like. The difference between the clock readings of two timing devices 50 (i, j) is given by equation (10).
[0052]
[0053] Therefore, a system of clocks with l-group observations can be written as equations (11) to (14).
[0054]
[0055]
[0056]
[0057]
[0058] In this case, the noise v[k] is the normal white noise of the covariance matrix Q shown in equation (15).
[0059]
[0060] Furthermore, w[k] is the observation noise, which is normal white noise with mean 0 and covariance matrix R. In addition, A, C, and L in equation (11) are equations (16), (17), and (18), respectively, and N is the matrix containing the difference information to be measured.
[0061]
[0062]
[0063]
[0064] For example, when measuring the difference between timing devices 50-1, ..., 50-(m-1) and timing device 50-m, the equation is (19).
[0065]
[0066] This N can be constructed based on the connection information between clocks acquired by the state estimation device 10. The state estimation device 10 may obtain N from the user, or it may be in another format that allows specifying which clocks to compare.
[0067] The state-space model M of the entire clock network, generated as described above, is pre-stored in the state-space model storage unit 20.
[0068] [Subspace Specification Unit] The subspace specification unit specifies the method for separating the observable subspace and the unobservable subspace used by the state estimation unit 130. Specifically, a variable q can be specified. Depending on the embodiment, this specification method may determine the control performance.
[0069] As a method of specification, options such as "a mode that synchronizes to the average value of all clocks" or "a mode that maximizes short-term stability" may be presented and the user may choose. An example of the variable q is shown in equation (20). In this case, the system can determine the corresponding q. The user may also specify q directly.
[0070]
[0071] This variable q needs to be selected so that T, used in the state estimation unit 130, becomes regular. If T is not regular, the system may have a function to prompt the user to reset it.
[0072] [State Estimation Algorithm] The state estimation algorithm used by the state estimation unit 130 will be described below.
[0073] The Kalman filter is a representative method for estimating the most likely time by aggregating time difference information from multiple clocks. However, it has been pointed out that using the Kalman filter as is can lead to the values (covariance matrix) diverging over time due to unobservable states, potentially compromising numerical stability. Furthermore, from the perspective of frequency stability, the calculation results obtained with the Kalman filter are known to be inferior to simple weighted averages in terms of short-term frequency stability.
[0074] Conventional algorithms have suppressed the divergence of the covariance matrix by ad-hoc correction when the norm of the covariance matrix exceeds a threshold. Furthermore, methods such as finding the least-squares solution step-by-step have been proposed to improve short-term frequency stability.
[0075] However, these conventional algorithms had the following problems: (A) they could not obtain the steady-state Kalman gain obtained with a general Kalman filter; (B) rounding errors accumulated due to the suppression of the ad-hoc covariance matrix; and (C) the computational cost was high because the least-squares solution was sought at each step.
[0076] In contrast, the state estimation system 1 of this embodiment completely solves (A) and (B) by separating and processing the observable subspace and the unobservable subspace, and further provides an algorithm that satisfies (C) by partially correcting the values of the covariance matrix obtained during the calculation process. This algorithm makes it possible to maintain optimality in terms of accuracy while guaranteeing numerical stability, which was difficult to achieve conventionally.
[0077] [Configuration of the State Estimation Unit 130] Figure 4 is a diagram showing an example of the functional configuration of the state estimation unit 130 in this embodiment. The state estimation unit 130 comprises a first estimation unit 131 and a second estimation unit 132 as its functional units.
[0078] The state estimation unit 130 includes an observable portion state estimation unit 1311 and an observable portion covariance matrix estimation unit 1312, which estimate the states and covariance matrices of the observable portion of the state space; an unobservable portion state estimation unit 1321 and an unobservable portion covariance matrix estimation unit 1322, which estimate the states and covariance matrices of the unobservable portion. Furthermore, it includes a covariance matrix correction unit 1323, which corrects the covariance matrix of the unobservable portion to improve accuracy. The state estimation unit 130 integrates the information calculated by each of these units.
[0079] In other words, the state estimation unit 130 comprises a first estimation unit 131 and a second estimation unit 132. The first estimation unit 131 estimates the observable portion of the state space model M. The second estimation unit 132 estimates the unobservable portion of the state space model M.
[0080] The state estimation system 1 of this embodiment has a structure in the state estimation unit 130 that separates and estimates observable and unobservable parts. With the state estimation system 1 configured in this way, numerical instability can be avoided. Furthermore, the state estimation system 1 can improve the accuracy of state estimation by having a covariance matrix correction unit 1323.
[0081] The state estimation unit 130 is an element that uses the time difference information y[k] obtained from the time difference information input unit to determine the estimated value ^x[k|k] of the clock state x[k]. The state estimation system 1 of this embodiment separates the system into observable and unobservable parts and performs estimation.
[0082] For the sake of simplicity, let's assume that all clocks have the same order, n1 = n2 = ... = nm = n. In this case, equations (21), (22), and (23) can be written. Note that in the following explanation, A1(τ) may be written as A1 for the sake of simplicity.
[0083]
[0084]
[0085]
[0086] Furthermore, when the observed values are composed of the difference in clock readings, we can use equation (24) to write equation (25).
[0087]
[0088]
[0089] Here, we consider applying a similarity transformation to the system using the invertible matrices shown in equations (26) to (28).
[0090]
[0091]
[0092]
[0093] As described above, this q may be specified by the user. For example, the state estimation unit 130 may include an unobservable subspace designation unit 133. The unobservable subspace designation unit 133 specifies the type of space for the unobservable portion. In this case, the second estimation unit 132 uses the specified type of space to estimate the unobservable portion.
[0094] Using the invertible matrix described above, we obtain equation (29).
[0095]
[0096] Equation (29) leads to equations (30) and (31).
[0097]
[0098]
[0099] From this, the system transformed by the matrix T is as shown in equations (32) to (39).
[0100]
[0101]
[0102]
[0103]
[0104]
[0105]
[0106]
[0107]
[0108] Furthermore, even when the order of the clocks is not uniform, a similar approach can be used to construct the matrix T and separate the system into observable and unobservable parts. Also, if the system takes the same form as equations (32) and (33), different matrices may be used for To (Tee-O) and T ̄o (Tee-O-Bar) than those in equations (27) and (28).
[0109] The state estimation device 10 estimates the state based on the similarly transformed system obtained in this way. Next, the operation flow of state estimation by the state estimation device 10 will be described.
[0110] Figure 5 shows an example of the operation flow of the state estimation system 1 of this embodiment.
[0111] (Step S110) The model acquisition unit 110 acquires the state-space model M from the state-space model storage unit 20. As described above, the state-space model M is a model that shows the structure of the timing system 5 (clock network) which is composed of multiple timing devices 50 (clocks).
[0112] In other words, the model acquisition unit 110 acquires a state-space model M of the timing system 5 (clock network) which is composed of multiple timing devices 50 (clocks).
[0113] (Step S510) Each timing device 50 included in the timing system 5 outputs time difference information to the state estimation device 10. (Step S120) The time difference information acquisition unit 120 of the state estimation device 10 acquires the time difference information output from each timing device 50.
[0114] In other words, the time difference information acquisition unit 120 acquires time difference information for each of the multiple timing devices 50 (clocks), indicating the difference in indicated times between them.
[0115] (Step S130) The state estimation unit 130 decomposes the time difference information acquired in step S120 into an observable portion and an unobservable portion as defined by equations (32) to (39) above.
[0116] [Estimation by the first estimation unit 131 and the second estimation unit 132]
[0117] The state-space model M is composed of a state equation that includes both an observable and an unobservable part, and an observation equation that also includes both an observable and an unobservable part.
[0118] (Steps S141 to S142, Steps S151 to S152) The first estimation unit 131 and the second estimation unit 132 estimate the state estimate of the observable part ^xo[k|k] (x-hat-o-k-k), the state estimate of the unobservable part ^x ̄o[k|k] (x-hat-o-ber-k-k), the covariance matrix of the observable part Poo[k|k] (p-o-o-k-k), and the covariance matrix of the unobservable part P ̄oo[k|k] (p-o-ber-k-k).
[0119]
[0120]
[0121]
[0122]
[0123]
[0124]
[0125]
[0126]
[0127]
[0128]
[0129]
[0130] This estimation process can also be performed by replacing Poo[k+1|k] and P ̄oo[k+1|k] with constants P*oo and P* ̄oo as k→∞. In this case, P*oo is the positive definite solution to the discrete-time algebra Riccati equation shown in equation (51).
[0131]
[0132] Furthermore, P* ̄oo is a matrix that satisfies equation (52).
[0133]
[0134] However, cs is the column expansion shown in equation (53).
[0135]
[0136] [Regarding the covariance matrix correction unit 1323] When only the state estimation unit for the observable and unobservable parts described above is used, the frequency stability evaluated by, for example, the Allan deviation may not be sufficiently improved. Therefore, the state estimation system 1 of this embodiment can include a covariance matrix correction process to improve frequency stability. For example, after performing the processes of equations (43) and (49), all elements in the first row of P ̄oo[k|k] may be replaced with 0. In addition, the covariance matrix can be modified as shown in equation (54).
[0137]
[0138] Furthermore, F and G in equation (54) can be replaced with equations (55) and (56), and so on.
[0139]
[0140]
[0141] This modification of the covariance matrix using F and G can be achieved by manipulating only the unobservable portion of the covariance matrix, making it computationally more efficient than conventional methods that did not distinguish between the observable and unobservable portions.
[0142] (Step S153) That is, the covariance matrix correction unit 1323 corrects the unobservable part covariance matrix, which is a covariance matrix that shows the noise of the unobservable part.
[0143] The correction process for the unobservable subcovariance matrix is not limited to the example above. Other methods can be used, such as setting an evaluation function appropriate to the purpose and determining it through optimization calculations. Furthermore, if correction is unnecessary, such as when q is set appropriately, it is possible to omit the correction.
[0144] (Step S160) After performing the estimation and correction processes described above, the state estimation unit 130 integrates the state estimation values of the observable portion and the unobservable portion to calculate the state estimation value.
[0145] For example, the estimated value corresponding to the state of the timing device 50 defined by equation (12) is shown by equation (57).
[0146]
[0147] In addition, the estimated values can be determined in a format that matches the information used by the subsequent control unit. For example, the estimated values of the observable and unobservable parts may be used in equations (58) and (59), etc.
[0148]
[0149]
[0150] (Step S170) The status output unit 140 outputs an estimated value corresponding to the status of the timing device 50 calculated in step S160 to the output device 30.
[0151] Furthermore, the status output unit 140 outputs an estimated value corresponding to the status of the timing device 50 to the control unit 150.
[0152] The status output unit 140 can determine the estimated values in a format that matches the information used by the control unit 150. For example, the estimated values of the observable and unobservable portions may be output as they are.
[0153] In other words, the control unit 150 calculates the amount of operation for the timing device 50 (clock) based on the first estimation result, which is the estimation result of the observable portion, and the second estimation result, which is the estimation result of the unobservable portion.
[0154] The control unit 150 uses the estimated value obtained by the state estimation unit 130 to determine an input so that each timing device 50 included in the timing system 5 (clock network) follows some reference clock. This input can be, for example, the adjustment amount when adjusting the frequency of the timing device 50 using a PLL (phase-locked loop). The reference clock is a time determined by the setting of q and the covariance matrix correction process. For example, if q = 1m and no correction process is performed, the reference clock can be the average time of all clocks.
[0155] Rule for determining the control variable of the timing device 50 (1) For example, in the configuration shown in Figure 2 above, the control unit 150 can calculate the manipulated variable of the timing device 50 using equation (60), with K as the control gain. However, K is the control gain and may be determined by the user.
[0156]
[0157] Furthermore, using the estimated values of the observable and unobservable parts, ^x1[k|k] and ^x2[k|k], we can obtain equation (61).
[0158]
[0159] In this case, the control performance depends on the selection of observable and unobservable parts. To achieve the desired control performance, it is desirable that the unobservable parts are appropriately specified in the unobservable part specification section. Gains K1 and K2 do not need to be constant and may be varied over time. For example, K2 can be set to 0 and changed to a specified value from time to time.
[0160] Rule for determining the control amount of the timing device 50 (2) For example, in the configuration of Figure 3 described above, the control unit 150 can calculate the control amount of the timing device 50 using equation (62), with K as the control gain.
[0161]
[0162] Furthermore, using the estimated values of the observable and unobservable parts, ^x1[k|k] and ^x2[k|k], we can obtain equation (63).
[0163]
[0164] Furthermore, in the calculation of the manipulated variable by the control unit 150, other types of controllers may be designed, such as by adding a PID controller or a filter, or the input may be determined based on a different type of estimated value, such as by directly using the estimated values of the observable portion and the observable portion.
[0165] [Summary of State Estimation Unit 130] In this embodiment, the state estimation unit 130 receives a state space model M and time difference / frequency difference information as input and outputs a state estimation value. A general state space model M is shown in equation (64).
[0166]
[0167] Generally, the first row is called the state equation, and the second row is called the observation equation. The state-space model derivation unit receives the following inputs: matrix A, which is a component of the state equation in the state-space model M; matrix C, which is a component of the observation equation; the covariance matrix Q, which represents the magnitude of the system noise; and the covariance matrix R, which represents the observation noise. The time difference / frequency difference information receives either the time difference information or the frequency difference information between clocks. In the state-space model M, this corresponds to yk in the observation equation. The output state estimate corresponds to x in the state-space model M. However, since it is an estimate, it is written as ^x (hat x).
[0168] Conventional Kalman filters derive the most likely estimate ^x by sequentially processing two processes: a state estimation unit and a covariance matrix estimation unit. In this proposal, the system configuration further separates the processing into two parts: an observable subspace and an unobservable subspace. This makes it possible to suppress the divergence of the covariance matrix due to the unobservable subspace.
[0169] In conventional methods, the observable and unobservable parts of the observation equation are not separated during processing, which can cause the covariance matrix of the unobservable part to diverge over time, potentially impairing numerical stability. Furthermore, the unobservable part correction unit obtained by the unobservable part covariance matrix estimation unit 1322 partially corrects the matrix to improve the estimation accuracy of frequency stability. Specifically, for example, 0 is substituted into the covariance matrix related to the time difference information in the observation equation (when the observation noise is negligibly small), or a finite value matching the observation noise intensity is substituted. The state estimation unit 130 uses these estimated values of the observable and unobservable parts and the covariance matrix to convert them into a time estimate for the clock and output it.
[0170] A more specific state estimation rule is shown in Figure 6. Figure 6 is a diagram showing an example of the state estimation side by the state estimation unit 130 of this embodiment.
[0171] [Effects of State Estimation System 1] Figure 7 shows an example of the effects of the state estimation system 1 of this embodiment. The figure shows the state of the covariance matrix obtained during the estimation process of the state estimation unit 130. Figure (A) shows the change in the size of the covariance matrix used in the calculation of the conventional method. In the following explanation, the size of the covariance matrix will also be referred to as the norm of the covariance matrix (or simply the norm). In the calculation of the conventional method, it has been shown that the norm does not converge to a constant value over time, but diverges in time.
[0172] Figure (B) shows the norm of the observable partial covariance matrix according to the state estimation system 1 of this embodiment. Figure (C) shows the norm of the unobservable partial covariance matrix according to the state estimation system 1 of this embodiment. As shown in Figures (B) and (C), according to the state estimation system 1 of this embodiment, both the norm of the observable partial covariance matrix and the norm of the unobservable partial covariance matrix converge to a constant value over time, indicating that divergence is suppressed.
[0173] Figure 8 shows a comparison of the accuracy of the conventional method and the state estimation system 1 of this embodiment. The figure shows the Allan deviation, an index commonly used to evaluate the accuracy of clocks, with the horizontal axis representing the averaging time and the vertical axis representing the magnitude of the error. The smaller the error (the further down the vertical axis in the figure), the more stable the clock is considered to be. In the figure, the dashed line represents the accuracy of the clock before time control is performed. The solid line represents the theoretically obtainable limit of accuracy. The dashed line represents the accuracy of the state estimation system 1 of this embodiment without covariance correction by the covariance matrix correction unit 1323. The dashed line represents the accuracy of the state estimation system 1 of this embodiment with covariance correction by the covariance matrix correction unit 1323.
[0174] According to the state estimation system 1 of this embodiment, even in the case where covariance correction by the covariance matrix correction unit 1323 is not performed, the timing time of each timing device 50 can be controlled with high accuracy compared to the case without control.
[0175] Furthermore, according to the state estimation system 1 of this embodiment, when covariance correction is performed by the covariance matrix correction unit 1323, the timing time of each timing device 50 can be controlled with even greater precision.
[0176] The state estimate obtained by the state estimation system 1 includes information about the time error of the timing device 50. Therefore, by correcting the time of the timing device 50 using this information, a more accurate time can be provided.
[0177] Furthermore, if there is more information on the difference in timing between the timing devices 50, the calculation accuracy of the error estimate can be further improved. As described above, the state estimation system 1 concentrates error information in one device (for example, the state estimation device 10), so it can collect more error information between clocks. Therefore, according to the state estimation system 1 of this embodiment, the calculation accuracy of the error estimate can be improved.
[0178] While embodiments of the present invention have been described in detail above with reference to the drawings, the specific configuration is not limited to these embodiments, and design changes and the like are also included within the scope of the gist of the present invention. For example, a computer program for realizing the functions of each of the above-described devices may be recorded on a computer-readable recording medium, and the program recorded on this recording medium may be read by a computer system and executed. The term "computer system" as used herein may include hardware such as an operating system and peripheral devices.
[0179] Furthermore, "computer-readable recording media" refers to writable non-volatile memory such as flexible disks, magneto-optical disks, ROMs, and flash memory, portable media such as DVDs (Digital Versatile Discs), and storage devices such as hard disks built into computer systems. In addition, "computer-readable recording media" also includes volatile memory (such as DRAM (Dynamic Random Access Memory)) within computer systems that act as servers or clients when programs are transmitted via networks such as the Internet or communication lines such as telephone lines, which retains programs for a certain period of time.
[0180] Furthermore, the above program may be transmitted from a computer system that stores the program in a memory device or the like to another computer system via a transmission medium or by transmission waves within the transmission medium. Here, the "transmission medium" for transmitting the program refers to a medium that has the function of transmitting information, such as a network (communication network) such as the Internet or a communication line (communication line) such as a telephone line. Also, the above program may be for the purpose of realizing a part of the functions described above. Furthermore, it may be a so-called differential file (differential program) that can realize the above functions in combination with a program already recorded in the computer system.
[0181] 1...State estimation system, 10...State estimation device, 20...State space model storage unit, 50...Timekeeping device
Claims
1. A device for estimating the state of a clock described by a state-space model, comprising: a model acquisition unit for acquiring a state-space model of a clock network composed of multiple clocks; a time difference information acquisition unit for acquiring time difference information indicating the instruction time difference between the multiple clocks for each of the clocks; and a state estimation unit comprising a first estimation unit for estimating the observable portion of the state-space model and a second estimation unit for estimating the unobservable portion.
2. The state estimation device according to claim 1, wherein the state space model is comprised of a state equation including an observable portion and an unobservable portion, and an observation equation including an observable portion and an unobservable portion.
3. The state estimation device according to claim 1, further comprising a control unit that calculates a clock operation amount based on a first estimation result which is the estimation result of the observable portion and a second estimation result which is the estimation result of the unobservable portion.
4. The state estimation device according to claim 3, further comprising a covariance matrix correction unit for correcting the unobservable portion covariance matrix, which is a covariance matrix indicating the noise of the unobservable portion.
5. The state estimation device according to claim 1, further comprising an unobservable portion space designation unit for designating the type of space of the unobservable portion, wherein the second estimation unit performs estimation of the unobservable portion using the designated type of space.
6. A storage medium for a computer that performs state estimation of a clock described by a state-space model M, which stores a program to perform the following: acquire a state-space model M of a clock network composed of multiple clocks; acquire time difference information for each clock indicating the difference in indicated times between the multiple clocks; estimate the observable portion of the state-space model M; and estimate the unobservable portion of the state-space model M.
Citation Information
Patent Citations
Time synchronization network
JP2022014406A
Time synchronizing device and network
JP2022158404A