Optimal Position for an Antenna using a Genetic Algorithm

advertisement
Optimal Position for an Antenna using a Genetic Algorithm
Jamie Knapil Infantolino 1, M. Jeffrey Barney 1, and Randy Haupt 2
1
Remcom, Inc
State College, PA 16801, USA
Jamie.Infantolino@remcom.com, Jeffrey.Barney@remcom.com
2
Applied Research Lab
The Pennsylvania State University, State College, PA, USA
rlh45@psu.edu
Abstract: Determining an optimal position for an antenna is not always intuitive. This paper
looks at an implementation of a Genetic Algorithm (GA) within XFdtd, a Finite Difference Time
Domain (FDTD) solver, for its effectiveness in determining an optimal antenna position when
compared to a brute force method.
Keywords: Optimization Techniques for EM-based Design, Fast and Efficient Methods
1. Introduction
Placement of an antenna on a platform has been traditionally accomplished using human judgment
and experience. The many interactions between the antenna and platform often defies an engineer's
intuition for the optimal antenna location. Using a computer to optimize the antenna placement requires a
very robust electromagnetics simulation as well as a powerful optimization algorithm.
The
electromagnetics solver must handle very large platforms and perform the desired cost function
calculations within a reasonable time. The optimization algorithm must find an acceptable answer when
confronted with a large number of variables and a cost surface with many minima while keeping the
number of cost function evaluations small.
This paper considers an application of the Finite-Difference Time-Domain solver, XFdtd which is
based on the FDTD method presented by Kunz and Luebbers [1], and an implementation of a Genetic
Algorithm (GA) for its effectiveness in determining the optimal placement of a communication antenna
on a train to allow communication with other trains, local transmission stations, etc.
2. Genetic Algorithm
A global optimization technique is needed for finding the minimum of a cost surface with many
local multiple minima and many variables. Fewer cost function evaluations are needed to find an
acceptable solution so the GA selected here uses a small population size and high mutation rate, because,
even though that selected solution may not be the exact global minimum [2]. Traditional GAs works with
a binary encoding of the variable values, but GAs that work with continuous values that are more
common today [3]. Sometimes, the problem requires variables with both floating point and integer values,
so a mixed integer GA is appropriate [4].
A mixed integer GA starts by mapping all variable values to continuous values between 0 and 1. If
the problem has N variables, then the GA starts with M chromosomes in an M N population matrix
given by
P
v1,1
v2,1
vM ,1
where vm , n
variable n in chromosome m with 0
v1,2
v2,2
v1, N
vM , N
vm,n 1 . Initially, the population matrix is filled using
a uniform random number generator. A variable, vm , n in chromosome translates to either a real
variable, rn , an integer, In, or a binary digit, bn with values lying between the min and max value
designations.
In
rn
rmax rmin vm,n rmin
rounddown I max I min 1 vm,n
bn
I min
(1)
round vm ,n
The rounddown function rounds to the next lowest integer, and the round function rounds to the
nearest integer. This approach has the scaling, quantizing, and rounding operations in the cost function, so
the GA is independent of the type of variable. With this implementation, a chromosome can have any mix
of real, integer, and binary variables.
Our GA selects half of the chromosomes with the lowest costs to be part of the mating pool.
Tournament selection is used to pick the two parent chromosomes for the mating operation. Mating
between the two parent chromosomes is done with uniform crossover. Uniform crossover creates a
random binary mask where a 1 in the mask column means the
offspring receives the variable value in first parent; otherwise a 0
indicates that the offspring receives the variable value in the second
parent.
first parent [vm,1 vm,2 vm,3 vm,4 vm,5 vm,6 vm,7 ]
secong parent [vn,1 vn,2 vn,3 vn,4 vn,5 vn,6 vn,7 ]
0
0
0
0
1
0]
mask [1
offspring [vm,1 vn,2 vn,3 vn,4 vn,5 vm,6 vn,7 ]
(2)
Mutation randomly selects population variables and replaces
them with values generated by a uniform random number generator.
3. Genetic Algorithm in XFdtd
The GA [2] is written in C++ and is accessed using XFdtd's
Scripting API. A user defines the antenna and the acceptable regions
on a platform where the antenna can be located using script
language.
Fig. 1. GA Flowchart
Our GA has a population size of 8 with a mutation rate of 15%. The GA randomly selects a
region from the list of possible regions as well as a position on that region where the antenna is placed for
the next cost function evaluation. Each cost function evaluation calls a script function that executes the
XFdtd calculation engine in order to calculate the cost (antenna pattern, impedance, bandwidth, etc.) that
is passed to the GA . The GA performs mating on the best half of the chromosomes in the population
then performs mutation to find the next generation. This process iterates until a user defined convergence
is reached or a set number of iterations are performed. Fig. 1 illustrates the flow of the algorithm.
XFdtd's GA implementation was tested on an analytic model with a known solution. The analytic
model was a vertical dipole that is 19mm long located over a circular plate having a center frequency of
1.5 GHz or a wavelength of 200mm. The dipole was 90mm above a circular PEC plate having a 1000mm
radius and centered at (0,0). The setup can be seen in Fig. 2.
The cost function constrains the dipole so that it is directly over the plate. The goal of the
optimization is to find a position that results in an omni-directional pattern. The best solution should be
the center of the plate. A centered dipole above the circular ground has a computed gain of 4.76dBi. The
FDTD grid had 0.325 million cells. The
calculation engine used 52MB of memory and
took 49s to calculate one function call.
The cost threshold for the GA was set at
4.5dBi. The GA minimized the negative of the
minimum gain. The cost function executed
XFdtd's calculation engine (CalcFDTD) which
calculated the antenna gain. By minimizing the
negative of the minimum gain, an omnidirectional pattern was found. After 29
evaluations of the cost function, the GA reached
its cost threshold at 4.53dBi. The associated
dipole location was at (1e-24, 1.8) mm after the
optimization ran for 22min.
Fig. 2. Analytic Geometry Results.
4. Results
Next, the GA was used to find an optimal
placement for a communication antenna on a train.
A CAD model of the train was loaded into XFdtd.
Then the allowable regions were determined. Fig.
3 shows the model within the XFdtd framework
with the allowable regions shown in brown.
The first location that was chosen was on
top of the roof, right in the middle. This was the
first point fed into the GA.
The goal of this antenna is to project as
much power on target as possible. This is because
it is assumed that the transmitter is located along
the track. It is important for the receiving antenna
Fig. 3. Allowable Regions for Antenna Location. on the train to be receiving the strongest signal
possible. XFdtd was used to simulation this. The field values were collected at the observation point
then used in the cost function. Fig. 4 depicts the results of the first guess. There is very little energy that
reaches the observation point.
This seed was placed into the initial GA population to see if a better location for the antenna
could be found. By the seventh generation, all of the locations on the top were discarded. This seems
counterintuitive, but the GA determined it was not the optimal location.
Fig. 4. Cross Section of First Guess Placement.
The GA ran 20 generations for a total of 84 simulations. The power in the region of interest of
the optimal location is depicted in Fig. 5. The optimal location found is depicted in Fig. 6.
Fig. 5. Cross Section of Optimally Placed Antenna.
The GA found the optimal location to be between
the roof and the front windows. This might be caused by
the energy does not bounce off the ground as in the
situations where the antenna was on the front. One
difficulty with the GA is runtime limitations. This GA ran
for 20 generations taking 40 hours to complete. This may
be infeasible for some applications. One way to reduce the
runtime is to use a Graphic Processor Unit (GPU) for the
calculations. The GPU solution can achieve up to a 300X.
The train example ran in 1.5 hours with the use of a GPU.
This makes this technology more practical.
Fig. 6. Optimal Location Found by GA.
5. Future Work
Clearly using GPUs will facilitate optimization problems thus next more complex problems will
be evaluated exploiting the GPUs. More complex problems will lead to more uses for the GA. It will be
able to be used allow military and commercial applications leading to fast and efficient results. Further
investigation is needed to determine how complex of a geometry the GA can handle.
6. Conclusions
The GA was useful in determining the optimal location for a communication antenna on a train.
The optimal solution was found with complete confidence in the answer. The GA is also able to account
for interactions with other elements of the platform. The train’s irregular surfaces impacted the
performance of the antenna. Also the track in which the train was placed on also needed to be considered.
There were interactions with the track and the surface below the train which XFdtd was able to model
correctly then seeded the GA the correct data. It has been demonstrated that the GA can produce an
optimal location for an antenna on a platform. It eliminates the guess work that is currently employed
within this field. Now problems designing effective communication antennas can be accomplished faster
and more efficiently using this technology.
7. References
[1] K.S. Kunz and R.J. Luebbers, The Finite Difference Time Domain Method for Electromagnetics, 1st
edition, CRC Press, 1993.
[2] R.L. Haupt and S.E. Haupt, Practical Genetic Algorithms, 2nd edition, New York: John Wiley & Sons,
2004.
[3]Goldberg, D. E. , Genetic Algorithms in Search, Optimization, and Machine Learning, New York:
Addison-Wesley.1989.
[4]R.L. Haupt, "A Mixed Integer Genetic Algorithm for Electromagnetics Applications," IEEE AP-S
Trans., Vol. 55, No. 3, Mar 2007.
Download