Tropical cyclone eye fix using genetic algorithm

HKU CSIS Tech Report TR-2004-06
Tropical cyclone eye fix using genetic algorithm
YIP Chi Lap and
?
WONG Ka Yan
Department of Computer Science, The University of Hong Kong
[email protected], [email protected]
Abstract. Weather forecasting often requires extensive computationally expensive numerical analysis on remote sensing data. For example,
to determine the position of a tropical cyclone (the TC eye fix problem),
computationally intensive techniques, such as the analysis of wind fields
or processing of fields of motion vectors, are needed. Given the volume
and rate of data to be processed, these problems are often solved using
mainframe computers or clusters of computers for timely results to be
given. In this paper, a template matching method is proposed to solve a
subclass of TC eye fix problems. Together with the use of genetic algorithm, an accuracy within 0.139 to 0.257 degrees in latitude/longitude
on the Mercator projected map is possible on a desktop computer at a
rate of about 12 seconds per 6 minutes of radar data. The accuracy is
comparable to the relative error of about 0.3 degrees given by different
TC warning centers.
1
Introduction
Tropical cyclones (TCs) often cause significant damage and loss of lives in
affected areas. To reduce the loss, warning centers should issue warnings early
based on a forecast of TC track. This requires the accurate location of the
circulation center, or the “eye”, of the TC. This is normally done by the analysis
of remote sensing data from weather radars or satellites.
Weather radars work by sending out microwave signals to the atmosphere.
The reflected signals are then preprocessed to extract the relevant slices suitable
for analysis. The radar reflectivity (RR) data at 3 km Constant Altitude Plan
Position Indicator (CAPPI) (Fig. 1(a)) and the corresponding Doppler velocity
data (Fig. 1(b)) are often used for TC eye fix. The former shows the reflectivity
of rain, and the latter shows their radial velocities with respect to the radar.
Since a TC is a system with spiraling rainbands whose circulation center is
the eye, the zero isodop, or the line with zero radial velocity with respect to the
radar, is where the TC center should lie. The radars used by the Hong Kong
Observatory [2] take six minutes to update both types of data. They cover a
range of 512 km, with spatial resolution of several kilometers. Since TCs in the
?
This is an extended version of the paper “Efficient and Effective Tropical Cyclone
Eye Fix Using Genetic Algorithm” [1], published in the Proceedings of the 8th International Conference on Knowledge-Based Intelligent Information and Engineering
Systems, Sept, 2004.
(a) Radar reflectiv- (b) Doppler velocity (c) Preprocessed RR (d) Matching result
ity (RR)
Fig. 1. Radar images of Typhoon Yutu at 2001-07-25 13:54 (HKT)
proximity of hundreds of kilometers from a city fall into the range of radars and
pose the greatest threat, we focus on the eye fix process from radar images.
2
Methods of TC eye fix
TC eye fix is often done manually in practice. Forecasters estimate the center
location by tracing the movement of spiral rainbands using consecutive remote
sensing images, or by overlaying spiral templates on remote sensing images for
the best match [3]. These techniques are intuitive to forecasters since they are
trained to identify the spiral structure of TCs, but are not completely objective.
In contrast, automated TC eye fix methods often employ objective measures. Major approaches include wind field analysis and pattern matching. In
wind field analysis, motion estimation techniques are applied on adjacent frames
of images to construct a motion vector field. Examples include the use of the
TREC (Tracking Radar Echoes by Correlation) algorithm [4] or automatic cloud
features tracking technique [5]. The TC center is found by analyzing the motion
field [6].
For pattern matching, the TC eye is fixed by finding the best match of a
predefined TC model, whose parameters are estimated from remote sensing data.
A method that is applicable to ideal TCs [7] identifies shear patterns of large
axisymmetric wind circulation systems to fix the TC eye. As another example,
in our previous work [8], the spiral rainband of a TC is modeled by the equation
r = aeθ cot α , where a and α are found by transformation techniques. Templates
generated by the estimated parameters are used to match against radar images
at plausible latitude-longitude positions. An alternative method for finding spiral
parameters involves the method of least squares [9].
These eye fix methods require computationally expensive operations such
as wind field or motion vector field construction, parameter estimation using
searching algorithms, and extensive block or object matching. With the large
volume and rate of data, this problem is often solved using mainframe computers
or clusters to generate timely results.
This paper provides more details on the eye fix method using genetic algorithm, which have been discussed at our work [1]. We aim at developing an
effective and efficient algorithm that makes use of a simple template model of
TC for matching. Rather than using traditional gradient ascend algorithms to
search for the location of best match, genetic algorithm is used to speed up the
search and to break out of local maxima. Genetic algorithm (GA) makes use
of Darwin’s idea of “survival for the fittest”, the best genes (sets of model parameters) that maximizes a fitness function (a quality measure of match) are
iteratively generated and selected. By the iterative nature of genetic algorithm,
our algorithm can be queried at any time for the best answer found so far to
meet the practical soft real time constraints. The algorithm is also implemented
on a desktop computer for performance evaluation.
This paper is organized as follows: after the TC template model is introduced
in Sect. 3, a TC eye fix algorithm that makes use of the model is explained in
Sect. 4. The algorithm is then evaluated in Sect. 5 in terms of both efficiency
and effectiveness, where factors affecting the effectiveness are also discussed, and
followed by a summary in Sect. 6. Appendix A gives some details on the fitness
function used in our algorithm.
3
A model of TC
A time-honored technique of manual TC eye fix is to overlay spiral templates on a printout of remote sensing image for the best match of the spiral
rainbands [3]. We automate the process by choosing a simple model of TC and
doing the match using genetic algorithm.
A TC has a center (point C in Fig. 2(a)) at longitude lon and latitude lat
where a spiral rainband (curve EDBA) with the polar equation r = aeθ cot α
whirls into. For TCs in the northern hemisphere, cot α is negative, giving the
spiral shape as shown in the figure. TCs in the southern hemisphere have positive
cot α and rainbands swirl in clockwisely. A TC has an eye wall (inner circle of
Fig. 2(a)) with radius R (distance BC), which is the boundary between rainy and
no-rain areas. Places with a distance slightly larger than R from the center (the
outer circle with radius R + d) would be rainy. The spiral rainband outside the
eye wall (curve BDE) has a length of l, related to the distance of influence of the
TC. With this model, six parameters lat, lon, a, α, l and R define the template.
4
The TC eye fix algorithm
The radar image is preprocessed before matching is done. Firstly, a radar reflectivity image is thresholded and contrast-enhanced to make spiral rainbands
stand out. Thresholding with histogram cumulative frequency of 82–86% is done,
so that the brightest pixels are retained. This percentage is determined by domain knowledge in meteorology and corresponds to a reflectivity threshold of
about 34 dBZ. To enhance the contrast, equalization is applied to the retained
pixels. The image is further preprocessed by Gaussian smoothing and max filtering. Gaussian smoothing is done using a Gaussian kernel of size 7 × 7 with
σ = 1.0, while max filtering is simply done by replacing each pixel value in an
D
d
r = aeθ cot α
centered at C
B
R
A
E
C
l
(a) TC model parameters
Parameter
lat
lon
a
α
l
R
range typical
min
max Parameter
nBest
10–50
10
256 km from
nChild
25–150
50
radar station
nRetain
2
2
10 km 45 km boreCount
10
10
-1.5
-1
minLoop
20
20
180 km 720 km
px 0%–100% 80%
10 km 45 km
pm 0%–100% 20%
(b) Template parameters (c) Genetic algorithm parameters
Fig. 2. TC model, template and genetic algorithm (GA) parameters
image with the maximum value of its neighbors, including itself. These techniques are applied to smooth and reduce noise in images, while preserving the
useful details. Figure 1(c) shows a preprocessed image to which templates are
matched.
The quality of match is calculated using a fitness function, which is a modified
correlation function designed so that high reflectivity areas match the spiral
segment BDE and the outer circle of the template, and low reflectivity areas
match the inner circle. For details, please refer to Appendix A.
A genetic algorithm is used to find the set of parameters for the best match.
Initially, nChild template candidates are generated randomly in an Region Of
Interest (ROI) determined by Doppler velocity image. In our experiments, the
ROI is an area within φ = π/45 radian or w = 3 km from the straight zero
isodop line, or a user-defined rectangular area. Domain-specific information is
used to limit the values of the six template parameters. lat and lon are limited
by the area of coverage of radar, and the limits of the other four parameters are
determined by values of typical TCs. Table in Fig. 2(b) summarizes these limits.
After the initial set of candidate templates is generated, the algorithm enters
an iterative phase. Here, each template is matched against the preprocessed
image for a fitness value, and the fittest nBest candidates are retained as parents.
nChild children templates are then generated using the parents with crossover
and mutation probabilities of px and pm respectively, with at least nRetain of
them verbatim copies of parents. In our experiments, crossover alters at most
five template parameters after a randomly selected crossover point. Mutation
only alters one of a, α, l, R, or both lat and lon together for better escape from
local maxima. The iterative phase ends when the best score does not improve
for boreCount iterations after the algorithm runs for at least minLoop iterations,
or when the score is over a user-defined threshold minScore. This threshold is
used so that the algorithm can give an answer once the fitness score satisfies the
user.
The (lon, lat) location found is then output and fed to a Kalman filter [10] [11]
to smooth out noises caused by bad matches and image defects. Historical TC
data, such as average TC speed, are used to determine Kalman filter parame-
Yutu
Hagupit
0
25
50
75 100 125 150 175
nChild
(a) Effect of nChild on speed
Effect of nChild on accuracy
average error
images per minute
Effect of nChild on speed
10
9
8
7
6
5
4
3
2
1
0
0.3
0.28
0.26
0.24
0.22
0.2
0.18
0.16
0.14
0.12
0.1
Yutu
Hagupit
0
25
50
75 100 125 150 175
nChild
(b) Effect of nChild on accuracy
Fig. 3. Effect of nChild on running speed and accuracy on STS Hagupit and
Typhoon Yutu
ters such as system noise variance. Latitude and longitude values are separately
smoothed, with the assumption that they are statistically independent. The
Kalman filtered TC center location gives the output of the whole system. Figure 1(d) shows the five best templates overlaid on a preprocessed radar image.
The green one scores the highest and is taken as input to the Kalman filter.
5
Evaluation
To evaluate the efficiency and effectiveness of our algorithm, a Java-based
TC eye fix system prototype is built. Sequences of radar reflectivity images with
a range of 256 km captured every 6 minutes, along with their Doppler velocity
counterparts, were used for testing. These include 240 images from Typhoon
Yutu, (HKT) 2001-07-24 20:00 to 2001-07-25 19:54, and 120 images from Severe
Tropical Storm (STS) Hagupit, (HKT) 2002-09-11 12:00 to 2002-09-11 23:54.
The efficiency of the algorithm is evaluated using the average number of images
the system can process in a minute on a notebook computer with 1.4GHz Pentium M processor and 256 MB RAM running Windows XP. The effectiveness is
evaluated by finding the average Euclidean distance between the center found by
the algorithm and the corresponding interpolated best track location from the
Hong Kong Observatory. Best tracks are the hourly TC locations determined
after the event by a TC warning center using all available data.
We also investigate into the effects of the genetic algorithm parameters
nChild , combinations of px and pm , and the spawning factor nChild /nBest on
the efficiency and effectiveness of the algorithm. A relatively high minScore of
300 is chosen so that very good template matches cause early return of results.
The table in Fig. 2(c) summarizes the genetic algorithm parameters used.
5.1
Efficiency
Using a typical parameter set (Table in Fig. 2(c)), the system processes
around 5 images a minute on average. This is an order of magnitude of speed
Effect of the spawning factor on speed
Effect of the spawning factor on accuracy
0.22
Yutu
8
average error
images per minute
10
6
4
2
0
Yutu
0.2
0.18
0.16
0.14
0.12
0
1
2
3
4
nChild/nBest
5
(a) Effect of SF on speed
6
0
1
2
3
4
nChild/nBest
5
6
(b) Effect of SF on accuracy
Fig. 4. Effect of spawning factor (SF) on speed and accuracy on Typhoon Yutu
improvement with respect to our previous work [8] that makes use of transformation techniques on similar data sets. Figure 3(a) shows the effect of nChild
on processing rate while other parameters are kept constant. In general, the algorithm runs slower as nChild increases. This is because more time is spent on
spawning children and matching in each iteration as nChild increases. Because
our stopping criteria is related to the iteration count boreCount, requiring more
time each iteration means a lower processing rate. From Fig. 3(a), it is also found
that processing of Yutu is faster than that of Hagupit. An inspection of the radar
images shows that Yutu has a better spiral structure. Good matches that give a
fitness score higher than our minScore threshold happens often, especially at the
end of the sequence, which allows the algorithm goes through fewer iterations
per image.
Figure 4(a) shows the effect of spawning factor, or the average number of
children each parent has, on running speed, using Typhoon Yutu in experiments.
In general, the higher the spawning factor, the slower the system runs, as more
time is needed to generate the children and do the matching in each iteration.
Table 2(a) shows the average number of images processed per minute for
different combinations of px and pm on Yutu. Note that the entries for pm = 0%
is not applicable because common parameter values of the fittest spirals of an
iteration would reduce the number of distinct children that can be generated to
a unusable low value below nChild. The average speed and standard deviation
of the runs are 6.95 and 1.25 images per minute respectively. The speed generally
increases as pm increases, but no obvious relationship between px and efficiency is
observed. As the parameter space is not very large, a larger pm helps generation
of better templates earlier, leading to earlier termination of the iterative phase.
5.2
Effectiveness
A run of the algorithm using typical parameter values (Table in Fig. 2(c))
gives an error of about 0.153 degrees in latitude/longitude on the Mercator
projected map. This is slightly better than the result of our previous work [8] of
0.16 degrees and is well within the relative error of about 0.3 degrees given by
different TC warning centers.
0%
20%
40%
60%
80%
100%
Crossover probability px
0% 20% 40% 60% 80% 100%
not applicable, see Sect. 5.1
5.19 6.32 5.92 6.22 4.90 5.08
4.52 7.27 7.12 6.86 6.15 4.82
6.32 6.67 7.50 8.00 7.06 7.27
8.89 6.38 8.59 8.03 8.03 6.73
8.89 8.89 8.03 8.59 7.74 6.67
0%
Mutation
probability pm
Mutation
probability pm
Table 1. Sensitivity study of px and pm on eye fix of Typhoon Yutu
(a) Number of images per minute
0%
20%
40%
60%
80%
100%
0.153
0.143
0.153
0.139
0.147
Crossover probability px
20% 40% 60% 80% 100%
not applicable, see Sect. 5.1
0.150 0.157 0.149 0.153 0.157
0.153 0.155 0.157 0.152 0.157
0.152 0.149 0.155 0.143 0.154
0.151 0.142 0.150 0.149 0.143
0.140 0.152 0.156 0.155 0.149
(b) Average error
Figure 3(b) shows the effect of nChild on accuracy, using Typhoon Yutu
in experiments. The average error generally decreases as nChild increases, as
larger nChild means higher probability of having fitter children. The effect of
spawning factor on accuracy is plot in Fig. 4(b). The average error first decreases
then flattens out as the spawning factor increases to a saturation point of about
2. An increase in spawning factor increase the odds that “good children” are
generated, but having too many children would not lead to better children from
the same set of parents.
Table 2(b) shows the average error for different px and pm value combinations
on Yutu. It is found that px and pm values do not have a strong effect on the error
values, which range from 0.139 to 0.157. The average error value in the table
is 0.151, and the standard deviation is 0.005. This insensitivity of error values
to the genetic algorithm parameters is an advantage as the parameters can be
chosen to maximize the processing speed without affecting the error much.
5.3
Factors affecting effectiveness
The accuracy of the algorithm is contributed by a number of factors: restriction of template parameter space (Table in Fig. 2(b)), the use of ROI, Kalman
filtering, and the use of our genetic algorithm (Sect. 4). A number of experiments
are carried out to find out which factor contributes more to the effectiveness of
our algorithm. An algorithm gives a random answer within ROI is used to assess the contribution of the ROI restriction and Kalman filter. Restricting our
genetic algorithm to one iteration gives insight on the use of random parameters
without the genetic algorithm iterations. Modification of our genetic algorithm
to generate children near the parents only reduces it to a gradient ascend algorithm and gives a reference of the effectiveness of genetic algorithm to escape
from local fitness maxima. The average errors of these test cases for Typhoon
Yutu are reported in Table 5.
From the table, it is found that Kalman filter is rather effective in reducing
random noise effects, especially for the test case on random answer. The proposed algorithm performs better than the gradient ascend algorithm, indicating
that the search space has some local fitness maxima. The iterative phase of the
proposed algorithm helped improve the accuracy, as seen from the second and
fourth rows of Table 5.
latitude
Comparison of best track and estimated track
22
HKObservatory best track
21.75
Proposed center by eye-fix system
21.5
21.25
21
20.75
20.5
20.25
20
112.5 113 113.5 114 114.5 115 115.5 116 116.5
longitude
(a) Result and best track
Average error
Experiment
Raw Kalman
Random answer within ROI
0.64
0.39
Genetic algorithm restricted to one iteration 0.37
0.22
Gradient ascend algorithm
0.27
0.19
The proposed genetic algorithm
0.22
0.15
(average of values in Table 2(b))
(b) Average error
Fig. 5. Results for Typhoon Yutu
6
Summary
A template matching algorithm for automatically determining the TC center
location from radar data has been proposed. The template is based on a simple
model of TC defined by six parameters, and genetic algorithm is used to find the
template that best fits the image. There is an order of magnitude of improvement in terms of efficiency with respect to our previous work [8] that makes
use of transformation techniques. The accuracy, in terms of average error on the
Mercator projected map, has also been improved from 0.16 to about 0.15.
Sensitivity studies on the effectiveness and efficiency of the algorithm have
been done on some of the genetic algorithm parameters. These parameters include the crossover and mutation probabilities (px and pm respectively), the
number of children in each iteration nChild , and the spawning factor nChild /nBest.
It is found that the crossover and mutation probabilities do not affect the accuracy much. Large pm makes the algorithm more efficient, but no obvious relationship between px and efficiency was observed. Also, an increase in the number of
children nChild decreases the processing rate and increases accuracy. Increases
in spawning factor nChild /nBest decreases the speed in general, and improves
accuracy up till a saturation point of about 2.
7
Acknowledgements
The authors are thankful to the Hong Kong Observatory (HKO) for the
provision of data and expert advices. We would also like to thank Mr. LAM
Chiu Ying for his inspiring discussions on the problem.
A
Fitness function
A fitness function is defined to evaluate the quality of matching. Based on
the TC model defined in Fig. 2(a), a modified correlation function is designed,
so that high reflectivity areas match the spiral segment BDE and the outer circle
of the template, and low reflectivity areas match the inner circle.
To increase the speed of matching, the spiral segment and the two circles of
the template are sampled every ss and sc km respectively.
Since features of a TC usually change throughout its life, two weighting
factors, ws and wc , are introduced, to give different weights to the spiral and
circles, according to the cloud features and the shape of the TC.
The matching is done on a grayscale mapped radar image, whose pixel value
is in the range of [0, 255]. The score should be increased when a high reflectivity
area (high pixel value) match the spiral segment BDE and the outer circle of the
template, or when a low reflectivity area (low pixel value) match the inner circle.
On the other hand, if a high reflectivity area match the inner circle, a penalty
is given by reducing the score. A value poffset is defined to be the demarcation
pixel value between high and low reflectivities.
The fitness function can be separated into three parts, matching the spiral
segment, the inner circle, and the outer circle respectively.
For the spiral segment, the score score spiral is defined as follows:
P
x,y∈S p(x, y)
score spiral =
|S|
where p(x, y) is the pixel value at point (x, y) on the image, and S is the set
of sample points on the spiral segment. A high score is obtained if the segment
matches with high pixel value p(x, y) of the image. It is normalized by the total
number of sample points on the spiral segment.
For the inner circle, the score score inner is defined as follows:
P
x,y∈E (poffset − p(x, y))
score inner =
|E|
where E is the set of sample points on the inner circle circumference. The offset
value poffset is used with the intention to deduce the score if the inner circle
(eye wall) is matched wrongly with high reflectivity values (stormy area). In our
experiment, poffset = 64. This value is considered only for the case of inner circle
matching. Otherwise, the score may be dominated by a wrong match of circle
with the low reflectivity areas at the region outside the tropical cyclone. The
score calculated here is normalized by the total number of sample points on the
inner circle circumference.
For the outer circle, the score score outer is defined as follows:
P
x,y∈C p(x, y)
score outer =
|C|
where C is the set of sample points on the outer circle circumference.
A high score is obtained if the circle matches with high pixel value of the
image. It is normalized by the total number of sample points on the outer circle
circumference.
Finally, the final score of the fitness function is calculated by the weighted
sum of these three parts.
score = ws × score spiral + wc × score inner + wc × score outer
The higher the score the candidate has, the better it fits the defined TC
model.
References
1. Yip, C.L., Wong, K.Y.: Efficient and effective tropical cyclone eye fix using genetic
algorithms. In: Proceedings of the 8th International Conference on KnowledgeBased Intelligent Information and Engineering Systems. (2004)
2. Hong Kong Observatory: Official authority for Hong Kong weather forecast,
http://www.hko.gov.hk/. (Homepage)
3. Sivaramakrishnan, M.V., Selvam, M.: On the use of the spiral overlay technique
for estimating the center positions of tropical cyclones from satellite photographs
taken over the Indian region. In: Proceedings of the 12th conference on Radar
Meteorology. (1966) 440–446
4. Tuttle, J., Gall, R.: A single-radar technique for estimating the winds in tropical
cyclones. Bulletin of the American Meteorological Society 80 (1999) 653–668
5. Hasler, A.F., Palaniappan, K., Kambhamettu, C., Black, P., Uhlhorn, E., Chesters,
D.: High resolution wind fields within the inner-core and eye of a mature tropical
cyclone from GOES one-minute images. Bulletin of the American Meteorological
Society 79 (1998) 2483–2496
6. Lai, E.S.T.: TREC application in tropical cyclone observation, ESCAP/WMO
Typhoon Committee Annual Review (1998) 135–139
7. Wood, V.T.: A technique for detecting a tropical cyclone center using a Doppler
radar. Journal of Atmospheric and Oceanic Technology 11 (1994) 1207–1216
8. Wong, K.Y., Yip, C.L., Li, P.W., Tsang, W.W.: Automatic template matching
method for tropical cyclone eye fix. In: Proceedings of the 17th International
Conference on Pattern Recognition. (2004)
9. Wang, Y., Wang, H., Chen, H., Sun, W.C.: Tropical cyclone center location with
digital image process. In: Proceedings of the International Conference on Info-tech
and Info-net. Volume 3. (2001) 563–567
10. Welch, G., Bishop, G.: An introduction to the Kalman filter, ACM Computer
Graphics (SIGGRAPH’ 2001) (2001)
11. Maybeck, P.S.: Stochastic models, estimation, and control. Volume 1 of Mathematics in Science and Engineering. Academic Press (1979)