Notes from Parker & Chua

advertisement
Notes from Parker & Chua (Practical Numerical Algorithms for Chaotic Systems)
Chapter 7 – Dimension
Strange attractors possess non-integer dimension, while the dimension of a non-chaotic attractor
is always an integer.
IMPORTANT – an attractor can be reconstructed from a sampled time waveform of just one
component of the state.
7.1 Dimension
There are several different types of dimension:
ο‚· Euclidian space – the minimum number of coordinates needed to specify a point
uniquely.
ο‚· Dynamical system – the number of state variables used to describe the dynamics of the
system.
ο‚· Differential topology – the dimension of a manifold is the dimension of the Euclidean
space that the manifold resembles locally.
ο‚· Fractal – a dimension that allows non-integer values. There are at least five different
types of fractal dimension:
o Capacity – most well-known.
o Information
o Correlation
o kth nearest-neighbor
o Lyapunov
7.1.1 Definitions
Capacity
This is the simplest type of dimension…
Procedure
1. Cover an attractor 𝐴 with volume elements (spheres, cubes, etc.) each with
diameter πœ–.
2. Let 𝑁(πœ–) be the minimum number of volume elements needed to cover 𝐴.
3. If 𝐴 is a 𝐷-dimensional manifold – 𝐷 necessarily an integer – then the number of
volume elements needed to cover 𝐴 is given by
𝑁(πœ–) = π‘˜πœ– −𝐷
for some constant π‘˜.
4. The capacity π·π‘π‘Žπ‘ , is obtained by solving for 𝐷 and taking the limit as πœ–
approaches zero:
ln𝑁(πœ–)
πœ–→0 ln(1/πœ–)
π·π‘π‘Žπ‘ ≔ lim
a. If the limit does not exist, then π·π‘π‘Žπ‘ is undefined.
b. Since a d-dimensional manifold locally resembles ℝ𝑑 , π·π‘π‘Žπ‘ of a manifold
equals the topological dimension, which is an integer.
c. For objects that aren’t manifolds, π·π‘π‘Žπ‘ can take on non-integer values.
5. ***
Example 7.1 – The Unit Interval
1. As volume elements, choose intervals of length πœ– = 1/3π‘˜ . It then takes 𝑁(πœ–) =
3π‘˜ volume elements to cover the unit interval [0,1]
As πœ– → 0, 𝑁(πœ–) increases proportionally. In fact
ln3k
π·π‘π‘Žπ‘ ≔ lim
=1
π‘˜→∞ ln3k
meaning the unit interval has dimension 1.
Example 7.2 – The Middle-third Cantor Set
1. As volume elements, choose intervals of length πœ– = 1/3π‘˜ . It then takes 𝑁(πœ–) =
3π‘˜ volume elements to cover the unit interval [0,1]
Information Dimension
Whereas capacity is a purely metric concept that utilizes no information about the time
behavior of the dynamical system, information dimension is defined in terms of relative
frequency of visitation of a typical trajectory.
It also depends on refining a covering of 𝑁(πœ–) volume elements of diameter πœ–.
Then, let 𝑃𝑖 is the relative frequency with which a typical trajectory enters the ith volume
element of the covering, and
𝑁(πœ–)
𝐻(πœ–) ≔ ∑ 𝑃𝑖 ln 𝑃𝑖
𝑖=1
and the information dimension is defined as
𝐻(πœ–)
πœ–→0 ln(1/πœ–)
𝐷𝐼 ≔ lim
Procedure
1. ***
Correlation Dimension (𝑫π‘ͺ )
This is another probabilistic type of dimension.
It also depends on refining a covering of 𝑁(πœ–) volume elements of diameter πœ–, and is
defined by
2
ln ∑𝑁(πœ–)
i=1 Pi
𝐷𝐢 ≔ lim
πœ–→0
ln πœ–
where 𝑃𝑖 is the relative frequency with which a typical trajectory enters the ith volume
element.
Interpretation
Suppose N points of a trajectory have been collected, either through simulation or
from measurements. Define the correlation as
1
{π‘‘β„Žπ‘’ π‘›π‘’π‘šπ‘π‘’π‘Ÿ π‘œπ‘“ π‘π‘Žπ‘–π‘Ÿπ‘  π‘œπ‘“ π‘π‘œπ‘–π‘›π‘‘π‘  (π‘₯𝑖 , π‘₯𝑗 ) π‘ π‘’π‘β„Ž π‘‘β„Žπ‘Žπ‘‘β€–π‘₯𝑖 − π‘₯𝑗 β€– < πœ–}
𝑁→∞ 𝑁 2
𝐢(πœ–) ≔ lim
Then
ln 𝐢(πœ–)
πœ–→0 ln πœ–
Proof: let 𝑛𝑖 be the number of points lying in the ith element. Then
𝑛𝑖
𝑃𝑖 = lim
𝑁→∞ N
Since the volume element has diameter πœ–, all the 𝑛𝑖 points lie within πœ– of each
other. If we don’t count the points (π‘₯𝑖 , π‘₯𝑗 ), 𝑗 = 𝑖, and we treat (π‘₯𝑖 , π‘₯𝑗 ) as distinct
from (π‘₯𝑗 , π‘₯𝑖 ), we then have 𝑛𝑖2 − 𝑛𝑖 points inside the volume element. It follows
that
𝐷𝐢 ≔ lim
𝑁(πœ–)
1
𝐢(πœ–) = lim 2 ∑ (𝑛𝑖2 − 𝑛𝑖 )
𝑁→∞ 𝑁
𝑖=1
𝑁(πœ–)
𝑛𝑖2
𝑛𝑖
− lim 2
2
𝑁→∞ 𝑁
𝑁→∞ 𝑁
= ∑ lim
𝑖=1
𝑁(πœ–)
𝑃𝑖
𝑁→∞ 𝑁
= ∑ 𝑃𝑖2 − lim
𝑖=1
𝑁(πœ–)
= ∑ 𝑃𝑖2
𝑖=1
which gives
2
ln ∑𝑁(πœ–)
ln 𝐢(πœ–)
i=1 Pi
𝐷𝐢 ≔ lim
= lim
πœ–→0
πœ–→0 ln πœ–
ln πœ–
An objection to the preceding derivation might be raised: because 𝑛𝑖2 − 𝑛𝑖 is the
number of points in a single volume element, it doesn’t include pairs of points that are
within πœ– of each other but that are actually in different volume elements. To dispense
with this potential problem assume that there are actually πœ‡π‘›π‘–2 pairs of points within πœ–
of each other, where πœ‡ > 1 is a correction factor. This leads to
ln πœ‡πΆ(πœ–)
πœ–→0
ln πœ–
𝐷𝐢 = lim
ln πœ‡
𝐢(πœ–)
+ lim
πœ–→0 ln πœ–
πœ–→0 ln πœ–
𝐢(πœ–)
= lim
πœ–→0 ln πœ–
Thus, the ‘error’ is of no consequence.
= lim
Example 7.6 – Interval and point
1. Let the set under study be the subset of ℝ that consists of the unit interval [0,1]
and the isolated point 2.
2. Assume that
a. the probability of finding a point at 2 is 1/2, and of finding a point on the
interval [0,1]is also 1/2.
b. the density is uniform over the interval.
3. Use intervals of length πœ– = 1/3π‘˜ as volume elements.
4. Then 𝑁(πœ–) = 3π‘˜ + 1, 𝑃𝑖 = 1/(2 βˆ™ 3π‘˜ ) for the volume elements covering the
interval, and 𝑃𝑖 = 1/2 for the single volume element covering the isolated point,
and we can make the following substitution:
2
ln ∑𝑁(πœ–)
i=1 Pi
𝐷𝐢 = lim
1
π‘˜→∞
ln ( π‘˜ )
3
π‘˜
1
1
ln [4 + ∑3i=1
]
4 βˆ™ 32π‘˜
= lim
1
π‘˜→∞
ln ( π‘˜ )
3
1
1
ln [ (1 + π‘˜ )]
4
3
= lim
π‘˜→∞
ln(1/3π‘˜ )
= lim
1
ln [4]
π‘˜→∞ ln(1/3π‘˜ )
=0
IMPORTANT: dimension is an active area of research, and the relationships – even the
meanings – of the different dimensions are unclear, especially in experimental settings or
when applied to simulations.
ο‚· Part of the problem is that we don’t have an exact definition of a strange attractor.
ο‚· Also, statistical properties of the dimensions are unclear.
Given that, how do the different dimensions relate to each other?
1. Dimension doesn’t appear to be useful for describing an attractor.
a. We don’t know how much information the different values of dimension
actually carry. (there’s an infinite number of possible dimensions, the
Reyni dimensions, that are themselves embedded in an entire continuum of
dimensions.)
b. To distinguish between two attractors on the basis of dimension alone,
is it sufficient to know that values of all these different dimensions, of
just a few, or is additional information needed?
2. Dimension can in theory be used to distinguish between strange and non-strange
attractors.
a. Non-strange attractors have integer dimension.
b. Almost all chaotic attractors have non-integer dimension.
c. HOWEVER…this is useless in practice:
i. Dimension-calculating algorithms have low precision, making it
impossible to judge whether a dimension is actually an integer.
d. BETTER – just look at the attractor, or use a shooting method.
3. The dimension of an attractor gives a lower bound on the number of state
variables needed to describe the dynamics on the attractor.
a. Physicists say the dimension is a lower bound on the number of degrees
of freedom of the attractor.
4. ***
7.1.2 Algorithms
The input to a dimension-finding algorithm is a finite sequence {π‘₯1 , … , π‘₯𝑁 } of points on an
attractor.
ο‚· Typically, the points are evenly-spaced time samples of one or more trajectories that
have achieved the steady state.
ο‚· The algorithms are not given full information about an attractor; they are given only
partial information about a finite number of trajectories on the attractor.
Correlation Dimension
The correlation dimension may be found directly from its defining equation using a boxcounting scheme to estimate 𝑃𝑖 , but this approach is inefficient.
The Grassberger-Procaccia (1983) algorithm is faster.
ο‚· The correlation dimension is the slope of a log-log plot of 𝐢(πœ–) versus πœ–.
ο‚· For a given πœ–, compute all inter-point distances, π‘Ÿπ‘–π‘— = β€–π‘₯𝑖 − π‘₯𝑗 β€–, and counting the
number, π‘π‘Ÿ (πœ–), of π‘Ÿπ‘–π‘— < πœ– for 𝑖, 𝑗 = 1, … , 𝑁.
o Then 𝐢(πœ–) = π‘π‘Ÿ (πœ–)/𝑁 2.
ο‚· The x-axis of the log-log plot is ln πœ–. To obtain a set of points that are evenlyspaced in the x direction, a simple binning algorithm is used.
ο‚· Calculate 𝑁(πœ–) for geometrically-spaced values of πœ–: πœ–0 , πœ–02 ,… πœ–0𝐾 , πœ–0 , 𝐾 > 0.
o Maintain a K-dimensional array π‘πœ– [] of integers.
o π‘πœ– [π‘˜] is the count of the inter-point distances that satisfy πœ–0π‘˜−1 < π‘Ÿπ‘–π‘— <
πœ–0π‘˜ . Then
π‘˜
𝑁(πœ–0π‘˜ )
= ∑ π‘πœ– [𝑖] , π‘˜ = 1, … , 𝐾
𝑖=1
o π‘πœ– [] is initialized to all zeros.
o There are two ways to fill π‘πœ– []:
1. Choose πœ–0 equal to some small integer b. For each of the inter-point
distances π‘Ÿπ‘–π‘— , set k to the integer of log 𝑏 π‘Ÿπ‘–π‘— and increment π‘πœ– [π‘˜] by
one.
a. The value of k is often negative, so a constant offset must be
added to ensure that π‘πœ– [] is positive.
b. The drawback of this approach is that log( ) is an expensive
floating-point operation.
2. Take advantage of the floating-point representation used in computers,
where π‘Ÿπ‘–π‘— = ±π‘šπ‘ 𝑒 , where e is an integer, the base b is also an integer,
usually some power of 2, and the mantissa m is a fraction normalized
such that 1/𝑏 ≤ π‘š < 1. In the 32-bit IEEE standard, 𝑏 = 2.
a. Choose πœ–0 = 2πœ–π‘šπ‘–π‘› , where πœ–π‘šπ‘–π‘› is the smallest exponent
possible in the floating-point representation.
b. Choose
𝐾 = πœ–π‘šπ‘Žπ‘₯ − πœ–π‘šπ‘–π‘› + 1
where πœ–π‘šπ‘Žπ‘₯ is the largest possible exponent.
c. For each inter-point distance π‘Ÿπ‘–π‘— , increment π‘πœ– [𝑒 − πœ–π‘šπ‘–π‘› + 1]
by one where e is the exponent of the floating-point
representation of π‘Ÿπ‘–π‘— .
i. This exponent is offset by −πœ–π‘šπ‘–π‘› + 1 to ensure that the
index is positive.
Pseudocode:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
begin find_cor_dim(x[][],N)
set K=emaxο€­emin+1
set offset = 1 - emin
set kmin = K
set kmax = 1
for k = 1:K
set Ne[k] = 0
end
for i = 1:N-1
K will be the number of ‘bins’ used to store the 𝐢(πœ–) values
ο‚· Set emin = 0
Set offset = 1
kmin and kmax are the exponents for sequential values of each bin’s
limits: πœ–π‘˜0 → πœ–0 , πœ–20 ,… πœ–0𝐾 , πœ–0 , 𝐾 > 0.
This doesn’t generate an N×N matrix of distance values…it
calculates a distance, compares it with
for j = i+1:N
set r = ||x[i][] ο€­ x[j][]||
set e to the exponent of r
set k = e + offset
set Ne[k] = Ne[k] + 1
if k < kmax
set kmax = k
end
if k > kmin
set kmin = k
end
end
end
set sum = 0
for k = kmin: kmax
set sum = sum + Ne[k]
plot x = k versus y = ln(2*sum/N2)/ln2
end
end
Remarks:
1. In the IEEE floating-pint standard, the exponent is stored with a constant value, termed a bias,
added to it. The bias is chosen such that the exponent is never negative. Thus, π‘’π‘šπ‘–π‘› = 0, and
offset = 1. When plotting, the slope is all that is sought, and the exponents (i.e., the k’s) therefore
do not have to be debiased before plotting.
2. Owing to duplications, not all the inter-point distances are computed. Only the (𝑁 2 − 𝑁)/2
values π‘Ÿπ‘–π‘— for 𝑖 = 1, … , 𝑁 − 1 and 𝑗 = 𝑖 + 1, 𝑖 + 2, … , 𝑁 are computed. It follows that the entries
in π‘πœ– [] are half the actual amount. This explains why sum is multiplied by two (Line 24) prior to
plotting.
3. There will be some π‘˜π‘šπ‘–π‘› and π‘˜π‘šπ‘Žπ‘₯ such that π‘πœ– [π‘˜] = 0 for any π‘˜ > π‘˜π‘šπ‘Žπ‘₯ and for any π‘˜ <
π‘˜π‘šπ‘–π‘› . Only values of k π‘˜π‘šπ‘–π‘› ≤ π‘˜ ≤ π‘˜π‘šπ‘Žπ‘₯ are plotted.
4. If more points on the plot are desired, raise r to the mth power for some integer π‘š > 0, and use
π‘₯ = π‘˜/π‘š when plotting. This increases the number of points plotted by the factor m. A value of
π‘š = 2 is reasonable. It doubles the number of points plotted, and the cost is just one
multiplication per π‘Ÿπ‘–π‘— .
o ***
ο‚·
***
Download