Data smoothing
Abstract
A method of transforming an array X of input values x (i) into an array Y of output values y (i) , the method comprising calculating each value y (i) of the array Y as a function of at least an exponentially weighted moving average a (i) of the array X, calculated in ascending order of the array X value indices, and an exponentially weighted moving average b (i) of the array X, calculated in descending order of the array X value indices, or an exponentially weighted moving average b′ (j) of an array X′ containing the values of the array X in reverse order, calculated in ascending order of the array X′ value indices, where i, j are the array value indices, wherein 0≤i<N, j=N−1−i, N is the array size. A computer system that implements said method, and a non-transitory computer readable medium comprising program instructions allowing for implementing said method.
Claims
exact text as granted — not AI-modified1 . A method of transforming an array X of input values x (i) into an array Y of output values y (i) , comprising
calculating each value y (i) of the array Y as a function at least of an exponentially weighted moving average a (i) of the array X, calculated in ascending order of the array X value indices, and an exponentially weighted moving average b (i) of the array X, calculated in descending order of the array X value indices, or an exponentially weighted moving average b′ (j) of an array X′ containing the values of the array X in reverse order, calculated in ascending order of the array X′ value indices, where i, j are the array value indices, wherein 0≤i<N, j=N−1−i, N is the array size.
2 . The method of claim 1 , characterized in that the method comprises calculating the exponentially weighted moving average a (i) according to the equation
a (i) =a (i−1) *w+x (i) *(1− w ) and
the exponentially weighted moving average b (i) according to the equation
b (i) =b (i+1) *w+x (i) *(1− w )
or the exponentially weighted moving average b′ (j) according to the equation
b′ (j) =b′ (j−1) *w+x′ (j) *(1− w ),
where w is a smoothing coefficient.
3 . The method of claim 1 , characterized in that the method comprises calculating the exponentially weighted moving average a (i) according to the equation
a (i) =a (i−1) *s (i) +x (i) *(1− s (i) ) and
the exponentially weighted moving average b (i) according to the equation
b (i) =b (i+1) *s (i) +x (i) *(1− s (i) )
or the exponentially weighted moving average b′ (j) according to the equation
b′ (j) =b′ (j−1) *s′ (j) +x′ (j) *(1 −s′ (j) ),
where s (i) are the values of the array S of size N, being smoothing coefficients, s′ (j) are the values of the array S′ of size N comprising the values of the array S in reverse order.
4 . The method of claim 1 , characterized in that the method comprises calculating the exponentially weighted moving average a (i) according to the equation
a (i) =a (i−1) *w +( x (i) +x (i−1) )/2*(1− w ) and
the exponentially weighted moving average b (i) according to the equation
b (i) =b (i+1) *w +( x (i) +x (i+1) )/2*(1− w )
or the exponentially weighted moving average b′ (j) according to the equation
b′ (j) =b′ (j−1) *w +( x′ (j) +x′ (j−1) )/2*(1− w ),
where w is a smoothing coefficient.
5 . The method of claim 1 , comprises calculating the exponentially weighted moving average a (i) according to the equation
a (i) =a (i−1) *s (i) +( x (i) +x (i−1) )/2*(1− s (i) ) and
the exponentially weighted moving average b (i) according to the equation
b (i) =b (i+1) *s (i) +( x (i) +x (i+1) )/2*(1− s (i) )
or the exponentially weighted moving average b′ (j) according to the equation
b′ j) =b′ (j−1) *s′ (j) +( x′ (j) +x′ (j−1) )/2*(1− s′ (j) ),
where s (i) are the values of the array S of size N, being smoothing coefficients, s′ (j) are the values of the array S′ of size N comprising the values of the array S in reverse order.
6 . The method of claim 1 , characterized in that the method comprises calculating each value y (i) of the array Y according to the equation
y (i) =( a (i) +b (i) )/2
or
y (i) =( a (i) +b′ (j) )/2.
7 . The method of claim 1 , characterized in that the method comprises calculating each value y (i) of the array Y according to the equation
y (i) =abs ( x (i) −( a (i) +b (i) )/2)̂ g
or
y (i) =abs ( x (i) −( a (i) +b′ (j) )/2)̂ g,
where g is an exponent, g>0.
8 . The method of claim 1 , characterized in that the method comprises calculating each value y (i) of the array Y according to the equation
y (i) =max(min( x (i) , max( a (i) , b (i) )), min( a (i) , b (i) ))
or
y (i) =max(min( x (i) , max( a (i) , b′ (j) )), min( a (i) , b′ (j) )).
9 . The method of claim 1 , characterized in that the method comprises calculating each value y (i) of the array Y according to the equation
y (i) =max( a (i) , b (i) )
or
y (i) =max( a (i) , b′ (j) ).
10 . The method of claim 1 , characterized in that the method comprises calculating each value y (i) of the array Y according to the equation
y (i) =min( a (i) , b (i) )
or
y (i) =min( a (i) , b′ (j) ).
11 . A computer system comprising
at least one processor, at least one non-transitory computer readable medium communicatively connected with at least one processor, and program instructions stored on at least one computer readable medium, being executable by at least one processor and comprising program instructions for calculating each value y (i) of the array Y of output values as a function of at least an exponentially weighted moving average a (i) of the array X of input values x (i) , calculated in ascending order of the array X value indices, and an exponentially weighted moving average b (i) of the array X of the input values x (i) , calculated in descending order of the array X value indices, or an exponentially weighted moving average b′ (j) of an array X′ containing the values of the array X in reverse order, calculated in ascending order of the array X′ value indices, where i, j are the array value indices, wherein 0≤i<N, j=N−1−i, N is the array size.
12 . The system of claim 11 , wherein the program instructions comprise instructions for calculating the exponentially weighted moving average a (i) according to the equation
a (i) =a (i−1) *w+x (i) *(1− w ) and
the exponentially weighted moving average b (i) according to the equation
b (i) =b (i+1) *w+x (i) *(1− w )
or the exponentially weighted moving average b′ (j) according to the equation
b′ (j) =b′ (j−1) *w+x′ (j) *(1− w ),
where w is a smoothing coefficient.
13 . The system of claim 11 , wherein the program instructions comprise instructions for calculating the exponentially weighted moving average a (i) according to the equation
a (i) =a (i−1) *s (i) +x (i) *(1− s (i) ) and
the exponentially weighted moving average b (i) according to the equation
b (i) =b (i+1) *s (i) +x (i) *(1− s (i) )
or the exponentially weighted moving average b′ (j) according to the equation
b′ (j) =b′ (j−1) *s′ (j) +x′ (j) *(1 −s′ (j) ),
where s (i) are the values of the array S of size N, being smoothing coefficients, s′ (j) are the values of the array S′ of size N comprising the values of the array S in reverse order.
14 . The system of claim 11 , wherein the program instructions comprise instructions for calculating the exponentially weighted moving average a (i) according to the equation
a (i) =a (i−1) *w +( x (i) +x (i−1) )/2*(1− w ) and
the exponentially weighted moving average b (i) according to the equation
b (i) =b (i+1) *w +( x (i) +x (i+1) )/2*(1− w )
or the exponentially weighted moving average b′ (j) according to the equation
b′ (j) =b′ (j−1) *w +( x′ (j) +x′ (j−1) )/2*(1− w ),
where w is a smoothing coefficient.
15 . The system of claim 11 , wherein the program instructions comprise instructions for calculating the exponentially weighted moving average a (i) according to the equation
a (i) =a (i−1) *s (i) +( x (i) +x (i−1) )/2*(1− s (i) ) and
the exponentially weighted moving average b (i) according to the equation
b (i) =b (i+1) *s (i) +( x (i) +x (i+1) )/2*(1− s (i) )
or the exponentially weighted moving average b′ (j) according to the equation
b′ j) =b′ (j−1) *s′ (j) +( x′ (j) +x′ (j−1) )/2*(1− s′ (j) ),
where s (i) are the values of the array S of size N, being smoothing coefficients, s′ (j) are the values of the array S′ of size N comprising the values of the array S in reverse order.
16 . The system of claim 11 , wherein the program instructions comprise instructions for calculating each value y (i) of the array Y according to the equation
y (i) =( a (i) +b (i) )/2
or
y (i) =( a (i) +b′ (j) )/2.
17 . The system of claim 11 , wherein the program instructions comprise instructions for calculating each value y (i) of the array Y according to the equation
y (i) =abs ( x (i) −( a (i) +b (i) )/2)̂ g
or
y (i) =abs ( x (i) −( a (i) +b′ (j) )/2),
where g is an exponent, g>0.
18 . The system of claim 11 , wherein the program instructions comprise instructions for calculating each value y (i) of the array Y according to the equation
y (i) =max(min( x (i) , max( a (i) , b (i) )), min( a (i) , b (i) ))
or
y (i) =max(min( x (i) , max( a (i) , b′ (j) )), min( a (i) , b′ (j) )).
19 . The system of claim 11 , wherein the program instructions comprise instructions for calculating each value y (i) of the array Y according to the equation
y (i) =max( a (i) , b (i) )
or
y (i) =max( a (i) , b′ (j) ).
20 . The system of claim 11 , wherein the program instructions comprise instructions for calculating each value y (i) of the array Y according to the equation
y (i) =min( a (i) , b (i) )
or
y (i) =min( a (i) , b′ (j) ).
21 . One or more non-transitory computer readable storage medium comprising
program instructions stored thereon, comprising program instructions for calculating each value y (i) of an array Y of output values as a function of at least an exponentially weighted moving average a (i) of the array X of input values x (i) , calculated in ascending order of the array X value indices, and an exponentially weighted moving average b (i) of the array X of the input values x (i) , calculated in descending order of the array X value indices, or an exponentially weighted moving average b′ (j) of an array X′ containing the values of the array X in reverse order, calculated in ascending order of the array X′ value indices, where i, j are the array value indices, wherein 0≤i<N, j=N−1−i, N is the array size.
22 . One or more non-transitory computer readable storage medium of claim 21 , wherein the program instructions comprise instructions for calculating the exponentially weighted moving average a (i) according to the equation
a (i) =a (i−1) *w+x (i) *(1− w ) and
the exponentially weighted moving average b (i) according to the equation
b (i) =b (i+1) *w+x (i) *(1− w )
or the exponentially weighted moving average b′ (j) according to the equation
b′ (j) =b′ (j−1) *w+x′ (j) *(1− w ),
where w is a smoothing coefficient.
23 . One or more non-transitory computer readable storage medium of claim 21 , wherein the program instructions comprise instructions for calculating the exponentially weighted moving average a (i) according to the equation
a (i) =a (i−1) *s (i) +x (i) *(1− s (i) ) and
the exponentially weighted moving average b (i) according to the equation
b (i) =b (i+1) *s (i) +x (i) *(1− s (i) )
or the exponentially weighted moving average b′ (j) according to the equation
b′ (j) =b′ (j−1) *s′ (j) +x′ (j) *(1 −s′ (j) ),
where s (i) are the values of the array S of size N, being smoothing coefficients, s′ (j) are the values of the array S′ of size N comprising the values of the array S in reverse order.
24 . One or more non-transitory computer readable storage medium of claim 21 , wherein the program instructions comprise instructions for calculating the exponentially weighted moving average a (i) according to the equation
a (i) =a (i−1) *w +( x (i) +x (i−1) )/2*(1− w ) and
the exponentially weighted moving average b (i) according to the equation
b (i) =b (i+1) *w +( x (i) +x (i+1) )/2*(1− w )
or the exponentially weighted moving average b′ (j) according to the equation
b′ (j) =b′ (j−1) *w +( x′ (j) +x′ (j−1) )/2*(1− w ),
where w is a smoothing coefficient.
25 . One or more non-transitory computer readable storage medium of claim 21 , wherein the program instructions comprise instructions for calculating the exponentially weighted moving average a (i) according to the equation
a (i) =a (i−1) *s (i) +( x (i) +x (i−1) )/2*(1− s (i) ) and
the exponentially weighted moving average b (i) according to the equation
b (i) =b (i+1) *s (i) +( x (i) +x (i+1) )/2*(1− s (i) )
or the exponentially weighted moving average b′ (j) according to the equation
b′ j) =b′ (j−1) *s′ (j) +( x′ (j) +x′ (j−1) )/2*(1− s′ (j) ),
where s (i) are the values of the array S of size N, being smoothing coefficients, s′ (j) are the values of the array S′ of size N comprising the values of the array S in reverse order.
26 . One or more non-transitory computer readable storage medium of claim 21 , wherein the program instructions comprise instructions for calculating each value y (i) of the array Y according to the equation
y (i) =( a (i) +b (i) )/2
or
y (i) =( a (i) +b′ (j) )/2.
27 . One or more non-transitory computer readable storage medium of claim 21 , wherein the program instructions comprise instructions for calculating each value y (i) of the array Y according to the equation
y (i) =abs ( x (i) −( a (i) +b (i) )/2)̂ g
or
y (i) =abs ( x (i) −( a (i) +b′ (j) )/2)̂ g,
where g is an exponent, g>0.
28 . One or more non-transitory computer readable storage medium of claim 21 , wherein the program instructions comprise instructions for calculating each value y (i) of the array Y according to the equation
y (i) =max(min( x (i) , max( a (i) , b (i) )), min( a (i) , b (i) ))
or
y (i) =max(min( x (i) , max( a (i) , b′ (j) )), min( a (i) , b′ (j) )).
29 . One or more non-transitory computer readable storage medium of claim 21 , wherein the program instructions comprise instructions for calculating each value y (i) of the array Y according to the equation
y (i) =max( a (i) , b (i) )
or
y (i) =max( a (i) , b′ (j) ).
30 . One or more non-transitory computer readable storage medium of claim 21 , wherein the program instructions comprise instructions for calculating each value y (i) of the array Y according to the equation
y (i) =min( a (i) , b (i) )
or
y (i) =min( a (i) , b′ (j) ).Join the waitlist — get patent alerts
Track US2018232860A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.