<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE article  PUBLIC "-//NLM//DTD Journal Publishing DTD v3.0 20080202//EN" "http://dtd.nlm.nih.gov/publishing/3.0/journalpublishing3.dtd"><article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" dtd-version="3.0" xml:lang="en" article-type="research article"><front><journal-meta><journal-id journal-id-type="publisher-id">JDAIP</journal-id><journal-title-group><journal-title>Journal of Data Analysis and Information Processing</journal-title></journal-title-group><issn pub-type="epub">2327-7211</issn><publisher><publisher-name>Scientific Research Publishing</publisher-name></publisher></journal-meta><article-meta><article-id pub-id-type="doi">10.4236/jdaip.2015.34013</article-id><article-id pub-id-type="publisher-id">JDAIP-61281</article-id><article-categories><subj-group subj-group-type="heading"><subject>Articles</subject></subj-group><subj-group subj-group-type="Discipline-v2"><subject>Computer Science&amp;Communications</subject><subject> Physics&amp;Mathematics</subject></subj-group></article-categories><title-group><article-title>
 
 
  A Super-High-Efficiency Algorithm for the Calculation of the Correlation Integral
 
</article-title></title-group><contrib-group><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>huping</surname><given-names>Gong</given-names></name><xref ref-type="aff" rid="aff1"><sub>1</sub></xref><xref ref-type="corresp" rid="cor1"><sup>*</sup></xref></contrib></contrib-group><aff id="aff1"><label>1</label><addr-line>School of Business and Administration, South China University of Technology, Guangzhou, China</addr-line></aff><author-notes><corresp id="cor1">* E-mail:<email>mezpgong@scut.edu.cn</email></corresp></author-notes><pub-date pub-type="epub"><day>02</day><month>11</month><year>2015</year></pub-date><volume>03</volume><issue>04</issue><fpage>128</fpage><lpage>135</lpage><history><date date-type="received"><day>11</day>	<month>September</month>	<year>2015</year></date><date date-type="rev-recd"><day>accepted</day>	<month>16</month>	<year>November</year>	</date><date date-type="accepted"><day>19</day>	<month>November</month>	<year>2015</year></date></history><permissions><copyright-statement>&#169; Copyright  2014 by authors and Scientific Research Publishing Inc. </copyright-statement><copyright-year>2014</copyright-year><license><license-p>This work is licensed under the Creative Commons Attribution International License (CC BY). http://creativecommons.org/licenses/by/4.0/</license-p></license></permissions><abstract><p>
 
 
  When the chaotic characteristics of manufacturing quality level are studied, it is not practical to use chaotic methods because of the low speed of calculating the correlation integral. The original algorithm used to calculate the correlation integral is studied after a computer hardware upgrade. The result is that calculation of the correlation integral can be sped up only by improving the algorithm. This is accomplished by changing the original algorithm in which a single distance threshold-related correlation integral is obtained from one traversal of all distances between different vectors to a high-efficiency algorithm in which all of the distance threshold-related correlation integrals are obtained from one traversal of all of the distances between different vectors. For a time series with 3000 data points, this high-efficiency algorithm offers a 3.7-fold increase in speed over the original algorithm. Further study of the high-efficiency algorithm leads to the development of a super-high-efficiency algorithm, which is accomplished by changing the original and high-efficiency algorithms, in which the add-one operation of the Heaviside function is executed n times, such that the execution of the add-one operation occurs only once. The super-high-efficiency algorithm results in increases in the calculation speed by up to 109 times compared with the high-efficiency algorithm and by approximately 404 times compared with the original algorithm. The calculation speed of the super-high-efficiency algorithm is suitable for practical use with the chaotic method.
 
</p></abstract><kwd-group><kwd>Super-High-Efficiency</kwd><kwd> Algorithm</kwd><kwd> Correlation Integral</kwd><kwd> Chaotic Time Series</kwd></kwd-group></article-meta></front><body><sec id="s1"><title>1. Introduction</title><p>The chaotic characteristics of manufacturing quality level using data containing 588 daily product defect fractions, which were obtained from the HZ company, had been studied [<xref ref-type="bibr" rid="scirp.61281-ref1">1</xref>] - [<xref ref-type="bibr" rid="scirp.61281-ref3">3</xref>] . Further, the manufacturing quality level was proven to be chaotic if the correlation dimension was fractional in a study that used the G-P algorithm [<xref ref-type="bibr" rid="scirp.61281-ref4">4</xref>] in the calculation of the correlation dimension.</p><p>In this study, the manufacturing quality level time series was first reconstructed as a multi-dimensional phase space, and then the distances between vectors in the reconstructed phase space were calculated under a certain embedded dimension. Next, the correlation integral was calculated according to the relationship between the distance value and distance threshold value of the vectors. Finally, the correlation dimension was determined by log-log coordinates between the correlation integral and the distance threshold value. The problem with this process was the amount of time wasted in calculating the correlation integral, which was a huge obstacle if research results were to be useful in actual practice. Thus, the process for calculating the correlation integral must be improved.</p><p>Improving the speed of calculation first required the computer speed to be accelerated. The computer we used initially had a P4 2.8-GHz CPU with 512 Mb of memory. With this configuration, a time series with 3000 data points that was constructed with the Lorenz system required almost 4 hours to calculate the correlation integral. We then used a new computer configured with a 2.8-GHz Core i5 2300 CPU with 2 Gb of memory. However, calculations on the new computer still took 50 minutes. Although this was a 4-5-fold decrease in calculation time, the improvement in calculation efficiency was still not high enough to apply this technology in practice. Clearly, the time spent in calculating the correlation integral was not related so much to the computer hardware configuration but more to the algorithm used in the calculations.</p><p>Therefore, we investigated both the algorithm for calculating the correlation integral and methods to improve its efficiency. The improved algorithm had to be workable in practice and was helpful in the application of chaotic time series analysis to quality control in practical manufacturing situations.</p></sec><sec id="s2"><title>2. G-P Algorithm</title><p>For a given time series<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-2870095x6.png" xlink:type="simple"/></inline-formula>, its reconstructed phase space with m dimension embedding is</p><p><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-2870095x7.png" xlink:type="simple"/></inline-formula>. The trajectory of the reconstructed vector in the</p><p>reconstructed phase space is separated exponentially. For two random points X<sub>i</sub> and X<sub>j</sub>, although the exponential separation will lead them to be irrelevant, they exist in the same attractor. The relevance of these points in the reconstructed phase space is measured by the correlation integral [<xref ref-type="bibr" rid="scirp.61281-ref4">4</xref>] - [<xref ref-type="bibr" rid="scirp.61281-ref6">6</xref>] :</p><disp-formula id="scirp.61281-formula1017"><label>(1)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/3-2870095x8.png"  xlink:type="simple"/></disp-formula><p>where <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-2870095x9.png" xlink:type="simple"/></inline-formula> is the Heaviside function:</p><disp-formula id="scirp.61281-formula1018"><label>(2)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/3-2870095x10.png"  xlink:type="simple"/></disp-formula><p>Formulae (1) and (2) show that the correlation integral is related to the distance threshold value r, and the relationship is given by:</p><disp-formula id="scirp.61281-formula1019"><label>(3)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/3-2870095x11.png"  xlink:type="simple"/></disp-formula><p>where <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-2870095x12.png" xlink:type="simple"/></inline-formula> is the correlation index, and its expression is:</p><disp-formula id="scirp.61281-formula1020"><label>(4)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/3-2870095x13.png"  xlink:type="simple"/></disp-formula><p>The correlation index <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-2870095x14.png" xlink:type="simple"/></inline-formula> is related not only to the distance threshold r but also to the embedded dimension m. <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-2870095x15.png" xlink:type="simple"/></inline-formula>increases gradually with m and then becomes saturated. The saturated correlation index <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-2870095x16.png" xlink:type="simple"/></inline-formula> is termed the correlation dimension D of the time series under study.</p></sec><sec id="s3"><title>3. Original Correlation Integral Algorithm</title><sec id="s3_1"><title>3.1. Range of the Distance Threshold</title><p>The range of the distance threshold r must be predetermined before calculating the correlation integral. A smaller or larger r causes the correlation integral results to be meaningless.</p><p>The procedure that determines the distance threshold value is as follows:</p><p>・ Among the distance values between different vectors, set the minimum distance value as R<sub>min</sub> and the maximum distance value as R<sub>max</sub>, and the interval [R<sub>min</sub>, R<sub>max</sub>] defines the distance range.</p><p>・ The distance thresholds are discrete values in the interval [R<sub>min</sub>, R<sub>max</sub>], and the incremental change between contiguous threshold values is Δr, which is defined as:</p><disp-formula id="scirp.61281-formula1021"><label>(5)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/3-2870095x17.png"  xlink:type="simple"/></disp-formula><p>Thus, there are C distance threshold values.</p></sec><sec id="s3_2"><title>3.2. Original Correlation Integral Algorithm</title><p>First, all of the distances between any pair of reconstructed vectors are calculated for a selected embedded dimension m, and the distances are saved as a two-dimensional array. According to formulae (1 - 2), the correlation integral is a function of the distance threshold value r in embedded dimension m. This means that one given r value corresponds to one certain correlation integral. Based on formulae (1 - 2), the correlation integral algorithm, termed the original correlation integral algorithm, is as follows:</p><p>・ First, set the distance threshold value r as R<sub>min</sub>, which is the minimum of interval [R<sub>min</sub>, R<sub>max</sub>].</p><p>・ Traversing the distance array that is calculated from the m dimensional reconstructed phase space, if the distance value d<sub>ij</sub> between the ith and the jth vector is less than r, the Heaviside function value <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-2870095x18.png" xlink:type="simple"/></inline-formula> adds one.</p><p>・ Calculate the correlation integral of distance threshold value r according to formula (1).</p><p>・ The distance threshold value adds Δr according to formula (5), and if the distance threshold value is still located within the interval [R<sub>min</sub>, R<sub>max</sub>], the calculation jumps to procedures b and c and calculates the correlation integral of the current distance threshold value. If the distance threshold value is greater than R<sub>max</sub>, the calculation finishes.</p><p>In this original algorithm, the calculating complexity is defined as:</p><disp-formula id="scirp.61281-formula1022"><label>(6)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/3-2870095x19.png"  xlink:type="simple"/></disp-formula><p>Here, t<sub>v</sub> is the time spent in one visit of one distance array unit, t<sub>a</sub> is the time spent in the operation of adding one, and t<sub>a</sub> and t<sub>v</sub> are decided by the hardware configuration of the computer used. T<sub>a</sub> is the frequency of operations performed to add one in each embedding, and mt is the largest embedding dimension.</p><p>This algorithm took almost 4 hours to calculate a correlation integral for a time series with 3000 data points and 1 to 13 dimensional embedding. Further, upgrading to the faster computer configuration was not an ad- equate solution, although the new computer increased the calculation speed by a factor of four. Thus, the algorithm for computing the correlation integral had to be improved to achieve an acceptable calculation time.</p></sec></sec><sec id="s4"><title>4. Improvement of the Correlation Integral Calculation</title><p>To improve the calculation time, we conducted an intense study of the original algorithm. Our investigation showed that the low efficiency of the original algorithm occurred because one traverse of the distances array obtains only one correlation integral of one certain distance threshold value. According to formula (5), there are C distance threshold values, so to obtain all of these correlation integral values must take C times to traverse the distance array. Because this is a two-dimensional array, a very long time is required to traverse the array.</p><p>From this analysis, the first improvement comes by determining whether the traverse times can be reduced, and furthermore, whether one single traverse of the distance value array will be adequate for the calculation of the correlation integral under a certain embedded reconstructed phase space.</p><sec id="s4_1"><title>4.1. First Improvement: A High-Efficiency Algorithm</title><p>If one traverse can obtain C correlation integrals under C distance threshold values, the calculating efficiency will be enhanced tremendously. Along these lines, the original algorithm was studied, and the following relationship between distances and the distance threshold value was found:</p><disp-formula id="scirp.61281-formula1023"><label>(7)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/3-2870095x20.png"  xlink:type="simple"/></disp-formula><p>where d<sub>ij</sub> denotes the distance between the ith and jth vectors, and r<sub>p</sub> and r<sub>q</sub> are the pth and qth distance threshold values. This relationship tells us that if d<sub>ij</sub> is less than r<sub>p</sub>, then d<sub>ij</sub> must be less than all r<sub>q</sub> that are equal to or greater than r<sub>p</sub>. This relationship is obvious because the distance threshold value is set as an incremental interval Δr in formula (5).</p><p>According to this relationship, when we are certain that the distance value d<sub>ij</sub> is less than one certain distance threshold value r<sub>p</sub>, it is not efficient to perform the add one operation only for the Heaviside function θ of r<sub>p</sub>. Rather, it will be much more efficient to perform the add one operation for all of the Heaviside functions θ of all r<sub>q</sub>:<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-2870095x21.png" xlink:type="simple"/></inline-formula>. This means that all of the correlation integrals under all threshold values will be obtained by a single traverse of the distance array.</p><p>According to this analysis, we improved the correlation integral calculation under a certain embedded dimension m. The improved high-efficiency algorithm is as follows:</p><p>・ Set all of the distance threshold values as r<sub>i</sub>: <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-2870095x22.png" xlink:type="simple"/></inline-formula>increasingly from R<sub>min</sub> to R<sub>max</sub>.</p><p>・ In all of the distances between the vectors under m dimensional embedding, set the first distance as the working distance d<sub>ij</sub> based on the sorting order of the distance array.</p><p>・ Compare d<sub>ij</sub> with r<sub>i</sub>: <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-2870095x23.png" xlink:type="simple"/></inline-formula>until d<sub>ij</sub> &gt; r<sub>p</sub> − 1 and d<sub>ij</sub> &lt; r<sub>p</sub>, and then add one to all of the Heaviside functions θ(x) for r<sub>q</sub>:<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-2870095x23.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-2870095x24.png" xlink:type="simple"/></inline-formula>.</p><p>・ Set the next distance value as the working distance d<sub>ij</sub> based on the sorting order of the distance array and return to processes c and d until all of the distance values are traversed.</p><p>・ Calculate the correlation integral of each distance threshold r<sub>i</sub>:<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-2870095x25.png" xlink:type="simple"/></inline-formula>.</p><p>The original correlation integral algorithm traverses the distance array once and calculates one correlation integral of one distance threshold; thus, the calculation of all of the correlation integrals of the distance thre- sholds leads to a traverse of the distance array of C times. However, the improved high-efficiency algorithm can obtain the correlation integrals of all of the distance thresholds with only one traverse of the distance array.</p><p>In this high-efficiency algorithm, the calculating complexity is defined as:</p><disp-formula id="scirp.61281-formula1024"><label>(8)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/3-2870095x26.png"  xlink:type="simple"/></disp-formula><p>The definitions of the parameters are the same as those in formula (6).</p></sec><sec id="s4_2"><title>4.2. Second Improvement: A Super-High-Efficiency Algorithm</title><p>Following a deeper analysis of the high-efficiency algorithm, we realized that in process c, every time we ensure that d<sub>ij</sub> &gt; r<sub>p</sub> − 1 and d<sub>ij</sub> &lt; r<sub>p</sub>, the add one operation must be performed for all of the Heaviside functions θ(x) for r<sub>q</sub>:<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-2870095x27.png" xlink:type="simple"/></inline-formula>. Thus, the number of single add one operations is C-p + 1 only in one unit visit of the distance array, but because the array has a large number of units, the number of add one operations is quite high. If the add one operation does not operate immediately but simply records the number of times until the end of the traverse, then the add one operation is performed for all Heaviside functions θ(x), and here, the addition operation is adding not one but the total number of recorded times of adding one. Furthermore, the addition operation can be performed for the Heaviside function θ(x) for all r<sub>q</sub>:<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-2870095x27.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-2870095x28.png" xlink:type="simple"/></inline-formula>.</p><p>From the foregoing analysis, a more efficient algorithm than the high-efficiency algorithm was developed, which we termed the super-high-efficiency algorithm. The procedure for each embedded dimension m is as follows:</p><p>・ Set all distance threshold values as r<sub>i</sub>: <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-2870095x29.png" xlink:type="simple"/></inline-formula>increasingly from R<sub>min</sub> to R<sub>max</sub>;</p><p>・ Set a zero array s[1:C] to store the number of add one operations for all of the distance thresholds;</p><p>・ In the distance array under m dimensional embedding, set the first distance as the working distance d<sub>ij</sub> based on the location of the distance in the array;</p><p>・ Compare d<sub>ij</sub> with r<sub>i</sub>: <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-2870095x30.png" xlink:type="simple"/></inline-formula>until d<sub>ij</sub> &gt; r<sub>p</sub> − 1 and d<sub>ij</sub> &lt; r<sub>p</sub>, and then add one to s[p];</p><p>・ Set the next distance unit in the array as the working distance d<sub>ij</sub> and return to processes d and e until all of the distance values are traversed;</p><p>・ According to the values of s[p], <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-2870095x31.png" xlink:type="simple"/></inline-formula>, perform s[p] add one operations for all Heaviside functions θ(x) of r<sub>q</sub>,<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-2870095x31.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-2870095x32.png" xlink:type="simple"/></inline-formula>;</p><p>・ Calculate the correlation integral of each distance threshold r<sub>i</sub>:<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-2870095x33.png" xlink:type="simple"/></inline-formula>.</p><p>The core thinking behind the super-high-efficiency algorithm is to reduce the n times of add one operations of the Heaviside function θ(x) of corresponding distance thresholds to an add n operation, which is why this algorithm is more efficient than the high-efficiency algorithm.</p><p>In the super-high-efficiency algorithm, the calculating complexity is defined as:</p><disp-formula id="scirp.61281-formula1025"><label>(9)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/3-2870095x34.png"  xlink:type="simple"/></disp-formula><p>The definitions of the parameters are the same as those in formula (6), and it is assumed that the add one operation takes the same amount of time as the add n operation.</p></sec></sec><sec id="s5"><title>5. Calculation Experiment</title><p>The effects of the original, the high-efficiency, and the super-high-efficiency algorithms need to be verified by calculation experiments.</p><sec id="s5_1"><title>5.1. Chaotic Systems and Parameter Selection</title><p>Time series produced from three classical chaotic systems and a product defect rate that comes from the HZ semiconductor company were selected as the data sources. The four data sources and their selected parameters are:</p><p>1) Logistic system</p><disp-formula id="scirp.61281-formula1026"><label>(10)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/3-2870095x35.png"  xlink:type="simple"/></disp-formula><p>This system appears as chaotic only if the parameter <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-2870095x36.png" xlink:type="simple"/></inline-formula> We set μ = 4 and then produced 3000 data points with this system that were used to construct a chaotic time series.</p><p>2) H&#233;non system</p><disp-formula id="scirp.61281-formula1027"><label>(11)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/3-2870095x37.png"  xlink:type="simple"/></disp-formula><p>Here, if the parameters a = 1.4 and b = 0.3 are set, the system appears chaotic. We produced 3000 data points with this chaotic system that were used to construct a chaotic time series.</p><p>3) Lorenz system</p><disp-formula id="scirp.61281-formula1028"><label>(12)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/3-2870095x38.png"  xlink:type="simple"/></disp-formula><p>With the Lorenz system parameters set as r = 28, σ = 10, and b = 8/3, this system appears chaotic. We produced 3000 data points with this chaotic system that were used to construct a chaotic time series.</p><p>4) HZ system</p><p>The data of 588 daily product defects of the HZ company from December 28, 2006 to July 20, 2009 were collected as the time series. A previous study has proven that this time series is chaotic [<xref ref-type="bibr" rid="scirp.61281-ref3">3</xref>] .</p></sec><sec id="s5_2"><title>5.2. Calculation Experiment and Results</title><p>In the calculation experiment, Matlab 2009a was selected as the software platform, and a computer with a 2.8- GHz Core i5 2300 CPU and 2 Gb of memory served as the hardware platform. The original, high-efficiency, and super-high-efficiency algorithms served as the working algorithms with the time series data coming from the Logistic, H&#233;non, Lorenz, and HZ systems. Due to restrictions imposed by the 2 Gb of memory, the calculation experiment could only be performed for 1 to 13 dimensional embedded time series constructed from the 3000 data points of the Logistic, H&#233;non, and Lorenz systems. Therefore, the embedding dimensions of the four time series were set uniformly as 1 to 13.</p><p>The calculation experiment showed that the correlation integrals were the same for each different algorithm used with the same system. This guaranteed the correctness of the different algorithms.</p><p>The efficiency of the different algorithms was measured by the timer of Matlab Version 2009a, and the results are shown in <xref ref-type="table" rid="table1">Table 1</xref>.</p></sec><sec id="s5_3"><title>5.3. Analysis of the Results</title><p>Based on the times shown in <xref ref-type="table" rid="table1">Table 1</xref>, three indices were defined as follows:</p><p>1) The efficiency of the first improvement</p><disp-formula id="scirp.61281-formula1029"><label>(13)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/3-2870095x39.png"  xlink:type="simple"/></disp-formula><p>2) The efficiency of the second improvement</p><disp-formula id="scirp.61281-formula1030"><label>(14)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/3-2870095x40.png"  xlink:type="simple"/></disp-formula><p>3) The efficiency of the overall improvement</p><disp-formula id="scirp.61281-formula1031"><label>(15)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/3-2870095x41.png"  xlink:type="simple"/></disp-formula><p>The effects of the algorithm improvements were calculated according to the data in <xref ref-type="table" rid="table1">Table 1</xref> and the application of formulae (13 - 15) and are shown in <xref ref-type="table" rid="table2">Table 2</xref>.</p><p>The following results can be observed from <xref ref-type="table" rid="table2">Table 2</xref>:</p><p>1) The effects of the LHL systems are of the same order of magnitude, and the effect of the HZ system is of a lower magnitude.</p><p>2) The main effect of the improvements comes from the second improvement.</p></sec></sec><sec id="s6"><title>6. Discussion</title><p>The time spent in the process of calculating the correlation integral differed among the original, high-efficiency, and super-high-efficiency algorithms. This difference was obtained by analyzing formulae (6), (8), and (9). Compared with the original algorithm, the high-efficiency algorithm performed the same number of add one operations, but the traverse time decreased by C-1 times. Compared with the high-efficiency algorithm, the traverse time of the super-high-efficiency algorithm was the same, but the number of add one operations performed decreased substantially, which is the source of the increased efficiency.</p><p>A more detailed analysis is given in <xref ref-type="table" rid="table3">Table 3</xref>.</p><table-wrap id="table1" ><label><xref ref-type="table" rid="table1">Table 1</xref></label><caption><title> Calculation time of the three algorithms for the four time series</title></caption><table><tbody><thead><tr><th align="center" valign="middle" >Algorithm</th><th align="center" valign="middle" >Logistic</th><th align="center" valign="middle" >H&#233;non</th><th align="center" valign="middle" >Lorenz</th><th align="center" valign="middle" >HZ</th></tr></thead><tr><td align="center" valign="middle" >TO (sec)</td><td align="center" valign="middle" >2748</td><td align="center" valign="middle" >2776.5</td><td align="center" valign="middle" >2990.6</td><td align="center" valign="middle" >103.89</td></tr><tr><td align="center" valign="middle" >TH (sec)</td><td align="center" valign="middle" >642.44</td><td align="center" valign="middle" >670.24</td><td align="center" valign="middle" >986.17</td><td align="center" valign="middle" >38.759</td></tr><tr><td align="center" valign="middle" >TS (sec)</td><td align="center" valign="middle" >7.00</td><td align="center" valign="middle" >7.00</td><td align="center" valign="middle" >7.09</td><td align="center" valign="middle" >0.385</td></tr></tbody></table></table-wrap><p>TO: time consumed by the original algorithm; TH: time consumed by the high-efficiency algorithm; TS: time consumed by the super-high-efficiency algorithm.</p><table-wrap id="table2" ><label><xref ref-type="table" rid="table2">Table 2</xref></label><caption><title> Effects of algorithm improvement</title></caption><table><tbody><thead><tr><th align="center" valign="middle" >Index</th><th align="center" valign="middle" >Logistic</th><th align="center" valign="middle" >H&#233;non</th><th align="center" valign="middle" >Lorenz</th><th align="center" valign="middle" >Average of the LHL systems</th><th align="center" valign="middle" >HZ</th></tr></thead><tr><td align="center" valign="middle" >E<sub>1</sub></td><td align="center" valign="middle" >4.277</td><td align="center" valign="middle" >4.143</td><td align="center" valign="middle" >3.033</td><td align="center" valign="middle" >3.7</td><td align="center" valign="middle" >2.680</td></tr><tr><td align="center" valign="middle" >E<sub>2</sub></td><td align="center" valign="middle" >91.777</td><td align="center" valign="middle" >95.749</td><td align="center" valign="middle" >139.093</td><td align="center" valign="middle" >109</td><td align="center" valign="middle" >100.673</td></tr><tr><td align="center" valign="middle" >E<sub>All</sub></td><td align="center" valign="middle" >392.571</td><td align="center" valign="middle" >396.643</td><td align="center" valign="middle" >421.805</td><td align="center" valign="middle" >404</td><td align="center" valign="middle" >269.844</td></tr></tbody></table></table-wrap><p>LHL: Logistic, H&#233;non and Lorenz systems.</p><table-wrap id="table3" ><label><xref ref-type="table" rid="table3">Table 3</xref></label><caption><title> Degree of complexity of the three algorithms in relation to N, C, and Ta</title></caption><table><tbody><thead><tr><th align="center" valign="middle" >Algorithm</th><th align="center" valign="middle" >N</th><th align="center" valign="middle" >C</th><th align="center" valign="middle" >Ta</th></tr></thead><tr><td align="center" valign="middle" >Original</td><td align="center" valign="middle" >√</td><td align="center" valign="middle" >√</td><td align="center" valign="middle" >√</td></tr><tr><td align="center" valign="middle" >High-efficiency</td><td align="center" valign="middle" >√</td><td align="center" valign="middle" >&#215;</td><td align="center" valign="middle" >√</td></tr><tr><td align="center" valign="middle" >Super-high-efficiency</td><td align="center" valign="middle" >√</td><td align="center" valign="middle" >√</td><td align="center" valign="middle" >&#215;</td></tr></tbody></table></table-wrap><p>Here, the time complexity of the three algorithms depends entirely on the number of data points N, so time series of different lengths cannot be compared with one other. Because the time series scale comprises 3000 data points in each of the Logistic, H&#233;non, and Lorenz systems, these systems are comparable in calculating time complexity. The HZ system cannot be compared with these three systems because it used only 588 data points.</p><p>Ta is the number of times the add one operation was performed in both the original and high-efficiency algorithms, and depends on the distribution of the distance values and the distance threshold interval number C. Different systems have different distance distributions, so different systems will have different values of Ta. This is why different systems with the same data length and same C value have different calculation times.</p><p>C is the distance threshold interval number. Although the high-efficiency algorithm is not directly related to C, it is indirectly related to C through Ta. Therefore, the value of C can affect the time complexity in all three algorithms.</p><p>We know from <xref ref-type="table" rid="table2">Table 2</xref> that the super-high-efficiency algorithm can produce an approximately 400-fold improvement in calculation speed in a time series with 3000 data points. Based on the analysis in <xref ref-type="table" rid="table2">Table 2</xref>, three conclusions are obtained:</p><p>1) The effect of the first improvement was to increase the calculation speed by only 3.7 times that of the original algorithm for a time series with 3000 data points. This effect results from a change in the algorithm in which the C times traversing of the distance array is reduced to one time.</p><p>2) The effect of the second improvement was to increase the calculation speed by about 109 times that of the high-efficiency algorithm. This effect comes from a change to the algorithm in which the performance of the add one operation n times is reduced to the performance of the operation only once.</p><p>3) Compared with the original algorithm, the calculation efficiency of the super-high-efficiency algorithm was increased by about 404 fold for a time series with 3000 data points.</p></sec><sec id="s7"><title>7. Conclusions</title><p>The super-high-efficiency algorithm for the calculation of the correlation integral produced an approximately 400-fold reduction in calculation time. This effect was due to a reduction in both the traverse time of the distance array from C times to once, and in the number of add one operations performed to a single add operation.</p><p>The super-high-efficiency algorithm decreased the calculation speed from almost 1 hour (approximately 2800 seconds) to 7 seconds for a time series with 3000 data points. This 7-second speed was an acceptable calculation speed that rendered chaotic time series analysis usable in practice.</p></sec><sec id="s8"><title>Acknowledgements</title><p>This paper is funded by the national nature science fund of China (51465020); and scientific research project (social science) of the special fund of the subject and professional building of institution of higher learning in Guangdong province in 2013 (2013WYXM0006) And the soft science research plan of Guangdong province (2013B070206017).</p></sec><sec id="s9"><title>Cite this paper</title><p>Zhuping Gong, (2015) A Super-High-Efficiency Algorithm for the Calculation of the Correlation Integral. Journal of Data Analysis and Information Processing,03,128-135. doi: 10.4236/jdaip.2015.34013</p></sec></body><back><ref-list><title>References</title><ref id="scirp.61281-ref1"><label>1</label><mixed-citation publication-type="journal" xlink:type="simple"><name name-style="western"><surname>Gong</surname><given-names> Z.P. </given-names></name>,<etal>et al</etal>. (<year>2010</year>)<article-title>The Calculating Method of the Average Period of Chaotic Time Series</article-title><source> Systems Engineering</source><volume> 28</volume>,<fpage> 111</fpage>-<lpage>113</lpage>.<pub-id pub-id-type="doi"></pub-id></mixed-citation></ref><ref id="scirp.61281-ref2"><label>2</label><mixed-citation publication-type="journal" xlink:type="simple"><name name-style="western"><surname>Gong</surname><given-names> Z.P. </given-names></name>,<etal>et al</etal>. (<year>2011</year>)<article-title>Comparison of the Calculating Method of Delay Time in the Reconstructed Phase Space of Manufacturing Quality Information System</article-title><source> Systems Engineering</source><volume> 29</volume>,<fpage> 81</fpage>-<lpage>85</lpage>.<pub-id pub-id-type="doi"></pub-id></mixed-citation></ref><ref id="scirp.61281-ref3"><label>3</label><mixed-citation publication-type="journal" xlink:type="simple"><name name-style="western"><surname>Gong</surname><given-names> Z.P. </given-names></name>,<etal>et al</etal>. (<year>2012</year>)<article-title>The Chaotic Characteristic of the Variation of Manufacturing Quality Level Based on Time Series Analysis</article-title><source> Systems Engineering</source><volume> 30</volume>,<fpage> 38</fpage>-<lpage>42</lpage>.<pub-id pub-id-type="doi"></pub-id></mixed-citation></ref><ref id="scirp.61281-ref4"><label>4</label><mixed-citation publication-type="other" xlink:type="simple">Grassberger, P. and Procaccia, I. (1983) Measuring the Strangeness of Strange Attractors. Physica D: Nonlinear Phenomena, 9, 189-208. http://dx.doi.org/10.1016/0167-2789(83)90298-1</mixed-citation></ref><ref id="scirp.61281-ref5"><label>5</label><mixed-citation publication-type="other" xlink:type="simple">Kantz, H. and Schreiber, T. (1997) Nonlinear Time Series Analysis. Cambridge University Press, Cambridge.</mixed-citation></ref><ref id="scirp.61281-ref6"><label>6</label><mixed-citation publication-type="other" xlink:type="simple">Kim, H.S., Eykholt, R. and Salas, J.D. (1999) Nonlinear Dynamics, Delay Times, and Embedding Windows. Physica D: Nonlinear Phenomena, 127, 48-60. http://dx.doi.org/10.1016/S0167-2789(98)00240-1</mixed-citation></ref></ref-list></back></article>