<?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">JBiSE</journal-id><journal-title-group><journal-title>Journal of Biomedical Science and Engineering</journal-title></journal-title-group><issn pub-type="epub">1937-6871</issn><publisher><publisher-name>Scientific Research Publishing</publisher-name></publisher></journal-meta><article-meta><article-id pub-id-type="doi">10.4236/jbise.2012.53016</article-id><article-id pub-id-type="publisher-id">JBiSE-18101</article-id><article-categories><subj-group subj-group-type="heading"><subject>Articles</subject></subj-group><subj-group subj-group-type="Discipline-v2"><subject>Biomedical&amp;Life Sciences</subject></subj-group></article-categories><title-group><article-title>
 
 
  FPGA implementation of fractal patterns classifier for multiple cardiac arrhythmias detection
 
</article-title></title-group><contrib-group><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>hia-Hung</surname><given-names>Lin</given-names></name><xref ref-type="aff" rid="aff1"><sup>1</sup></xref><xref ref-type="corresp" rid="cor1"><sup>*</sup></xref></contrib><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Guo-Wei</surname><given-names>Lin</given-names></name><xref ref-type="aff" rid="aff1"><sup>1</sup></xref><xref ref-type="aff" rid="aff2"><sup>2</sup></xref></contrib></contrib-group><aff id="aff1"><addr-line>Department of Electrical Engineering, Kao-Yuan University, Kaohsiung City, Taiwan</addr-line></aff><aff id="aff2"><addr-line>Department of Electrical Engineering, Kao-Yuan University, Kaohsiung City, Taiwan Email: eechl53</addr-line></aff><author-notes><corresp id="cor1">* E-mail:<email>eechl53@cc.kyu.edu.tw(HL)</email>;</corresp></author-notes><pub-date pub-type="epub"><day>27</day><month>03</month><year>2012</year></pub-date><volume>05</volume><issue>03</issue><fpage>120</fpage><lpage>132</lpage><history><date date-type="received"><day>2</day>	<month>December</month>	<year>2011</year></date><date date-type="rev-recd"><day>30</day>	<month>December</month>	<year>2011</year>	</date><date date-type="accepted"><day>29</day>	<month>January</month>	<year>2012</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>
 
 
  This paper proposes the fractal patterns classifier for multiple cardiac arrhythmias on field-programmable gate array (FPGA) device. Fractal dimension transformation (FDT) is employed to adjoin the fractal features of QRS-complex, including the supraventricular ectopic beat, bundle branch ectopic beat, and ventricular ectopic beat. FDT with fractal dimension (FD) is addressed for constructing various symptomatic patterns, which can produce family functions and enhance features, making clear differences between normal and unhealthy subjects. The probabilistic neural network (PNN) is proposed for recognizing multiple cardiac arrhythmias. Numerical experiments verify the efficiency and higher accuracy with the software simulation in order to formulate the mathematical model logical circuits. FDT results in data self-similarity for the same arrhythmia category, the number of dataset requirement and PNN architecture can be reduced. Its simplified model can be easily embedded in the FPGA chip. The prototype classifier is tested using the MIT-BIH arrhythmia database, and the tests reveal its practicality for monitoring ECG signals.
 
</p></abstract><kwd-group><kwd>Field-Programmable Gate Array (FPGA); Fractal Dimension Transformation (FDT); Fractal Dimension (FD); Probabilistic Neural Network (PNN)</kwd></kwd-group></article-meta></front><body><sec id="s1"><title>1. INTRODUCTION</title><p>The electrocardiogram (ECG) signal can be measured non-invasively by placing electrodes on the body surface that provides information of myocardium electric activity and heart physiological function. An ECG signal shows as an almost periodic signal, and can reveal symptomatic information in the dysfunction duration. Currently, portable and stationary monitoring devices have been used on healthcare systems. Holter recorder is a well-known portable device and used to record the electrical activity with surface electrodes placed on the chest. However, its diagnostics is off-line analysis from the recorded data, and uses a cardiogram to identify arrhythmic types of the patients. Stationary monitors, such as dedicated or PCbased devices, have also been used on healthcare systems, which results in expensive solutions and limiting the portability [1,2]. Since telemedicine has also been used to acquire patient’s information, and has portable configuration for patient monitoring in remote non-clinical environments, it can be used in home healthcare, elder communities, and public place to acquire patient’s information. It has become a commonly used technology due to its low-cost, compactness, and short design-cycle. This remote device is an embedded hardware with FPGA, Bluetooth, RFID, and Zigbee. Via wireless transmission between the biosensor and supervision device, FPGA makes the ECG signal processing and sends digital signal to a remote monitor [<xref ref-type="bibr" rid="scirp.18101-ref3">3</xref>]. For a portable monitor design, FPGA device provides a promising solution to hardware implements.</p><p>FPGA device provides the flexibility and potential alternative to design hardware, including built-in DSP, analog and digital I/O, signal generation, communication, and specific functions for signal processing and controllers. It has been applied for digital filters design [4,5], signal analysis and classification [6,7], fault detection [<xref ref-type="bibr" rid="scirp.18101-ref8">8</xref>], and Fuzzy logic controller [<xref ref-type="bibr" rid="scirp.18101-ref9">9</xref>]. For signal analysis, transform methods have been used to extract features in the transform domain, such as fast Fourier transform (FFT) and wavelet transform (WT). However, the FFT technique is limited by the processing time, computational complexity, and the number of samples. The more samples, the more accurate parameters will be estimated. It will increase the memory requirement. WT can be chosen with a very desirable frequency and time characteristics, allowing the visualization with the short/broad window at the high/low frequencies. It is a dilated or constricted function by changing dilation and translation coefficients for feature extraction. WT process uses a several-structured filter bank to generalize several frequency bands containing decomposed signals [6,7]. Significant features are obtained at specific wavelet coefficients with a trial procedure of wavelet decomposition and experiences.</p><p>To overcome the drawbacks, an iterated function system (IFS) is proposed for modeling the non-linear interpolation function [10-14]. Its modification, the so-called FDT function, is simple in form and consists of sinusoiddal terms to the affine maps, making the model more flexible for processing irregular signals. FDT functions with FD are used to construct the fractal patterns from ECG signals in the time-domain, including the “Q-R Segment” and “R-S Segment”. The transform method results in data self-similarity and enhances the features for the same category. The PNN-based classifier is developed to perform the classification tasks. The performance of this method is presented and promising results are given for classification applications, such as the straightforward mathematical operation, flexible pattern mechanism, and high tolerance capability [15-17]. These algorithms can be easily programmed into the FPGA chip. The FPGA device has an inherent parallel architecture allowing designers to execute the multiple inputs and control loops simultaneously without slowing down the execution time and applications. From the test results, they appear to be computationally efficient and accurately recognize for patterns classification.</p></sec><sec id="s2"><title>2. MATHEMATICAL BACKGROUND</title><sec id="s2_1"><title>2.1. Fractal Dimension Transformation (FDT)</title><p>An IFS has been proposed for image compression and signal modeling, and is capable of producing family functions with different fractal dimensions (FDs). It is a finite set for contraction mappings, and has been used to create images, various waveforms and patterns for medical image classification and biomedical signal analysis [10,11]. IFS is implemented with similarity maps, and the resulting data are self-similar. The significant removal of redundancy is related to the self-similarity of natural patterns. In modeling the pattern of a function or data sequence x[t], t = 1, 2, 3, <img src="4-9101396\bcfe87f9-d457-4aeb-925e-436fe3e2a9a1.jpg" />, N, the pth interpolation map W<sub>p</sub>, p = 1, 2, 3, <img src="4-9101396\7bb8cb58-c803-40d2-ae96-7fe4c852dc24.jpg" />, P, can be presented as</p><disp-formula id="scirp.18101-formula102817"><label>(1)</label><graphic position="anchor" xlink:href="4-9101396\7824ac95-b56b-4c6d-bdb9-d64771a84fce.jpg"  xlink:type="simple"/></disp-formula><disp-formula id="scirp.18101-formula102818"><label>(2)</label><graphic position="anchor" xlink:href="4-9101396\59780db4-89c5-4bdb-bca7-1318517afda7.jpg"  xlink:type="simple"/></disp-formula><p>For each map, W<sub>p</sub> maps the data sequence x<sub>p</sub>[t] onto the subsequences with N<sub>p</sub> sampling data in the interval [N<sub>p</sub><sub>1</sub>, N<sub>p</sub><sub>2</sub>], and the maps can be constructed side by side. The remaining map parameters c<sub>p</sub>, d<sub>p</sub>, and f<sub>p</sub> can be solved by minimizing the sum of squared errors between the transformed data and the original data in the range of the pth map, and can be justified by the Collage Theorem [12,13]:</p><disp-formula id="scirp.18101-formula102819"><label>(3)</label><graphic position="anchor" xlink:href="4-9101396\76548e8e-4ce3-4c1b-9e5d-495414a81e47.jpg"  xlink:type="simple"/></disp-formula><p>where<img src="4-9101396\46773658-4e51-46a2-9fcd-460961e27b49.jpg" />, N<sub>p</sub><sub> </sub>= N<sub>p</sub><sub>2</sub> – N<sub>p</sub><sub>1</sub> + 1and N = N<sub>1</sub> + N<sub>2</sub> + N<sub>3</sub> + ⋯ + N<sub>p</sub> + ⋯ + N<sub>P</sub>. To improve the constraint, non-linear interpolation is used to adjoin the data among the interpolation points, which makes the model more flexible for processing non-linear and irregular signals. Non-linear terms as sinusoidal functions can be added to W<sub>p</sub>. The non-linear interpolation function can be represented as</p><disp-formula id="scirp.18101-formula102820"><label>(4)</label><graphic position="anchor" xlink:href="4-9101396\5b61da9c-d489-442e-8225-37766d07efea.jpg"  xlink:type="simple"/></disp-formula><p>A fractal pattern of ECG signal can be adjoined with several segments such as P-R interval, P-R segment, Q-R-S complex, S-T segment, or Q-T interval. The nonlinear function with fractal dimension (FD) will change the ECG signals into fractal patterns at different scale parameters. FD must be a parameter between 1 and 2 for processing one-dimensional signals. The non-linear interpolation function, FDT with FD, can be modified as</p><disp-formula id="scirp.18101-formula102821"><label>(5)</label><graphic position="anchor" xlink:href="4-9101396\1ef7553a-5810-4ec5-a13f-d338030b27fc.jpg"  xlink:type="simple"/></disp-formula><disp-formula id="scirp.18101-formula102822"><label>(6)</label><graphic position="anchor" xlink:href="4-9101396\52cafd93-ee01-42c6-bf30-80a94ab029c9.jpg"  xlink:type="simple"/></disp-formula><p>where D is a FD parameter (1 &lt; D &lt; 2). The remaining map parameters c<sub>p</sub>, d<sub>p</sub>, f<sub>p</sub>, and g<sub>p</sub> can be solved by</p><disp-formula id="scirp.18101-formula102823"><label>(7)</label><graphic position="anchor" xlink:href="4-9101396\d31a5e3d-3175-4376-a7de-617f13af9116.jpg"  xlink:type="simple"/></disp-formula><disp-formula id="scirp.18101-formula102824"><label>(8)</label><graphic position="anchor" xlink:href="4-9101396\036cf882-7e6e-482c-8102-131120f6f3ba.jpg"  xlink:type="simple"/></disp-formula><p>Apply sequence data x<sub>p </sub>[t] are the sampling data from the ECG signals. The fractal patterns can be reconstructed as [<xref ref-type="bibr" rid="scirp.18101-ref14">14</xref>]</p><disp-formula id="scirp.18101-formula102825"><label>(9)</label><graphic position="anchor" xlink:href="4-9101396\3eca6a83-f8f4-4568-8f7c-8c972de846a3.jpg"  xlink:type="simple"/></disp-formula><p>Equations (5) and (6) are used to extract the features from the ECG signals, and Equation (9) is utilized to construct the fractal patterns of cardiac arrhythmias.</p></sec><sec id="s2_2"><title>2.2. Artificial Neural Network (ANN)</title><p>The PNN consists of four layers, including the input layer, hidden layer, summation layer, and output layer, that has the parallelism distributed process, learning, and pattern recognition ability. In this study, we have considered the sequence data x<sub>p</sub>[t], t=1, 2, 3, <img src="4-9101396\54559901-c842-4388-a13e-1f5bd0118d54.jpg" />, N<sub>p</sub>, with P segments from the ECG signal, and a fractal pattern F can be represented as</p><disp-formula id="scirp.18101-formula102826"><label>(10)</label><graphic position="anchor" xlink:href="4-9101396\bfd85ee1-b422-4068-ba49-611e395a2281.jpg"  xlink:type="simple"/></disp-formula><p>The vector F can be also combined as F = [j<sub>11</sub>, j<sub>12</sub>, j<sub>13</sub>, <img src="4-9101396\9aa982cf-f1a4-4136-aadf-0c6ffe1a8918.jpg" />, j<sub>1N1</sub>|j<sub>21</sub>, j<sub>22</sub>, j<sub>23</sub>, <img src="4-9101396\b42d4f66-c51a-43ce-b298-662874b3963e.jpg" />, j<sub>2N2</sub>|…|j<sub>P</sub><sub>1</sub>, j<sub>P</sub><sub>2</sub>, j<sub>P</sub><sub>3</sub>, <img src="4-9101396\821c8ca3-17f0-4cc6-82a8-f9ce07dab0ae.jpg" />, j<sub>PNP</sub>] = [f<sub>1</sub>, f<sub>2</sub>, f<sub>3</sub>, <img src="4-9101396\0e8513bb-cd8a-4639-862e-ba3ace5c005e.jpg" />, f<sub>i</sub>, <img src="4-9101396\8fce6dc2-925c-47dd-b7b6-adc7f996b21e.jpg" />, f<sub>N</sub>], i = 1, 2, 3, <img src="4-9101396\46600fc4-3a4f-4529-ba6b-cfecc1eb3000.jpg" />, N, N = N<sub>1</sub><sub> </sub>+ N<sub>2</sub><sub> </sub>+ N<sub>3</sub><sub> </sub>+ <img src="4-9101396\a228a370-40ef-4ae4-903e-6814281cfb48.jpg" /> + N<sub>P</sub>, and each feature f<sub>i</sub> is connected to the input nodes of input layer. The number of input nodes is equal to the number N. The number of hidden nodes H<sub>k</sub> (k = 1, 2, 3, <img src="4-9101396\0e8787df-d7b5-4a50-8f2a-3dd72c339071.jpg" />, K) is equal to the number of training data, while the number of summation nodes S<sub>j</sub> and output nodes O<sub>j</sub> (j = 1, 2, 3, <img src="4-9101396\2cbd80f3-bf9d-4286-9b1e-f4f76ab030e2.jpg" />, m) equals to the types of cardiac arrhythmias. Therefore, its architecture can be easily to determined without any trial-and-error procedure. The weights <img src="4-9101396\bcb7894e-cfd8-4041-aa6b-61d6ed9db210.jpg" /> (connecting the kth hidden node and the ith input node) and <img src="4-9101396\b1b4095e-9157-4bf9-b574-7d7d30a7c122.jpg" /> (connecting the jth summation node and the kth hidden node) are determined by K input-output training pairs. In the hidden node, a normalized Gaussian function H<sub>k</sub> is applied to the Euclidean distance E<sub>d</sub> between the unknown pattern F and K training patterns<img src="4-9101396\92bdce1a-44d5-44a4-a886-e146f98c3cae.jpg" />. The function Hk is inversely proportional to the distance E<sub>d</sub>. If E<sub>d</sub> approaches zero, the unknown pattern F is similar to any training data. This concept can be used for analyzing pattern relations. The output O<sub>j</sub> can be computed by</p><disp-formula id="scirp.18101-formula102827"><label>(11)</label><graphic position="anchor" xlink:href="4-9101396\126fc1a5-f043-4b5c-9600-aac1582ef6fe.jpg"  xlink:type="simple"/></disp-formula><disp-formula id="scirp.18101-formula102828"><label>(12)</label><graphic position="anchor" xlink:href="4-9101396\b042408c-c4d7-4e89-8996-6ddd80e869a5.jpg"  xlink:type="simple"/></disp-formula><p>where the weights <img src="4-9101396\ec6b38a6-c909-4442-8892-884be5bb0710.jpg" /> are created by training data F(k) = [f<sub>1</sub>(k), f<sub>2</sub>(k), f<sub>3</sub>(k), <img src="4-9101396\a4e2e8b7-039e-4bed-93cc-adb97814ab96.jpg" />, f<sub>N</sub>(k)], k=1, 2, 3, <img src="4-9101396\4520f600-3fc9-444f-9e15-7fa2c9f12e50.jpg" />, k, <img src="4-9101396\11267c2b-717d-4af5-859d-be18bc3b5d47.jpg" />, K;</p><p>the weights <img src="4-9101396\6b4aa766-047b-45e0-b586-080a77347164.jpg" /> are the desired outputs associated with each stored pattern<img src="4-9101396\a4727eec-19ca-49cd-8f2c-d607712b2342.jpg" />. The value of <img src="4-9101396\994182e2-a530-4e98-923a-499ad9806e6b.jpg" /> will be equal to “1” or “0”. The value will be set to be “1” when the kth training data belonged to the jth class; s<sub>k</sub> is the smoothing parameter. Finally, the maximum output O<sub>max</sub> = [O<sub>1</sub>, O<sub>2</sub>, O<sub>3</sub>, <img src="4-9101396\43b3d468-9c91-4da9-a669-8c05a155e78f.jpg" />, O<sub>j</sub>, <img src="4-9101396\e93d88b4-de37-4773-81e1-619ffbb1d867.jpg" />, O<sub>m</sub>] indicates the type of cardiac arrhythmias.</p><p>In Equation (11), the smoothing parameter s<sub>1</sub> = s<sub>2</sub><sub> </sub>= s<sub>3</sub> = <img src="4-9101396\a538d6c1-4427-4f96-8c9f-afd3e44590a9.jpg" /> = s<sub>K</sub> = s (s &#185; 0) would refine the classification accuracy. The non-linear optimization method, such as gradient descent method, steepest descent method or Newton-Raphson method [15-17], is employed to adjust the parameter s and minimize the error with iteration procedures. It is intended to minimize the predicted squared error function<img src="4-9101396\0a66ef46-eb78-485d-8a09-bbf3c6da202e.jpg" />, and is updated by using pattern learning as</p><disp-formula id="scirp.18101-formula102829"><label>(13)</label><graphic position="anchor" xlink:href="4-9101396\3968260e-29f1-439b-8271-f48b3c177a60.jpg"  xlink:type="simple"/></disp-formula><p>where T<sub>j</sub> is the desired output for training pattern<img src="4-9101396\f80cbd40-58eb-4eaf-881a-bcbe674d960f.jpg" />, h is the learning rate, and q is the iteration number. The PNN based classifier has a dynamic and fast adaptation ability with continuity add-in or delete-off training data by automatically tuning the desired outputs and parameters s of hidden nodes.</p></sec></sec><sec id="s3"><title>3. FPGA IMPLEMENTATION</title><sec id="s3_1"><title>3.1. FPGA Development Environment</title><p>The field-programmable gate array (FPGA) is a semiconductor device that can be configured by the customer or the designer after manufacturing. It has the array architecture of logical elements, which can be used to design any logical functions to implement the given applications, such as an application-specific integrated circuit (ASIC). FPGA is also a programmability device, like programmable ROMs, and its programming techniques include antifuse-based device (Programmed Once) and static-memory-based device (Reprogrammed an Unlimited Number of Times). A typical FPGA consists of configurable logic blocks (CLB), input/output blocks (IOB), and programmable interconnects [4-9]. Each CLB can design the logical functions and latching data with combinational logic and sequential logic (AND, OR, Flipflops, and Registers). IOBs provide the interface between external pins and internal logics. Programmable intercomnects link the CLBs, I/O pins, and other resources on-chip memory through the routing paths, where interconnection among these blocks can be programmed by using hardware description language (HDL). Then, the designs can transferred the descriptions to gate-level netlists and dataflowflow on a chip. The prototype device can be implemented, tested, debugged, and modified as needed in a short design cycle.</p><p>Custom-design platforms have been provided to the FPGA implementation, such as Verilog, ModelSim, and Quartus II, and its development environment can simulate and verify the logic designs before initiating the compilation process [18-20]. However, HDL is a low level textbased programming language used for FPGA hardware design. Currently, LabVIEW extends the graphical programming tools to FPGA-based hardware. It has parallel execution, data acquisition, and floating-point arithmetic (Data Word Length: 8, 16, and 32 bit) functions to process signals on FPGA, and embeds specific functions for math, signal analysis/generation, comparison logic, linear/ non-linear control, analog and digital I/O, and timing. In this workspace, designers can quickly develop specific and reliable embedded systems containing FPGA-chips, real-time processor, and human machine interface (HMI). Graphical user interface for windows application has shorter design cycle, reprogrammability, and flexibility, which is much better than text-based languages. Under this development environment, we use saturation arithmetic functions to configure the combinational logics without prior complex digital design or electronic design automation (EDA) tools, and then to embed intelligent algorithms on the compact chip.</p></sec><sec id="s3_2"><title>3.2. FDT Implementation with FPGA</title><p>An ECG signal is measured with the modified limb lead II (ML II), and its typical waveform consists of the Pwave, QRS-complex, and T-wave. The QRS-complex provides distinct information in monitoring heartbeats, which can be used to discriminate the arrhythmic types. Centered on the R-wave peak, the QRS-complex can be divided into the Q-R segment and R-S segment (P = 2). For 50 sampling points (25 points before R-peak and 25 points after R-peak, N = N<sub>1</sub> + N<sub>2</sub> = 50), the remaining map parameters can be solved by Equations (7) and (8) in the Matlab workspace. By using FD between 1 and 2, the fractal patterns are constructed with Equations (5), (6), and (9). The FDTs with fractal dimension D = 1.6 is chosen in this study. For a QRS-complex of normal beat (Patient Number: MIT-103), related parameters c<sub>p</sub>, d<sub>p</sub>, f<sub>p</sub>, and g<sub>p</sub>, p = 1, 2, are computed as shown in <xref ref-type="table" rid="table1">Table 1</xref>. The coefficients of four terms are assigned to construct FDT functions with 4 remaining map parameters for Q-R segment and R-S segment, respectively. Following the multiplication and addition of the FDT, the fractal fractures can be computed. However, the logical blocks only support the four fundamental operations of arithmetic. In Equation (5), special function <img src="4-9101396\e1dff438-f65f-49cf-8efd-8ab9136f65a5.jpg" /> must be expanded a function into finite terms of Maclaurin series as</p><disp-formula id="scirp.18101-formula102830"><label>(14)</label><graphic position="anchor" xlink:href="4-9101396\0895e44a-999c-4ed7-9200-fee884cb3f05.jpg"  xlink:type="simple"/></disp-formula><p>where <img src="4-9101396\557fedaa-d44e-4421-84a9-8d47c0fa2e5f.jpg" /> and<img src="4-9101396\43281a0e-fec9-4a8e-bd47-4ff143eaa871.jpg" />, w and <img src="4-9101396\3709da69-6fb1-48a7-8ace-51bbba227355.jpg" /><sub> </sub>are the constant coefficients; R, r = 0, 1, 2, <img src="4-9101396\bb01d496-068a-45e9-8088-fe6e27ccf48d.jpg" />, R, is the number of series term (R = 10 in this study); z<sub>r</sub>, r = 0, 1, 2,<img src="4-9101396\55c6f7ed-bdec-4767-bc16-047800cdb49a.jpg" /> , R, represent the series coefficients and are also constant values. These coefficients can be computed and completed to verify the expanded function accuracy in the Matlab workspace, as shown in <xref ref-type="table" rid="table1">Table 1</xref>.</p><p><xref ref-type="fig" rid="fig1">Figure 1</xref> shows the structure of FDT logical block, in which 13 adders, 26 multipliers, and 17 constant coefficients are required to implement each FDT. Its CLB can design the function of feature extraction with combinational logical elements, and constant coefficients are stored in the memory elements. When each sampling data is applied to the FDT, each fractal feature is computed with multiplication and addition. This parallelism process completes the fractal pattern, and then each feature is applied to the PNN logical block.</p><table-wrap-group id="1"><label><xref ref-type="table" rid="table1">Table 1</xref></label><caption><title> Related data for FDTs</title></caption></table-wrap-group></sec><sec id="s3_3"><title>3.3. PNN Implementation with FPGA</title><p>In this section, we focus on classifier design and collection of the annotated ECG beats for PNN training data. The ECG signals are obtained from the MIT-BIH arrhythmia database, including patient numbers: 100, 103, 107, 109, 111, 118, 119, 124, 200, 202, 207, 209, 212, 213, 214, 217, 221, 231, 232, and 233 [<xref ref-type="bibr" rid="scirp.18101-ref21">21</xref>]. ECG signals have various morphological information and waveforms, which can be classified into seven categories, including normal beat (&#183;), premature ventricular contraction (V), atrial premature beat (A), right bundle branch block beat (R), left bundle branch block beat (L), paced beat (P), and fusion of paced and normal beat (F). Centered on the R-wave peak, the QRS-complex is divided into the Q-R segment and R-S segment. The FDTs with FD are utilized to construct various fractal patterns as shown in <xref ref-type="fig" rid="fig2">Figure 2</xref>. With data self-similarity, the preprocess resulting in the fractal patterns are similar for the same category, which can reduce the requirement of training data. The total number of fractal patterns are selected to be 1-, 6-, 2-, 3-, 4-, 4-, and 2-set data (K = 22) for the seven categories, respectively. These associated patterns could be expressed as weights<img src="4-9101396\954e09cc-cfd9-4bd3-84ab-d605e23500e0.jpg" />, k = 1, 2, 3, <img src="4-9101396\8434c013-2e58-4325-af9b-7341dab2803a.jpg" />, 22, i = 1, 2, 3, <img src="4-9101396\99139a5c-0a9a-4687-a9db-019e1bdd1f81.jpg" />, 50, between the input and hidden layer. The weights<img src="4-9101396\d7503732-3fe1-4408-97c4-b6cae0bac1ed.jpg" />, m = 1, 2, 3, <img src="4-9101396\8fd38ca8-4f6f-4005-a6b2-03d6b94bb003.jpg" />, 7, between the hidden and summation layer are encoded as binary values with signal “1” denoting the seven categories while the rest of the weights are zero. The smoothing parameter s was adjusted by using the gradient descent method with 22-set training data. The optimal parameter s = 0.10942 can be computed in the Matlab workspace. For the convergent condition (Squared Error &#163; 10<sup>–4</sup>), PNN converges to the nearest local minimum for less than five learning cycles. The related data of the PNN-based classifier are shown in <xref ref-type="table" rid="table2">Table 2</xref>.</p><sec id="s3_3_1"><title>3.3.1. Hidden Node CLB</title><p>In the hidden layer, a normalized Gaussian function must be also expanded into a Maclaurin series as</p><disp-formula id="scirp.18101-formula102831"><label>(15)</label><graphic position="anchor" xlink:href="4-9101396\2376e9b8-6152-407a-bbaa-0cf79c1427ce.jpg"  xlink:type="simple"/></disp-formula><p>where div is dividend, div = 1 in this sudy, <img src="4-9101396\8e5f6480-abda-4c7b-99f6-345d797d5563.jpg" />and<img src="4-9101396\96a772c6-6ecc-4c7c-9d72-06a03612284b.jpg" />, d is the constant coefficient, and R is the number of series term (R = 6 in this study); y<sub>r</sub> are the series coefficients. Related data can be computed and stored in the memory elements as shown in <xref ref-type="table" rid="table2">Table 2</xref>. The</p><p>Note: 1) No. 1: &#183;; 2) No. 2~7: V; 3) No. 8~9: A; 4) No. 10~12: L; 5) No. 13~16: R; 6) No. 17~20: P; 7) No. 21~22: F.</p><table-wrap-group id="2"><label><xref ref-type="table" rid="table2">Table 2</xref></label><caption><title> Related data for PNN-based classifier</title></caption></table-wrap-group><p>term d<img src="4-9101396\4665d576-0054-4858-89c5-92f7f2f2a135.jpg" /><sub> </sub>can be computed with multiplication and addition. Then input the results to Gaussian function H<sub>k</sub>. <xref ref-type="fig" rid="fig3">Figure 3</xref> shows that the structure of hidden-node CLB, 106 adders, 63 multipliers, 1 divider, and 59 constant coefficients are required to implement each node H<sub>k</sub>.</p></sec><sec id="s3_3_2"><title>3.3.2. Summation-Node and Output-Node CLBs</title><p>For seven categories, the weighting factors<img src="4-9101396\fc0219ce-a7a7-4983-877c-1de159751a9f.jpg" />, k = 1, 2, 3, <img src="4-9101396\550bb28b-985a-4871-9434-c0c1ff24c74b.jpg" />, 22, j = 1, 2, 3, <img src="4-9101396\f2448858-555c-49d0-b5ab-b6ff62a1cbe9.jpg" />, 7, are encoded as binary values with signal “1” belonging to category j and the rest of the factors are zero. The weighting matrix [<img src="4-9101396\64309234-d45c-4fa0-bd93-bb6d2ff2903c.jpg" />]<sub>7</sub><sub>&#180;</sub><sub>22</sub> is sparse with 22 nonzero elements. The numerator of Equation (12) is a matrix vector computation, where each output S<sub>j</sub> is formed by multiplying each of 22 outputs of the hidden node by one of 22 weighting factors, and can be presented as</p><disp-formula id="scirp.18101-formula102832"><label>(16)</label><graphic position="anchor" xlink:href="4-9101396\8426ad4b-5750-4e86-bba5-ea573b6f9a70.jpg"  xlink:type="simple"/></disp-formula><p>The number of addition and multiplication operations can be reduced leading to an increased speed in the arithmetic process. In the summation layer, the outputs of summation node H<sub>k</sub> are computed with 15 adders. For the same category, their outputs of hidden nodes are summed in the summation-node CLB. The implementation of output node O<sub>j</sub> would require 6 adders and 7 dividers, and can be presented as</p><disp-formula id="scirp.18101-formula102833"><label>(17)</label><graphic position="anchor" xlink:href="4-9101396\f1d434a4-b9fa-4508-9363-e3a2a02ef1e4.jpg"  xlink:type="simple"/></disp-formula><p>as shown by the denominator of Equation (12), the number of the addition operations can also be reduced. The structure of summation-node and output-node CLBs are shown in <xref ref-type="fig" rid="fig4">Figure 4</xref>.</p></sec></sec><sec id="s3_4"><title>3.4. Overall Structure of the Proposed Classifier</title><p>In <xref ref-type="fig" rid="fig5">Figure 5</xref>, the overall structure of the proposed classifier divides into three stages: 1) signal preprocessing; 2) fractal feature extraction; and 3) heartbeat recognition with PNNbased classifier. In the preprocessing stage, ECG signals are acquired by using the amplifier and filter. The bandpass filter is used to remove unwanted frequency components, which comprise supply line frequency interference (50 Hz/60 Hz), baseline wander, and muscle noises. Thus, these noises do not affect the performance of the proposed classifier. ECG records are composed by a modified limb lead II (ML II) sampled at 360 Hz. Then R-peak waves are detected by the Peak detection algorithm. It begins by scanning for local maxima in the absolute value of ECG data. For certain window, the search continues to look for next larger value. If this search finishes without finding a larger maximum, the current maximum is assigned as the R-peak wave. The averaging window was chosen to be roughly the width of a typical QRS-complex. This window is at least 150 ms wide to allow for the wide QRS-complexes produced by V-heartbeats [22-24]. Centered on the detected R-peak, 25 sampling data are acquired including both Q-R segment (140 ms) and R-S segment (140 ms), respectively. In the second stage, these sampling data are converted to digital form (Signed 8-bit, 16-bit, or 32-bit Length Data) and then sent directly to the FDTs. The FDT CLBs with parallelism process are used to extract features and construct the fractal pattern. Finally, the classifier module integrates hidden-node, summation-node, and outputnode CLBs for cardiac arrhythmias recognition.</p></sec></sec><sec id="s4"><title>4. EXPERIMENTAL RESULTS AND DISCUSSIONS</title><p>The FPGA implementation of the proposed classifier is applied to examine multiple cardiac arrhythmias. With MIT-BIH arrhythmias database, the records of patient</p><p>numbers 107, 118, 119, 200, 209, 211, 214, 217, and 231 are selected for testing. Tested ECG signals were generated using LabVIEW and Matlab software on a PC Pentium-IV, 3.0 GHz, 480 MB RAM. The design platform of SOPC-NIOS II EDA/SOPC series (NIOS II-EP2C35 Chip, 700 K system gates, EEPROM) was used in this study. The ECG signals have been digitized and bandpass filtered, thus lowand high-frequency noises appears smaller in amplitude [<xref ref-type="bibr" rid="scirp.18101-ref21">21</xref>]. Signal preprocesses, such as R-peak detection and QRS-complex extraction, can be performed in LabVIEW and Matlab software. It is important that the signals delivered to the FPGA must be digital type. As they are intrinsically digital formats (8-bit Format), they can be directly sent to FPGA design platform. For recorded (Training Data) and unrecorded data, the proposed classifier was tested with accuracy and computational efficiency, and compares with the results in FPGA module and Matlab workspace.</p><sec id="s4_1"><title>4.1. Comparison with the Fractal Patterns in FDT CLB and in Matlab Workspace</title><p>The proposed classifier is tested with the software simulation, in order to examine the implementation of FPGA modules. After the designated modules, the designated circuit can be programmed into the FPGA chip through the download cable. In feature extraction, fractal features are extracted by using 50 FDTs. Then 50 features are reconstructed into one fractal pattern. Since the FDT module is a simplified module, it is worth noting that each FDT function must be first examined before programming them into the FPGA chip. The average fractal patterns from the same category are obtained from the selected patients. For training data, fractal patterns are computed by FDT module and high-level programming language (HLPL) in the Matlab workspace, respectively. <xref ref-type="fig" rid="fig6">Figure 6</xref> shows the comparison fractal patterns in FDT module and Matlab workspace. The asterisk-line stands for the computed data with HLPL, and plus-sign-line is the computed data with FDT module Through cursory observation, nice inosculations can be seen between them, such as the fractal patterns of normal heartbeat, V-heartbeat, and F-heartbeat (Patient Numbers: 100, 107, 119, and 200). The differences are less than 0.2 as shown by the circle-line in <xref ref-type="fig" rid="fig6">Figure 6</xref>. This confirms that the proposed FDT module has high confidence of computation performance for reconstructing fractal patterns.</p></sec><sec id="s4_2"><title>4.2. Classification Tests</title><p>The learning performance of the proposed classifier was tested with 22-set training data. In the learning stage, the optimal parameter s can be computed in the Matlab workspace. The proposed method has a fast learning process with slight iteration for adjusting parameter s. It takes 0.195 seconds to classify the 22-set training data into 7 categories. Then this optimal value was used to determine the parameter s of 22 hidden-node modules and was obtain to minimize the misclassification errors. Under the optimal parameter, decision boundaries can become increasingly non-linear, the network approaches a nearest neighboring classifier. In the recalling stage, all outputs</p><p>approach the desired targets for 7 categories. The output values of the proposed classifier are shown in <xref ref-type="fig" rid="fig7">Figure 7</xref>. This confirms that the proposed classifier has nice learning performance.</p><p>Note: 1) No. 1: &#183;; 2) No. 2-7: V; 3) No. 8-9: A; 4) No. 10-12: L; 5) No. 13-16: R; 6) No. 17-20: P; 7) No. 21-22: F.</p><p>Clinical diagnostic subjects have multiple cardiac arrhythmias such as supraventricular ectopic beat, ventricular ectopic beat, bundle branch ectopic beat, fusion, and paced beats. For example, patient number 200 has normal heartbeats and V-heartbeats with annotation labels in 1.5 minute segment. Test results reveal that the accuracy is 94% as shown in <xref ref-type="table" rid="table3">Table 3</xref>. The processes recognized 38 V-heartbeats with 6 failures, and the expected sensitivity as the fraction of category V correctly classified is 84.2%, and the specificity for normal heartbeats is 100%. The results confirm that the major category is the premature ventricular contraction. Patient number 217 has V-heartbeats, P-heartbeats, and fusion heartbeats (F). As shown in <xref ref-type="table" rid="table3">Table 3</xref>, test results confirm that the major category is P. The processes recognized 94 P-heartbeats with 5 failures, the sensitivities for ectopic beats is 94.7%, and the accuracy is 95%. Through the experimental tests, the proposed classifier can also recognize multiple cardiac arrhythmias with good accuracy in the FPGA module.</p></sec><sec id="s4_3"><title>4.3. Discussion</title><p>In this study, the parameters of FDT functions have been directly computed by Collage theorem. Each FDT CLB has the same structure; it only assigns the segmented remaining map parameters and series coefficients. Most of them are repeatable uses. Owing to the enhancement in features by the FDT functions, the number of training data, data storage, and processing needs can be reduced. For classification applications, artificial neural network (ANN) has been presented for this study. However, it has some limitations including very slow learning process, need iteration for updating weights, and need to determine the network architecture such as the number of hidden layers and hidden nodes. The weights, input-layer to hidden-layer and hidden-layer to output-layer, are always nonzero values. This will increase the requirement of the addition and multiplication operations and memory storage. In addition, sigmoid activation functions of hidden and output nodes [<xref ref-type="bibr" rid="scirp.18101-ref25">25</xref>] are difficult to implement the CLB mod-</p><table-wrap-group id="3"><label><xref ref-type="table" rid="table3">Table 3</xref></label><caption><title> The results of multiple cardiac arrhythmias</title></caption></table-wrap-group><p>ules, including the arithmetic process and memory storage. The proposed classifier provides a promising way for implementing the portable bio-monitor and telemedicine.</p></sec></sec><sec id="s5"><title>5. CONCLUSION</title><p>A fractal-pattern classifier using FPGA for the realizetion of FDTs and PNN to recognize multiple cardiac arrhythmias was proposed. The FDT modules are employed to construct various fractal patterns, and make the difference between normal and unhealthy subjects. The PNN module is proposed for recognizing multiple cardiac arrhythmias. Numerical experiments have been conducted with MITBIH arrhythmia database. The proposed classifier has excellent computational efficiency, high accuracy, and flexibility for patterns recognition. Then programs were downloaded to the FPGA chip to integrate all the modules, real-time processing, compression, transmission and input/output. This prototype can be further integrated in telemedicine and portable non-invasive devices.</p></sec><sec id="s6"><title>6. ACKNOWLEDGEMENTS</title><p>This work is supported in part by the National Science Council of Taiwan under contract number: NSC97-2614-E-244-001, August 1 2008- July 31 2009.</p><p><img src="4-9101396.files/image003.gif" /> <img src="4-9101396.files/image004.gif" /></p></sec><sec id="s7"><title>REFERENCES</title></sec></body><back><ref-list><title>References</title><ref id="scirp.18101-ref1"><label>1</label><mixed-citation publication-type="other" xlink:type="simple">Hernandez, A.I., Mora, F., Villegas, M., Passariello, G. and Carrault, G. (2001) Real-time ECG transmission via internet for non-clinical applications. IEEE Transactions on Information Technology in Biomedicine, 5, 253-257. doi:10.1109/4233.945297</mixed-citation></ref><ref id="scirp.18101-ref2"><label>2</label><mixed-citation publication-type="other" xlink:type="simple"> 
Mori, Y., Yamauchi, M. and Kaneko, K. (2000) Design and implementation of the vital sign box for home healthcare. Proceeding of IEEE EMBS International Conference on Information Technology Applications in Biomedical, 104-108.</mixed-citation></ref><ref id="scirp.18101-ref3"><label>3</label><mixed-citation publication-type="other" xlink:type="simple"> 
Guillen, J.M., Millet, J. and Cebrian, A. (2001) Design of a prototype for dynamic electrocardiography monitoring using GSM technology: GSM-holter. Proceeding of 23rd Annual International Conference-IEEE/EMBS, Istanbul.</mixed-citation></ref><ref id="scirp.18101-ref4"><label>4</label><mixed-citation publication-type="other" xlink:type="simple"> 
Chris, D. and Fred, H. (2000) FPGA signal processing using sigma-delta modulation-innovative combinations of techiques and hardware for system designers. IEEE Signal Processing Magazine, January, pp. 20-35.</mixed-citation></ref><ref id="scirp.18101-ref5"><label>5</label><mixed-citation publication-type="other" xlink:type="simple"> 
Abbes, A. and Shrutisagar, C. (2007) Power modeling and efficient FPGA implementation of FHT for signal processing. IEEE Transactions on Very Large Scale Integration Systems, 15, 286-295. doi:10.1109/TVLSI.2007.893606</mixed-citation></ref><ref id="scirp.18101-ref6"><label>6</label><mixed-citation publication-type="other" xlink:type="simple"> 
Huang, S.-J., Yang, T.-M. and Huang, J.-T. (2002) FPGA realization of wavelet transform for detection of electric power system disturbances. IEEE Transactions on Power Delivery, 17, 388-394. doi:10.1109/61.997905</mixed-citation></ref><ref id="scirp.18101-ref7"><label>7</label><mixed-citation publication-type="other" xlink:type="simple"> 
Chilo, J. and Lindblad, T. (2008) Hardware implementation of ID wavelet transform on an FPGA for infrasound signal classification. IEEE Transactions on Nuclear Science, 55, 2008, pp. 9-13. doi:10.1109/TNS.2007.914322</mixed-citation></ref><ref id="scirp.18101-ref8"><label>8</label><mixed-citation publication-type="other" xlink:type="simple"> 
Tiwari, A. and Tomko, K.A. (2005) Enhanced reliability of finite-state machines in FPGA through efficient fault detection and correction. IEEE Transactions on Reliability, 54, 459-467. doi:10.1109/TR.2005.853438</mixed-citation></ref><ref id="scirp.18101-ref9"><label>9</label><mixed-citation publication-type="other" xlink:type="simple"> 
Kim, D. (2000) An implementation of fuzzy logic controller on the reconfigurable FPGA system. IEEE Transactions on Industrial Electronics, 47, 703-715. doi:10.1109/41.847911</mixed-citation></ref><ref id="scirp.18101-ref10"><label>10</label><mixed-citation publication-type="other" xlink:type="simple"> 
Chen, D.R., Chang, R.F., Chen, C.J., Ho, M.F., Kuo, S.J., Chen, S.T., Hung, S.J. and Woo, K.M. (2005) Classification of breast ultrasound images using fractal feature. Clinical Imaging, 29, pp. 235-245. doi:10.1016/j.clinimag.2004.11.024</mixed-citation></ref><ref id="scirp.18101-ref11"><label>11</label><mixed-citation publication-type="other" xlink:type="simple"> 
Katz, M. (1988) Fractals and the analysis of waveforms. Computing in Biology and Medicine, 18, 145-156. doi:10.1016/0010-4825(88)90041-8</mixed-citation></ref><ref id="scirp.18101-ref12"><label>12</label><mixed-citation publication-type="other" xlink:type="simple"> 
Mazel, D.S. and Hayes, M.H. (1992) Using iterated function systems to model discrete sequences. IEEE Transaction on Signal Processing, 40, 1724-1734. doi:10.1109/78.143444</mixed-citation></ref><ref id="scirp.18101-ref13"><label>13</label><mixed-citation publication-type="other" xlink:type="simple"> 
Vines, G. and Hayes, M.H. III (1993) Nonlinear address maps in a one-dimensional fractal model. IEEE Transactions on Signal Processing, 41, 1721-1724. doi:10.1109/78.212754</mixed-citation></ref><ref id="scirp.18101-ref14"><label>14</label><mixed-citation publication-type="other" xlink:type="simple"> 
Barnsley, M. (1986) Fractal functions and interpolation. Constructive Approximation, 2, 303-329. doi:10.1007/BF01893434</mixed-citation></ref><ref id="scirp.18101-ref15"><label>15</label><mixed-citation publication-type="other" xlink:type="simple"> 
Seng, T.L., Khalid, M. and Tusof, R. (2002) Adaptive GRNN for the modeling of dynamic plants. Proceedings of the 2002 IEEE International Symposium on Intelligent Control, Vancouver, 27-30 October 2002, 217-222.</mixed-citation></ref><ref id="scirp.18101-ref16"><label>16</label><mixed-citation publication-type="other" xlink:type="simple"> 
Lin, C.-H. and Wang, C.-H. (2006) Adaptive wavelet networks for power quality detection and discrimination in a power system. IEEE Transactions on Power Delivery, 21, 1106-1113. doi:10.1109/TPWRD.2006.874105</mixed-citation></ref><ref id="scirp.18101-ref17"><label>17</label><mixed-citation publication-type="other" xlink:type="simple"> 
Lin, C.-H. Du, Y.-C. and Chen, T.S. (2008) Adaptive wavelet network for multiple cardiac arrhythmias recognition. Expert Systems with Applications, 34, 2601-2611. doi:10.1016/j.eswa.2007.05.008</mixed-citation></ref><ref id="scirp.18101-ref18"><label>18</label><mixed-citation publication-type="other" xlink:type="simple"> 
Fawcett, B.K. (1994) Tools to speed FPGA development. IEEE Spectrum, 31, 88-94. doi:10.1109/6.328732</mixed-citation></ref><ref id="scirp.18101-ref19"><label>19</label><mixed-citation publication-type="other" xlink:type="simple"> 
Anderson, I.D.L. and Khalid, M.A.S. (2009) SC build: A computer-aided design tool for design space exploration of embedded central processing unit cores for field-programmable gate arrays. IET Computer Digital Techniques, 3, 24-32. doi:10.1049/iet-cdt:20070120</mixed-citation></ref><ref id="scirp.18101-ref20"><label>20</label><mixed-citation publication-type="other" xlink:type="simple"> 
Arshak, K., Jafer, E., McDonagh, D. and Ibala, C.S. (2007) Modeling and simulation of wireless sensor system for health monitoring using HDL and simulink mixed environment. IET Computer Digital Techniques, 1, 508-518. doi:10.1049/iet-cdt:20050206</mixed-citation></ref><ref id="scirp.18101-ref21"><label>21</label><mixed-citation publication-type="journal" xlink:type="simple"><name name-style="western"><surname> 
Goldberger</surname><given-names> A.L.</given-names></name>,<name name-style="western"><surname> Amaral</surname><given-names> L.A.N.</given-names></name>,<name name-style="western"><surname> Glass</surname><given-names> L.</given-names></name>,<name name-style="western"><surname> Hausdorff</surname><given-names> J.M.</given-names></name>,<name name-style="western"><surname> lvanov</surname><given-names> P.Ch.</given-names></name>,<name name-style="western"><surname> Mark</surname><given-names> R.G.</given-names></name>,<name name-style="western"><surname> Mietus</surname><given-names> J.E.</given-names></name>,<name name-style="western"><surname> Moody</surname><given-names> G.B.</given-names></name>,<name name-style="western"><surname> Peng</surname><given-names> C.K. and Stanley</given-names></name>,<name name-style="western"><surname> H.E. </surname><given-names>  </given-names></name>,<etal>et al</etal>. (<year>2000</year>)<article-title>PhysioBank, physio toolkit, and PhysioNet: Components of a new research resource for complex physiologic signals</article-title><source> Circulation</source><volume> 101</volume>,<fpage> e215</fpage>-<lpage>e220</lpage>.<pub-id pub-id-type="doi"></pub-id></mixed-citation></ref><ref id="scirp.18101-ref22"><label>22</label><mixed-citation publication-type="other" xlink:type="simple"> 
Urrusti, J.L. and Tompkins, W.J. (1993) Performance evaluation of an ECG QRS complex detection algorithm. Proceedings Annual International Conference of the IEEE Engineering in Medicine and Biology Society, San Diego, 28-31 October 1993, 800-801.</mixed-citation></ref><ref id="scirp.18101-ref23"><label>23</label><mixed-citation publication-type="other" xlink:type="simple"> 
Nambakhsh, M.S., Tavakoli, V. and Sahba, N. (2008) FPGA-core defibrillator using wavelet-fuzzy ECG arrhythmia classification. Proceeding of 30th Annual International IEEE EMBS Conference, Vancouver, 20-24 August 2008, 2673-2676.</mixed-citation></ref><ref id="scirp.18101-ref24"><label>24</label><mixed-citation publication-type="other" xlink:type="simple"> 
Shukla, A. and Macchiarulo, L. (2008) A fast and accurate FPGA based QRS detection system. Proceeding of 30th Annual International IEEE EMBS Conference, Vancouver, 20-24 August 2008, 4828-4831.</mixed-citation></ref><ref id="scirp.18101-ref25"><label>25</label><mixed-citation publication-type="other" xlink:type="simple"> 
Rzempoluck, E.J. (1998) Neural networks data analysis using SimulnetTM. Springer-Verlag Inc., New York. doi:10.1007/978-1-4612-1746-6</mixed-citation></ref></ref-list></back></article>