<?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">IJCNS</journal-id><journal-title-group><journal-title>International Journal of Communications, Network and System Sciences</journal-title></journal-title-group><issn pub-type="epub">1913-3715</issn><publisher><publisher-name>Scientific Research Publishing</publisher-name></publisher></journal-meta><article-meta><article-id pub-id-type="doi">10.4236/ijcns.2017.105B010</article-id><article-id pub-id-type="publisher-id">IJCNS-76547</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></subj-group></article-categories><title-group><article-title>
 
 
  Design of Fading Channel Simulator Based on IIR Filter Using Genetic Algorithm
 
</article-title></title-group><contrib-group><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Haofeng</surname><given-names>Wang</given-names></name><xref ref-type="aff" rid="aff1"><sup>1</sup></xref></contrib><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Siwei</surname><given-names>Du</given-names></name><xref ref-type="aff" rid="aff1"><sup>1</sup></xref></contrib><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Ning</surname><given-names>Guan</given-names></name><xref ref-type="aff" rid="aff1"><sup>1</sup></xref></contrib></contrib-group><aff id="aff1"><addr-line>School of Information and Electronics, Beijing Institute of Technology, Beijing, China</addr-line></aff><pub-date pub-type="epub"><day>26</day><month>05</month><year>2017</year></pub-date><volume>10</volume><issue>05</issue><fpage>105</fpage><lpage>115</lpage><history><date date-type="received"><day>March</day>	<month>12,</month>	<year>2017</year></date><date date-type="rev-recd"><day>Accepted:</day>	<month>May</month>	<year>23,</year>	</date><date date-type="accepted"><day>May</day>	<month>26,</month>	<year>2017</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 article designs a Rayleigh fading channel simulator using IIR filter (called Doppler filter), which is used to approximate the Jakes Doppler spectrum. We mainly focus on the design of Doppler filter and model it as an optimization problem. Non-convexity of the problem is proved in this paper and genetic algorithm (GA) is used to optimize it, which has never been used before in this area. Simulation result shows that GA converges at the solution corresponding to very accurate approximation of Jakes PSD. Finally, several statistical characteristics of the simulator are verified, including correlation functions and level-crossing rate (LCR), all of which match the theoretical predictions pretty well. 
  
 
</p></abstract><kwd-group><kwd>Channel Simulator</kwd><kwd> Genetic Algorithm</kwd><kwd> Jakes</kwd><kwd> Biquad</kwd><kwd> IIR</kwd></kwd-group></article-meta></front><body><sec id="s1"><title>1. Introduction</title><p>Channel simulator is usually used in laboratory to verify system performance, which is convenient and efficient. This article designs an accurate and highly efficient channel simulator to produce fading process<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x2.png" xlink:type="simple"/></inline-formula>. Here <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x3.png" xlink:type="simple"/></inline-formula> is a complex Gaussian random process whose amplitude <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x4.png" xlink:type="simple"/></inline-formula> is a Rayleigh process, used to characterize the Rayleigh fading channel.</p><p>According to [<xref ref-type="bibr" rid="scirp.76547-ref1">1</xref>], when receiver moves relatively to the transmitter in a uniform scattering environment, Doppler shift will occur, which makes correlation functions of <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x5.png" xlink:type="simple"/></inline-formula> satisfy:</p><disp-formula id="scirp.76547-formula70"><label>(1)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/76547x6.png"  xlink:type="simple"/></disp-formula><p>where <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x7.png" xlink:type="simple"/></inline-formula> is the maximum Doppler frequency. <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x8.png" xlink:type="simple"/></inline-formula>and <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x9.png" xlink:type="simple"/></inline-formula> are the real and imaginary parts of <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x10.png" xlink:type="simple"/></inline-formula> respectively and they are independent. <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x11.png" xlink:type="simple"/></inline-formula>is the zero-order Bessel function of the first kind and its Fourier transform (2) is the power spectral density (PSD) of<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x12.png" xlink:type="simple"/></inline-formula>, which is called the Jakes Doppler spectrum [<xref ref-type="bibr" rid="scirp.76547-ref1">1</xref>].</p><disp-formula id="scirp.76547-formula71"><label>(2)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/76547x13.png"  xlink:type="simple"/></disp-formula><p>Channel simulator is designed to generate the fading process <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x14.png" xlink:type="simple"/></inline-formula> whose correlation functions and PSD satisfy (1) and (2) respectively. In the open literature, two methods have been proposed to design the simulator.</p><p>The first method, called “the sum of sinusoids”, was first proposed by Jakes [<xref ref-type="bibr" rid="scirp.76547-ref2">2</xref>], where a number of sine waves were summed up to simulate the fading process. Though the method is simple and easy to be implemented, fading process generated by this method lacks of randomness and some of its high order statistic characteristics are difficult to be consistent with theoretical ones [<xref ref-type="bibr" rid="scirp.76547-ref3">3</xref>].</p><p>The second method is to filter noise, where complex white Gaussian noises pass through a filter to generate the fading process. This filter, which we call Doppler filter, can be implemented by both FIR [<xref ref-type="bibr" rid="scirp.76547-ref4">4</xref>] and IIR filter [<xref ref-type="bibr" rid="scirp.76547-ref5">5</xref>]. Since the transition band is very steep in Jakes PSD (2), if using FIR filter to approximate it accurately, filter order needs to be high, which is expensive in terms of hardware resources. The IIR filter, however, can achieve excellent approximation with considerably low order.</p><p>Reference [<xref ref-type="bibr" rid="scirp.76547-ref5">5</xref>] proposed a simulator structure consisting of an IIR filter and an interpolator. It calculated coefficients of IIR filter using ellipsoid algorithm (EA) [<xref ref-type="bibr" rid="scirp.76547-ref6">6</xref>]. To keep the filter stable, any pole gone out of the unit circle in iterations would be reflected back. This makes the iteration start from a new point, like random searching.</p><p>Reference [<xref ref-type="bibr" rid="scirp.76547-ref7">7</xref>] [<xref ref-type="bibr" rid="scirp.76547-ref8">8</xref>] also used EA but proposed a barrier function to constrain poles lying inside the unit circle. However, the convergence will be affected by the starting point, because non-convexity of the problem. To the best of my knowledge, previous articles used cascaded low order IIR filter only mentioned the non-convexity of their objective functions, however, without proving.</p><p>Based on the review above, this article realizes a channel simulator proposed in [<xref ref-type="bibr" rid="scirp.76547-ref5">5</xref>] using different algorithm. We focus on the design of Doppler filter inside it, which is actually an IIR filter fitting problem. Non-convexity of the problem is proved for the first time and genetic algorithm is used to solve it, which is a kind of global optimization method and performs well in solving non-convex problems.</p><p>This paper is organized as follows. Section 2 introduces the structure of the channel simulator and defines the optimization problem to design the Doppler filter. Section 3 uses genetic algorithm to solve the problem and section 4 testifies correlation functions and LCR of the fading process generated. Finally, Section 5 concludes the paper.</p><p>Notation: The following notations are used throughout this paper. Boldface lowercase letter denotes vectors. Operator <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x15.png" xlink:type="simple"/></inline-formula> denotes the absolute value and <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x16.png" xlink:type="simple"/></inline-formula> represents Euclidean norm of vector<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x17.png" xlink:type="simple"/></inline-formula>. The superscript <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x18.png" xlink:type="simple"/></inline-formula> and <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x19.png" xlink:type="simple"/></inline-formula> denote complex conjugation and transposition respectively.</p></sec><sec id="s2"><title>2. Channel Simulator</title><sec id="s2_1"><title>2.1. Structure of the Simulator</title><p><xref ref-type="fig" rid="fig1">Figure 1</xref> shows the structure of the channel simulator used in this paper, which consists of three parts. Noise generator produces complex white Gaussian noise. Doppler filter filters white noise to generate correlated noise with its PSD complying with Jakes PSD. Interpolator makes Doppler rate of the fading process output satisfy the requirement of the physical channel. The Doppler rate is defined as<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x20.png" xlink:type="simple"/></inline-formula>, where <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x20.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x21.png" xlink:type="simple"/></inline-formula> is the sampling rate of fading process <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x20.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x21.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x22.png" xlink:type="simple"/></inline-formula> [<xref ref-type="bibr" rid="scirp.76547-ref5">5</xref>].</p><p>The <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x23.png" xlink:type="simple"/></inline-formula> value at the Doppler filter usually takes 0.2. When implemented, Doppler filter remains unchanged and interpolation factor <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x23.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x24.png" xlink:type="simple"/></inline-formula> of the interpolator is changed to adjust <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x23.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x24.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x25.png" xlink:type="simple"/></inline-formula> at the output:<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x23.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x24.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x25.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x26.png" xlink:type="simple"/></inline-formula>. This article will focus mainly on the design of the Doppler filter next.</p><p>One important consideration in designing Doppler filter is to ensure the stability. Generally, the larger the filter order is, the more difficult to keep it stable. On account of this, a good choice is to use the cascaded low order IIR sections as the Doppler filter. Except for being easy to be stable, this structure has additional advantage that is less sensitive to quantization error compared with high order IIR filter.</p><p>Formula (3) shows the system function of the traditional biquad IIR filter, where a, b, c, d are real-valued optimization variables. Reference [<xref ref-type="bibr" rid="scirp.76547-ref9">9</xref>] studied the stable condition of this biquad, which was called the “Triangle Stability Region” but not intuitive.</p><disp-formula id="scirp.76547-formula72"><label>(3)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/76547x27.png"  xlink:type="simple"/></disp-formula><p>We factorize its numerator and denominator, writing it into the form of conjugate poles and zeros (4), where zr, zi, pr and pi are real-valued optimization variables, representing the real and imaginary parts of zero and pole respectively.</p><disp-formula id="scirp.76547-formula73"><label>(4)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/76547x28.png"  xlink:type="simple"/></disp-formula><p>This Second-Order Section (SOS) is inherently stable, as long as all poles are strictly inside the unit circle. When implementing in a physical system, restore</p><fig id="fig1"  position="float"><label><xref ref-type="fig" rid="fig1">Figure 1</xref></label><caption><title> Structure of the channel simulator</title></caption><graphic mimetype="image"   position="float"  xlink:type="simple"  xlink:href="http://html.scirp.org/file/76547x29.png"/></fig><p>the conjugate form into its traditional biquad form.</p><disp-formula id="scirp.76547-formula74"><label>(5)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/76547x30.png"  xlink:type="simple"/></disp-formula><p>Usually, multiple of SOSs need to be cascaded to approximate the objective response. Assuming we use <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x31.png" xlink:type="simple"/></inline-formula> SOSs, and uniformly sample variable <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x31.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x32.png" xlink:type="simple"/></inline-formula> into <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x31.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x32.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x33.png" xlink:type="simple"/></inline-formula> points points along the unit circle: <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x31.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x32.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x33.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x34.png" xlink:type="simple"/></inline-formula>(usually M = 500), to get the frequency response of Doppler filter after frequency sampling:</p><disp-formula id="scirp.76547-formula75"><label>(6)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/76547x35.png"  xlink:type="simple"/></disp-formula><p>wherein <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x36.png" xlink:type="simple"/></inline-formula> is the scaling factor and <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x36.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x37.png" xlink:type="simple"/></inline-formula> is a vector containing all optimization variables:</p><disp-formula id="scirp.76547-formula76"><label>(7)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/76547x38.png"  xlink:type="simple"/></disp-formula></sec><sec id="s2_2"><title>2.2. Optimization Model</title><p>Ideal amplitude response of Doppler filter is the square root of Jakes PSD (2) but cannot be realized with a physical system according to Paley-Winner theorem, because at the frequency point <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x39.png" xlink:type="simple"/></inline-formula> the amplitude of Jakes PSD changes from <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x39.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x40.png" xlink:type="simple"/></inline-formula> into zero immediately. For this reason, [<xref ref-type="bibr" rid="scirp.76547-ref4">4</xref>] gives a modified objective response that can be achieved by a stable system. Referring to it herein, this article uses (8) as the objective amplitude response, where <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x39.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x40.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x41.png" xlink:type="simple"/></inline-formula> is the index of frequency point<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x39.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x40.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x41.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x42.png" xlink:type="simple"/></inline-formula>.</p><disp-formula id="scirp.76547-formula77"><label>(8)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/76547x43.png"  xlink:type="simple"/></disp-formula><p>In the formula above, parameter SA denotes the stopband attenuation relative to the passband. Objective function could be defined as:</p><disp-formula id="scirp.76547-formula78"><label>(9)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/76547x44.png"  xlink:type="simple"/></disp-formula><p>where <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x45.png" xlink:type="simple"/></inline-formula> is a weight vector to emphasize the error minimization for certain frequency band [<xref ref-type="bibr" rid="scirp.76547-ref7">7</xref>]. The complete optimization problem is:</p><disp-formula id="scirp.76547-formula79"><label>(10)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/76547x46.png"  xlink:type="simple"/></disp-formula><p>wherein constraint <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x47.png" xlink:type="simple"/></inline-formula> is an empirical condition. <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x47.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x48.png" xlink:type="simple"/></inline-formula>limits poles of the <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x47.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x48.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x49.png" xlink:type="simple"/></inline-formula> SOS located inside the unit circle to keep Doppler filter stable. Constraint <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x47.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x48.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x49.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x50.png" xlink:type="simple"/></inline-formula> confines zeros lying inside the unit circle too, so that the Doppler filter will be a minimum phase system and have the minimum group delay.</p><p>Non-convexity of (10) confirms only if one point <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x51.png" xlink:type="simple"/></inline-formula> exists in the feasible region, around which the objective function is not convex. We will find such <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x51.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x52.png" xlink:type="simple"/></inline-formula> next.</p><p>According to the first-order conditions of convexity, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x53.png" xlink:type="simple"/></inline-formula>is convex if and only if the feasible region (<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x53.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x54.png" xlink:type="simple"/></inline-formula>) is convex and (11) holds for all <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x53.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x54.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x55.png" xlink:type="simple"/></inline-formula> [<xref ref-type="bibr" rid="scirp.76547-ref10">10</xref>].</p><disp-formula id="scirp.76547-formula80"><label>(11)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/76547x56.png"  xlink:type="simple"/></disp-formula><p>Here <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x57.png" xlink:type="simple"/></inline-formula> denotes the gradient of <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x57.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x58.png" xlink:type="simple"/></inline-formula> respect to<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x57.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x58.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x59.png" xlink:type="simple"/></inline-formula>, and <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x57.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x58.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x59.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x60.png" xlink:type="simple"/></inline-formula> is the incremental step of<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x57.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x58.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x59.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x60.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x61.png" xlink:type="simple"/></inline-formula>.</p><p>For problem (10), <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x62.png" xlink:type="simple"/></inline-formula>is obviously a convex set. To show the non-con- vexity of<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x62.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x63.png" xlink:type="simple"/></inline-formula>, we randomly generate <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x62.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x63.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x64.png" xlink:type="simple"/></inline-formula> from <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x62.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x63.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x64.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x65.png" xlink:type="simple"/></inline-formula> and approximately calculate <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x62.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x63.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x64.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x65.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x66.png" xlink:type="simple"/></inline-formula> using its finite difference in computer. Then change <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x62.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x63.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x64.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x65.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x66.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x67.png" xlink:type="simple"/></inline-formula> gradually and plot <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x62.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x63.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x64.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x65.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x66.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x67.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x68.png" xlink:type="simple"/></inline-formula> and its first-order approximation to see if equation (11) is satisfied.</p><p>An example is showed in <xref ref-type="fig" rid="fig2">Figure 2</xref>, in which we see that <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x69.png" xlink:type="simple"/></inline-formula> is not convex around<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x69.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x70.png" xlink:type="simple"/></inline-formula>. Indeed, much more than one points like <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x69.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x70.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x71.png" xlink:type="simple"/></inline-formula> could be found in simulation, at which <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x69.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x70.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x71.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x72.png" xlink:type="simple"/></inline-formula> is not convex.</p></sec></sec><sec id="s3"><title>3. Genetic Algorithm</title><sec id="s3_1"><title>3.1. Introduction of Genetic Algorithm</title><p>Genetic Algorithm (GA) simulates the evolution process of biotic population with selection, crossover and mutation operations. The population evolves after several generations to achieve a stable situation, which corresponds to the convergence of optimization problem [<xref ref-type="bibr" rid="scirp.76547-ref11">11</xref>]. Procedures in simulating GA have been described as pseudocodes in <xref ref-type="fig" rid="fig3">Figure 3</xref>.</p><fig id="fig2"  position="float"><label><xref ref-type="fig" rid="fig2">Figure 2</xref></label><caption><title> Non-convexity of the objective function. Here<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x74.png" xlink:type="simple"/></inline-formula> where 1 is a 4K + 1 dimensional unit vector and t changes from −0.04 to 0.04. We see condition (11) does not hold in the neighbourhood of<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x74.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x75.png" xlink:type="simple"/></inline-formula>, meaning <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x74.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x75.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x76.png" xlink:type="simple"/></inline-formula> is not convex. Here <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x74.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x75.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x76.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x77.png" xlink:type="simple"/></inline-formula> = [−0.0122, 0.5939, 0.2823, 0.3822, −0.6351, −0.5309, 0.2066, −0.3018, 0.2474, −0.5919, −0.3708, 0.2478, 0.1198, −0.6504, −0.2830, −0.4147, −0.6512, −0.4563, −0.5530, 0.3174, −0.4442, −0.4444, −0.0413, 0.2127, −0.6475, 0.6329, −0.5572, −0.1189, 0.4793]</title></caption><graphic mimetype="image"   position="float"  xlink:type="simple"  xlink:href="http://html.scirp.org/file/76547x73.png"/></fig><fig id="fig3"  position="float"><label><xref ref-type="fig" rid="fig3">Figure 3</xref></label><caption><title> Pseudocodes describing GA</title></caption><graphic mimetype="image"   position="float"  xlink:type="simple"  xlink:href="http://html.scirp.org/file/76547x78.png"/></fig><p>Some terminologies of GA will be used in the subsequent content: A possible solution of the optimization problem is called an individual in GA. Each individual consists of a number of genes and each gene corresponds to an optimization variable. For example <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x79.png" xlink:type="simple"/></inline-formula> in (7) is called an individual, and variables A, zr, zi, pr and pi in <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x79.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x80.png" xlink:type="simple"/></inline-formula> are genes. Technical details of the pseudocodes will be given in the following.</p></sec><sec id="s3_2"><title>3.2. Solving the Problem Using GA</title><p>GA parameters: Supposing that Doppler filter uses K = 7 cascaded SOSs, the referenced GA parameters are listed in.</p><p><xref ref-type="table" rid="table1">Table 1</xref>. Generally, the larger Nind is, the greater probability that the global optimal solution may be contained in the population, so Nind should be configured big enough to keep a good diversity of the genes.</p><p>Initializing population: This step generates the initial population and each member must be feasible, meaning that individuals must satisfy constraints in (10). Firstly, generate genes A, zr, zi, pr and pi from uniform distribution in the range [−1, 1] as an individual.</p><disp-formula id="scirp.76547-formula81"><label>(12)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/76547x81.png"  xlink:type="simple"/></disp-formula><p>Then checking the feasibility, add the individual into the initial population if its poles and zeros are all within the unit circle, otherwise discard. Repeat this process until Nind feasible individuals are created to form an initial subpopulation.</p><p>Calculating fitness: Fitness is used to quantitatively describe each individual’s adaption to the environment. This article chooses the value of objective function as fitness and the value smaller represents better adaptation.</p><disp-formula id="scirp.76547-formula82"><label>(13)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/76547x82.png"  xlink:type="simple"/></disp-formula><p>In this step, compute the objective function value of individuals in each subpopulation first, then sort all individuals in an ascend order according to their fitness values.</p><table-wrap id="table1" ><label><xref ref-type="table" rid="table1">Table 1</xref></label><caption><title> Parameters of GA</title></caption><table><tbody><thead><tr><th align="center" valign="middle" >Variable</th><th align="center" valign="middle" >Value</th><th align="center" valign="middle" >Annotation</th></tr></thead><tr><td align="center" valign="middle" >Nvar</td><td align="center" valign="middle" >29</td><td align="center" valign="middle" >Optimization variable number</td></tr><tr><td align="center" valign="middle" >Nind</td><td align="center" valign="middle" >300</td><td align="center" valign="middle" >Individual number in subpop</td></tr><tr><td align="center" valign="middle" >Nsub</td><td align="center" valign="middle" >20</td><td align="center" valign="middle" >Number of subpopulations</td></tr><tr><td align="center" valign="middle" >Relite</td><td align="center" valign="middle" >0.1</td><td align="center" valign="middle" >Ratio of Elite children</td></tr><tr><td align="center" valign="middle" >Rxov</td><td align="center" valign="middle" >0.7</td><td align="center" valign="middle" >Individual ratio to do Crossover</td></tr><tr><td align="center" valign="middle" >Rmut</td><td align="center" valign="middle" >0.2</td><td align="center" valign="middle" >Individual ratio to do Mutation</td></tr><tr><td align="center" valign="middle" >MigR</td><td align="center" valign="middle" >50</td><td align="center" valign="middle" >Generation gap to do Migration</td></tr><tr><td align="center" valign="middle" >MaxGen</td><td align="center" valign="middle" >10,000</td><td align="center" valign="middle" >Maximal generation number</td></tr></tbody></table></table-wrap><p>Selecting elite individuals: Elite individuals refer to those who have the best adaptabilities in every subpopulation. They are preserved and passed to the next generation directly, which ensures that the performance of the new population will not degrade. This step selects Nelite individuals in each subpopulation, whose objective function values are smallest.</p><disp-formula id="scirp.76547-formula83"><label>(14)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/76547x83.png"  xlink:type="simple"/></disp-formula><p>Selection: Selection is to select Nparent individuals from each subpopulation to produce offspring. Individuals stronger will have more opportunities to be selected and mate, while those with poor adaptability will be eliminated gradually. All individuals selected will be divided into two parts, where the first part will do crossover operation, and another part will mutate. In crossover, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x84.png" xlink:type="simple"/></inline-formula>individuals need to be selected as parents because two parental individuals will produce one child. As for mutation, Nmut parents are needed because one single parent mutates to produce one child.</p><p>In this paper, a tournament selecting method [<xref ref-type="bibr" rid="scirp.76547-ref12">12</xref>] has been used. S (tournament size, e.g. 4) players are randomly chosen from each subpopulation in the tournament. A player is an individual and the one that has the best fitness value will be selected. Repeat this process until Nparent parental individuals are selected in each subpopulation.</p><p>Crossover: Crossover simulates the mating process of natural population. In the operation, parental individuals are paired first and each pair consists of a father and a mother. Then randomly select half of genes from the father, and the complementary half from the mother. Finally combine these two parts of genes together to produce a child.</p><disp-formula id="scirp.76547-formula84"><label>(15)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/76547x85.png"  xlink:type="simple"/></disp-formula><p>The subscript <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x86.png" xlink:type="simple"/></inline-formula> is the index of gene in the individual and rnd is a random integer generated from 0 and 1. Totally Nxov children in each subpopulation are need to be produced in this step.</p><p>Mutation: In a biotical population, gene mutation happens when passing genes from parents to children, which will produce new genes and increase the genetic diversity of the population. Gaussian mutation [<xref ref-type="bibr" rid="scirp.76547-ref13">13</xref>] is one kind of classical mutation methods in GA, where a random variable, generated from the Gaussian distribution (16) with zero mean and standard variance<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x87.png" xlink:type="simple"/></inline-formula>, will be superimposed on the original gene as a mutation variation.</p><disp-formula id="scirp.76547-formula85"><label>(16)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/76547x88.png"  xlink:type="simple"/></disp-formula><p>At the beginning of the GA, each gene is dispersedly distributed in the entire feasible region. The variation magnitude can be relatively big at this moment to offer more possibilities for each gene. However, as the evolution progresses, each gene begins to converge and variation magnitude should be reduced accordingly. Because after evolution, gene values that were far away from their values, now have been eliminated already by natural selection. If the variation amplitude generated is too large, the gene newly mutated will still be eliminated with great probability in the subsequent evolution, which indicates that such mutation has no meaning.</p><p>This article chooses the standard variance of <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x89.png" xlink:type="simple"/></inline-formula> to be <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x89.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x90.png" xlink:type="simple"/></inline-formula> of the Gaussian distribution. As the iteration progresses, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x89.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x90.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x91.png" xlink:type="simple"/></inline-formula>will gradually converge, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x89.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x90.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x91.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x92.png" xlink:type="simple"/></inline-formula>tracking this tendency becomes smaller. Thus the variation magnitude will also decrease, which avoids invalid searching.</p><p>Combination: After mutation, all offspring have been produced and they will be combined to generate a new population, which consists of three parts. The first one is the elite individuals retained from the population of the last generation. The second one is the offspring created by crossover operation and the last part is the children generated by mutation, whose genes are mutated versions of their parents’ genes.</p><p>Population newly generated will be delivered to calculate fitness again and the generation number Gen will be updated. So the evolution continues and optimization variables converge to the global or near global optimum solution gradually.</p><p>Migration: Migration occurs every MigG generations past promoting the communication between subpopulations. Elites of each subpopulation are gathered up first in this step, then they are randomly divided into Nsub parts, passed to each subpopulation to replace their worst fit individuals. Subpopulation and migration mechanism can efficiently improve the probability of getting the global optimal in GA.</p></sec></sec><sec id="s4"><title>4. Simulation Results</title><p>Simulating GA described above in Matlab, we get the Doppler filter. <xref ref-type="fig" rid="fig4">Figure 4</xref> shows the amplitude response of the designed Doppler filter. We see that it matches closely with the targeted response in passband, the transition band is very sharp and the response in stopband fluctuates slightly around<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x93.png" xlink:type="simple"/></inline-formula>.</p><p>There are two criterions to measure the statistical accuracy of fading channel simulator. The first one is the correlation function. As an example, <xref ref-type="fig" rid="fig5">Figure 5</xref> shows the correlation characteristics of the generated fading process and we see that both auto-correlation and cross-correlation functions simulated match well with theoretical curves.</p><p>Another statistic characteristic of the fading channel is the LCR, which indicates the speed of the envelope of <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x94.png" xlink:type="simple"/></inline-formula> passing through level <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x94.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x95.png" xlink:type="simple"/></inline-formula> in the downward direction. For Rayleigh fading channel, LCR satisfies (17), where <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x94.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x95.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x96.png" xlink:type="simple"/></inline-formula> is the signal level being crossed normalized with the rms of the fading process [<xref ref-type="bibr" rid="scirp.76547-ref1">1</xref>].</p><disp-formula id="scirp.76547-formula86"><label>(17)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/76547x97.png"  xlink:type="simple"/></disp-formula><p><xref ref-type="fig" rid="fig6">Figure 6</xref> shows the simulated LCRs, which are in good agreement with theo-</p><fig id="fig4"  position="float"><label><xref ref-type="fig" rid="fig4">Figure 4</xref></label><caption><title> Amplitude response and pole-zero plot of the Doppler filter, with SOS number<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x99.png" xlink:type="simple"/></inline-formula>, Doppler rate <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x99.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x100.png" xlink:type="simple"/></inline-formula> and stopband attenuation<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x99.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x100.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x101.png" xlink:type="simple"/></inline-formula></title></caption><graphic mimetype="image"   position="float"  xlink:type="simple"  xlink:href="http://html.scirp.org/file/76547x98.png"/></fig><fig id="fig5"  position="float"><label><xref ref-type="fig" rid="fig5">Figure 5</xref></label><caption><title> Correlation characteristics. The theoretical auto-correlation function of <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x103.png" xlink:type="simple"/></inline-formula> is zero-order Bessel function and the cross-correlation function of <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x103.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x104.png" xlink:type="simple"/></inline-formula> and <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x103.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x104.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x105.png" xlink:type="simple"/></inline-formula> is zero. We see that both auto-correlation and cross-correlation functions simulated match well with theoretical curves</title></caption><graphic mimetype="image"   position="float"  xlink:type="simple"  xlink:href="http://html.scirp.org/file/76547x102.png"/></fig><fig id="fig6"  position="float"><label><xref ref-type="fig" rid="fig6">Figure 6</xref></label><caption><title> Level-crossing rate with interpolation factor <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x107.png" xlink:type="simple"/></inline-formula> respectively. The simulated results match well with theoretical ones, expect for two situations. The first one is when the channel changes extremely fast (<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x107.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x108.png" xlink:type="simple"/></inline-formula>) and another one is when <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x107.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x108.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x109.png" xlink:type="simple"/></inline-formula> is small (<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x107.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x108.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x109.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x110.png" xlink:type="simple"/></inline-formula>). However, [<xref ref-type="bibr" rid="scirp.76547-ref5">5</xref>] explained that these two situations and both caused by sparse sampling of the fading process, unrelated to the particular simulation techniques used</title></caption><graphic mimetype="image"   position="float"  xlink:type="simple"  xlink:href="http://html.scirp.org/file/76547x106.png"/></fig><p>retical ones, expect for two situations where the LCR values are underestimated. However, according to [<xref ref-type="bibr" rid="scirp.76547-ref5">5</xref>], these situations are common problems and unrelated to the particular simulation techniques used. We see that mismatches disappear as interpolation factor <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/76547x111.png" xlink:type="simple"/></inline-formula> increases.</p></sec><sec id="s5"><title>5. Conclusion</title><p>This paper designs the channel simulator producing correlated Gaussian noises as the Rayleigh fading waveforms. An optimization model has been built to design the Doppler filter, and its non-convexity is proved with the aid of computer simulation. Genetic algorithm is used to solve the problem and it converges to the solution corresponding to very accurate approximation of Jakes PSD. Also statistical characteristics of the generated fading process match well with theoretical predictions, which confirms the validity of the simulator we designed.</p></sec><sec id="s6"><title>Cite this paper</title><p>Wang, H.F., Du, S.W. and Guan, N. (2017) Design of Fading Channel Simulator Based on IIR Filter Using Genetic Algorithm. Int. J. Communications, Network and System Sciences, 10, 105-115. https://doi.org/10.4236/ijcns.2017.105B010</p></sec></body><back><ref-list><title>References</title><ref id="scirp.76547-ref1"><label>1</label><mixed-citation publication-type="other" xlink:type="simple">Goldsmith, A. (2005) Wireless Communications. Cambridge University Press, Cambridge, 71-82. https://doi.org/10.1017/cbo9780511841224</mixed-citation></ref><ref id="scirp.76547-ref2"><label>2</label><mixed-citation publication-type="other" xlink:type="simple">Jakes, W.C. and Cox, D.C. (1994) Microwave Mobile Communications. Wiley IEEE Press. https://doi.org/10.1109/9780470545287</mixed-citation></ref><ref id="scirp.76547-ref3"><label>3</label><mixed-citation publication-type="other" xlink:type="simple">Pop, M.F. and Beaulieu, N.C. (2001) Limitations of Sum-of-Sinusoids Fading Channel Simulators. IEEE Transactions on Communications, 49, 699-708. 
https://doi.org/10.1109/26.917776</mixed-citation></ref><ref id="scirp.76547-ref4"><label>4</label><mixed-citation publication-type="other" xlink:type="simple">Young, D.J. and Beaulieu, N.C. (2000) The Generation of Correlated Rayleigh Random Variates by Inverse Discrete Fourier Transform. IEEE Transactions on Communications, 48, 1114-1127. http://doi.org/10.1109/26.855519</mixed-citation></ref><ref id="scirp.76547-ref5"><label>5</label><mixed-citation publication-type="other" xlink:type="simple">Komninakis, C. (2003) A Fast and Accurate Rayleigh Fading Simulator. GLOBECOM’03, IEEE Global Telecommunications Conference, 6, 3306-3310. 
https://doi.org/10.1109/GLOCOM.2003.1258847</mixed-citation></ref><ref id="scirp.76547-ref6"><label>6</label><mixed-citation publication-type="other" xlink:type="simple">Boyd, S. and Barratt, C. (2008) Ellipsoid Method. Notes for EE364B, Stanford University.</mixed-citation></ref><ref id="scirp.76547-ref7"><label>7</label><mixed-citation publication-type="other" xlink:type="simple">Alimohammad, A., Fard, S.F. and Cockburn, B.F. (2012) Filter-Based Fading Channel Modeling. Modelling and Simulation in Engineering, 2012, 3. 
https://doi.org/10.1155/2012/705078</mixed-citation></ref><ref id="scirp.76547-ref8"><label>8</label><mixed-citation publication-type="other" xlink:type="simple">Alimohammad, A. and Fard, S.F. (2013) Fpga Implementation of Isotropic and Noniso-tropic Fading Channels. IEEE Transactions on Circuits and Systems II: Express Briefs, 60, 796-800. https://doi.org/10.1109/TCSII.2013.2281768</mixed-citation></ref><ref id="scirp.76547-ref9"><label>9</label><mixed-citation publication-type="other" xlink:type="simple">Lu, W.-S. and Hinamoto, T. (2003) Optimal Design of Iir Digital Filters with Robust Stability Using Conic-Quadratic-Programming Updates. IEEE Transactions on Signal Processing, 51, 1581-1592. https://doi.org/10.1109/TSP.2003.811229</mixed-citation></ref><ref id="scirp.76547-ref10"><label>10</label><mixed-citation publication-type="other" xlink:type="simple">Boyd, S. and Vandenberghe, L. (2004) Convex Optimization. Cambridge University Press, 69-70. https://doi.org/10.1017/CBO9780511804441</mixed-citation></ref><ref id="scirp.76547-ref11"><label>11</label><mixed-citation publication-type="other" xlink:type="simple">Chipperfield, A., Fleming, P., Pohlheim, H. and Fonseca, C. (1994) Genetic Algorithm Toolbox for Use with Matlab.</mixed-citation></ref><ref id="scirp.76547-ref12"><label>12</label><mixed-citation publication-type="other" xlink:type="simple">Filipovic, V. (2012) Fine-Grained Tournament Selection Operator in Genetic’ Algorithms Computing and Informatics, 22, 143-161.</mixed-citation></ref><ref id="scirp.76547-ref13"><label>13</label><mixed-citation publication-type="other" xlink:type="simple">Higashi, N. and Iba, H. (2003) Particle Swarm Optimization with Gaussian Mutation. Proceedings of the 2003 IEEE Swarm Intelligence Symposium, SIS’03, 72-79. https://doi.org/10.1109/SIS.2003.1202250</mixed-citation></ref></ref-list></back></article>