Analog forecasting of ceiling and visibility using fuzzy sets

Bjarne K. Hansen *
Maritimes Weather Centre, Dartmouth, Nova Scotia

  1. Preface

This paper presents highlights of a work in progress. For related references, visit www.chebucto.ca/~bjarne/ams2000/links. For a pdf version of this paper, visit www.chebucto.ca/~bjarne/ams2000.pdf.
  1. Abstract

A fuzzy logic based methodology for knowledge acquisition is used to build a retrieval-based analog forecasting system, a fuzzy k-nearest neighbor based prediction system. The methodology is used to acquire knowledge about what salient features of continuous-vector, unique temporal cases indicate significant similarity between cases (Hansen 1997). Such knowledge is encoded in a similarity-measuring function and thereby used to retrieve k nearest neighbors (k-nn) from a large database of airport weather observations. Predictions for the present weather case are made from a weighted median of the outcomes of analogous past cases, the k-nn, the analog ensemble. Past cases are weighted according to their degree of similarity to the present case.

Fuzzy logic equips analog forecasting with the case-discriminating ability of an expert forecaster. Fuzzy methods represent cases with any combination of words and numbers and thus enable us to "compute with words" (Zadeh 1996). The fuzzy k-nn technique retrieves similar cases by emulating a domain expert who understands and interprets similar cases (e.g., Keller et al. 1985). The main contribution of fuzzy logic to analog forecasting is that it enables us to use common words to directly acquire domain knowledge about feature salience. This knowledge enables us to retrieve a few most similar cases from a large database, which in turn helps us to avoid complications of modelling and case adaptation.

Such a fuzzy k-nn system can improve the technique of persistence climatology (PC) by achieving direct, efficient, expert-like comparison of past and present weather cases. PC is a sort of analog forecasting technique that is widely recognized as a formidable benchmark for short-range weather prediction. Until now, PC systems have had two built-in constraints: they represented cases in terms of the memberships of their attributes in predefined categories and they referred to a preselected combination of attributes-defined and selected before receiving the precise and numerous details that characterize any present weather case. However, the fuzzy k-nn system compares past and present cases directly and precisely in terms of their numerous salient attributes. The fuzzy k-nn method is not tied to specific categories nor is it constrained to using only a specific limited set of predictors. Thus it enables a pure form of analog forecasting. It is a flexible method for data mining huge weather archives. Forecasters regard such a system as "custom climatology on-the-fly." Such a system for making airport weather predictions will let us tap many, large, unused archives of airport weather observations, ready repositories of temporal cases. This will help to make airport weather predictions more accurate, which will make air travel safer and make airlines more profitable.

Ensemble forecasting is a method to obtain more useful results from models: numerous differently perturbed models are run in parallel and the distribution of the outputs of the model ensembles is examined (Stensrud et al. 1999). Copying this approach, analog ensembles can help us to get more useful results out of analog forecasting. If the few analogs are similar, if they are clustered and proceed along similar paths over time, then confidence in a forecast is high. If the analogs are relatively dissimilar and "fan out" quickly over time, then confidence in a forecast is low.

Accordingly, a fuzzy k-nn based prediction system, called WIND-1, is proposed. Its unique component is an expertly tuned fuzzy k-nn algorithm with a temporal dimension. It has been tested with the problem of producing 6-hour predictions of cloud ceiling and visibility at an airport, given a database of over 300,000 consecutive hourly airport weather observations (36 years of record). Its prediction accuracy was measured with standard meteorological statistics and compared to a benchmark prediction technique, persistence. In realistic simulations, WIND-1 was significantly more accurate (Hansen and Riordan 1998).

  1. Review of fuzzy logic in meteorology

Fuzzy logic is an established methodology that is widely used to model systems in which variables are continuous, imprecise, or ambiguous. Fuzzy logic is used in thousands of applications, in areas such as: transportation, automobiles, consumer electronics, robotics, computers, computers, telecommunications, agriculture, medicine, management, and education (Munakata and Jani 1994). The main idea of fuzzy logic is that items in the real world are better described by having partial membership in complementary sets than by having complete membership in exclusive sets. Zadeh (1965) first defined a fuzzy set as follows: "A fuzzy set is a class of objects with a continuum of grades of membership. Such a set is characterized by a membership (characteristic) function which assigns to each object a membership ranging between zero and one." This has the effect of increasing the resolution and the fidelity of categorization.

Fuzzy logic has increasingly over the past few years become a mainstream technique in a variety of environmental domains. However, fuzzy logic has so far rarely been used to predict weather. As a basic technique, fuzzy logic is used in hundreds of environmental software systems. It is represents linguistically-expressed domain knowledge and operates on diverse forms of continuous data-such types of knowledge and data are typical in environmental problems. Environmental domains where fuzzy logic presently operates effectively include agriculture, climatology, earthquakes, ecology, fisheries, geography, geology, hydrology, meteorology, mining, natural resources, oceanography, petroleum industry, risk analysis, and waste management (Hansen et al. 1999). Two sorts of applications of fuzzy logic in weather prediction are expert systems and case-based reasoning (CBR) systems, as described in the following two sections.

  1. Fuzzy expert systems for weather prediction

Maner and Joyce (1997) built a weather prediction system, called WXSYS. They obtained simple weather prediction rules from experts and weather almanacs, and implemented these rules in system using a fuzzy logic rule base. For example, one rule they used is: "Weather will be generally clear when the wind shifts to a westerly direction. The greatest change occurs when the wind shifts from east through south to west."

According to Maner and Joyce (1997), "there are at least three reasons why fuzzy logic seems ideally suited for weather forecasting," namely:

  • The phrases used in conventional forecasts are inherently and intentionally fuzzy.
  • "Fuzzy logic is known to work in this domain."
  • "The weather domain meets the general conditions under which a fuzzy solution is thought to be appropriate."

Fuzzy logic has been used to build expert systems to predict fog and to predict wind. Sujitjorn et al. (1994) and Murtha (1995) separately built systems to predict fog at an airport. Hadjimichael et al. (1996) and Kuciauskas et al. (1998) together built a fuzzy system, called MEDEX, for forecasting gale force winds in the Mediterranean. All of these systems are conceptually based on the classic fuzzy rule base approach to fuzzy systems. 1 How they differ is in the particular fuzzy rules elicited from experts. For example, the MEDEX system uses rules of the form "if pressure gradient is very large…then…", and so on.

Hansen (1997) built a fuzzy expert system for critiquing marine forecasts, called SIGMAR. Like the above fuzzy expert systems, expert-specified fuzzy sets are at its core. Unlike the above fuzzy expert systems, it does not process a series of fuzzy rules (e.g., if A and B then C). Instead it measures similarity using fuzzy sets: it measures the similarity between a current valid marine forecast and the actual marine observations directly by using fuzzy sets, rather than, as is usually done, indirectly by using categories (e.g., "Observation in category 1 and forecast in category 2.").

SIGMAR continuously critiques marine forecasts: it automatically monitors a stream of real-time of observations, assesses where and to what degree a marine forecast is accurate or inaccurate, or tending to become inaccurate, and reports to forecasters. SIGMAR helps marine forecasters to quickly identify any wind reports that contradict the marine forecast. This helps forecasters to maintain a weather watch and to respond quickly in situations where marine forecasts need to be amended.

  1. Fuzzy CBR systems for weather prediction

Actually, fuzzy expert systems and CBR systems for weather prediction overlap. Tag et al. (1996), following the example of Bardossy (1995), used fuzzy logic to automate the recognition of patterns of upper air wind flow. This pattern information was used as predictive input in a fuzzy expert system (MEDEX, described above).

Fuzzy logic has been used to emulate human expert classification of climate (McBratney and Moore 1985) and climatological circulation patterns (Bardossy et al. 1995).

To the best of our knowledge, our current line of work is the only work which combines the three topics of fuzzy logic, CBR and weather prediction in a single system (Hansen and Riordan 1998). Given a present incomplete weather case to predict for, we used a fuzzy k-nn algorithm to find similar past weather cases in a huge weather archive to make predictions from.

Granted, the individual three methods are, by themselves, basic: using fuzzy sets to measure similarity is a basic application of fuzzy set theory, k-nearest neighbors is a basic CBR method, and analog forecasting is a primitive weather prediction technique. But when these three methods were combined into one system, with an expert's knowledge of what features are salient and how, with the knowledge encoded as fuzzy sets, and the system was provided with a huge archive of weather observations, the results were encouraging (Hansen and Riordan 1998). The system's prediction accuracy was measured with standard meteorological statistics and compared to a benchmark prediction technique, persistence. In realistic simulations, the system was significantly more accurate.

  1. Data

Airport weather observations (METAR's) are routinely made at all major airports on the every hour on the hour. Our database consists of a flat-file archive of 315,576 consecutive hourly weather observations from Halifax International Airport. These observations are from the 36-year period from 1961 to 1996, inclusive. Based on the advice of an experienced forecaster, we represent each hour with 12 selected attributes: 11 continuous attributes and 1 nominal attribute (i.e., precipitation) as shown in Figure 1.

The file size is 6 Megabytes. The file is in a standard, column-delimited ASCII format, hence no preprocessing is needed. Very few values are missing and most of the reports appear to be reliable (i.e., plausible), hence, no additional quality control is applied to the file prior to its use.

CategoryAttribute Units
temporal dateJulian date of year (wraps around)
hourhours offset from sunrise/sunset
cloud ceiling cloud amount(s) tenths of cloud cover (for each layer)
and visibility cloud ceiling height height in metres of 6/10ths cloud cover
visibilityhorizontal visibility in metres
wind wind directiondegrees from true north
wind speedknots
precipitation precipitation type "nil", "rain", "snow", etc.
precipitation intensity "nil", "light", "moderate", "heavy"
spread and dew point temperature degrees Celsius
temperature dry bulb temperature degrees Celsius
pressure pressure trend kiloPascal hour -1

Figure 1. Twelve attributes of an airport weather observation (METAR).

  1. Fuzzy k-nearest neighbor analog forecasting method

The method consists of three steps: a) Configure fuzzy sets to measure similarity, b) Traverse case base to find analogs, and c) make predictions based on a weighted median of the k-nn-explained as follows.

  1. Configure fuzzy sets to measure similarity

As the expert describes fuzzy relationships between attributes using fuzzy words, corresponding fuzzy sets are constructed to emulate expert comparison. Thus, expert imparts their sense of discrimination via fuzzy words into fuzzy sets. Thus, we acquire knowledge about how to compare three kinds or attributes: continuous numbers, absolute numbers (i.e., magnitude), and nominal attributes (e.g., showers and rain). And we acquire knowledge about how to weight recency, or in other words, how to forget older dissimilarities. This acquired knowledge is represented below in four functions- mc, ma, mn, mf-in Figure 2, Figure 3, Figure 4, and Figure 5.

  1. Continuous-number attributes

For each continuous attribute, xi, the expert specifies a value of ci which is the threshold for considering two such attributes to be near each other. A fuzzy set is constructed accordingly as shown in Figure 2.

Figure 2. Fuzzy set for continuous-number attributes. Similarity-measuring function emulates how expert evaluates degree to which continuous attributes are near each other. Expert specifies value of c corresponding near such that m (x1 - x2) 0.50 "x1 is near x2". Tails taper off asymptotically towards 0.0, such that m(x) > 0.0, which prevents null results from searches.

Comparing two homogeneous, continuous attributes with a fuzzy set, as shown in Figure 2, is a basic application of fuzzy sets. Multiple attributes of cases can be weighed collectively by aggregating the result of a set of such operations (e.g., taking the "max of the min"). Each fuzzy set enables the sim function to match based on individual attributes. As sets are added for multiple attributes, the sim function gains the ability to match more complicated cases.

Fuzzy sets such as the one shown in Figure 2 are used to compare the attributes of date of the year, hour of the day, wind direction, dew point temperature, dry bulb temperature, and pressure trend.

Date of the year and hour of the day are important temporal attributes because weather strongly correlates to seasonal and diurnal cycles. The closer these attributes of two cases are to each other, the more analogous the cases are. For example, two cases are considered near each other if they are within 30 Julian days of each other and their offsets from sunrise/sunset are within one hour of each other.

  1. Absolute-number attributes

If attributes are limited to the zero-or-above range (e.g., absolute wind speed), then it is their relative magnitudes that are important for matching. Therefore, they are compared using a modified ratio operation, with special routines to handle for values near zero, as shown in Figure 3.

The fuzzy decision surface shown in Figure 3 is used to compare the attribute of wind speed. Surfaces similar to the one shown in Figure 3 are used to compare the attributes of cloud amount(s), cloud ceiling height, and visibility.

Fuzzy decision surface

Figure 3. Fuzzy decision surface for absolute-number attributes. Fuzzy similarity-measuring surface measures how similar two absolute values are to each other. The above surface determines the similarity of two wind speeds, x1 and x2, where speed is measured in knots. Wind speed values above 32 are truncated to 32. (Click here for larger image.)

  1. Nominal attributes

To compare nominal attributes, such as precipitation type, a similarity measuring table (a diagonally symmetric matrix) is used of the form shown in Figure 4. Knowledge acquisition can be performed by having the expert fill in a questionnaire which is formatted as a table.

The table of fuzzy relationships shown in Figure 4 is used to compare the attribute of precipitation type. A table similar to that shown in Figure 4 is used to compare the attribute of precipitation intensity.

Nil
1.00
mn(type1, type2)
Drizzle
0.02
1.00
Showers
0.03
0.50
1.00
Rain
0.01
0.50
0.75
1.00
Nil
Drizzle
Showers
Rain

Figure 4. Fuzzy relationships between nominal attributes. Similarity-measuring table measures how similar two nominal attributes are to each other. Actual table describes relationships between 24 types of precipitation.

  1. Forget older attributes

The similarity of two cases is determined according to their newest and their most dissimilar attributes. The older attributes are in compared cases-that is, the farther back in time they are from their respective time-zeroes-the less weight is accorded to their dissimilarity. In effect, this is the same as forgetting older attributes in comparing cases. Such a forgetting function is shown in Figure 5. After two comparable attributes of two cases are compared to yield a similarity value, , the value of is moderated using the forgetting function, such that sim = max {m, mf(t)}.

So, with reference to Figure 5, we see that 3-hour-old attributes can never imply sim < 0.6, whereas time-zero attributes or auxiliary predictors (with t > 0), can imply sim 0.0.

The more recent an attribute is, the more important it is for matching. Likewise, any auxiliary predictors, such as NWP, are important for matching. Each case has a temporal span of 24 hours composed of three parts: 12 recent past hours, 1 time-zero hour, and 12 future hours. preceding respective "time-zeroes" The contributions to similarity measurement of cases, from corresponding hours of cases, are weighted to maximize the contribution of recent hours and to maximize the contribution of any available foreknowledge (e.g., guidance from NWP), as shown in Figure 5.

Figure 5. Fuzzy weighting for recency of attributes. The older attributes in compared cases are, the less their dissimilarity is weighted, hence the function emulates forgetting of less relevant older attributes.

  1. A worked-out example of similarity measurement

Three simplified weather cases are shown in Figure 6. The present case represents the case to predict for. Analogs 1 and 2 represent two hypothetical analogs from the weather archive to make predictions from. For purposes of illustration, only seven-hour-long cases are considered and only three weather attributes are presented: cloud ceiling, wind direction, and precipitation type; these attributes are, respectively, absolute, continuous, and nominal, as described above. Longer cases with more attributes would be handled by extension of the technique shown.

The three attributes presented in Figure 6 are sufficient to demonstrate each of the fuzzy similarity-measuring operations described above-ma, mc, mn, and mf(t)-as shown in Figure 7 and Figure 8.

The grayed-out values of wind direction and precipitation for the future parts of the present case in Figure 7 are prevision obtained from auxiliary predictors, such as computer models or humans. Existing methods forecast large-scale phenomena, such as wind and precipitation, more effectively than they forecast small-scale phenomena, such as cloud ceilings at a particular airport.

present
analog 1
analog 2
time
cloud
ceiling
(dam)
wind
dirn.
(deg.)
pcpncloud
ceiling
(dam)
wind
dirn.
(deg.)
pcpn. cloud
ceiling
(dam)
wind
dirn.
(deg.)
pcpn.
t-3
9 200shwrs 12190rain 9170drzl
t-2
12 230nil 15220nil 9210nil
t-1
15 230nil 21220nil 12220nil
t-0
21 210nil 30220nil 15210nil
t+1
30 320nil 24330nil 21310nil
t+2
24 320nil 30330nil 24310nil
t+3
999 330nil 999340nil 750320nil

Figure 6. Present case and two analogs. In a forecast setting, the predictand, cloud ceiling, which is "blacked-out," is difficult to predict. However, the accompanying values of wind direction and precipitation, which are "grayed-out," are relatively easy to predict by using available guidance.

ceiling
wind dirn.
pcpn.
time
present analog 1 ma1 presentanalog 1 mc1 presentanalog 1 mn1
t-3
9 120.75 2001900.88 shwrsrain0.75
t-2
12 150.80 2302200.88 nilnil1.00
t-1
15 210.71 2302200.88 nilnil1.00
t-0
21 300.70 2102200.88 nilnil1.00
t+1
? 240- 3203300.88 nilnil1.00
t+2
? 300- 3203300.88 nilnil1.00
t+3
? 999- 3303400.88 nilnil1.00

(a)  Comparing analog 1 to present case.

ceiling
wind dirn.
pcpn.
time
present analog 2 ma2 presentanalog 2 mc2 presentanalog 2 mn2
t-3
9 91.00 2001700.38 shwrsdrzl0.50
t-2
12 90.75 2302100.50 nilnil1.00
t-1
15 120.80 2302200.88 nilnil1.00
t-0
21 150.71 2102101.00 nilnil1.00
t+1
? 21- 3203100.88 nilnil1.00
t+2
? 24- 3203100.88 nilnil1.00
t+3
? 750- 3303200.88 nilnil1.00

(b)  Comparing analog 2 to present case.

Figure 7. Similarity measurement between a present case and two past analogs. a measures the similarity between their absolute values of ceiling height (Figure 3), c is the similarity between their continuous values of wind direction (c=20 in Figure 2), and n is the similarity between their nominal types of precipitation (Figure 4).

ceiling
wind dirn.
pcpn.
t
ma1 mf(t) maxa1 mc1 mf(t) maxc1 mn1 mf(t) maxn1
-3
0.75 0.600.75 0.880.60 0.88 0.750.60 0.75
-2
0.80 0.400.80 0.880.400.88 1.000.401.00
-1
0.71 0.200.71 0.880.200.88 1.000.201.00
0
0.70 0.000.70 0.880.000.88 1.000.001.00
1
-0.88 0.000.88 1.000.001.00
2
-0.88 0.000.88 1.000.001.00
3
-0.88 0.000.88 1.000.001.00
min = 0.70 min =0.88 min =0.75
min { maxa1, maxc1, maxn1 } = min { 0.70, 0.88, 0.75 } = 0.70

(a)  For analog 1, the "min of the maxes" equals 0.70, due to a dissimilarity between cloud ceilings at time t-0.
Assign to analog 1 this value of similarity to the present case.

ceiling
wind dirn.
pcpn.
t
ma2 mf(t) maxa2 mc2 mf(t) maxc2 mn2 mf(t) maxn2
-3
1.00 0.601.00 0.380.600.60 0.500.600.60
-2
0.75 0.400.75 0.500.400.50 1.000.401.00
-1
0.80 0.200.80 0.880.200.88 1.000.201.00
0
0.71 0.000.71 1.000.001.00 1.000.001.00
1
-0.88 0.000.88 1.000.001.00
2
-0.88 0.000.88 1.000.001.00
3
-0.88 0.000.88 1.000.001.00
min = 0.71 min =0.50 min =0.60
min { maxa2, maxc2, maxn2 } = min { 0.71, 0.50, 0.60 } = 0.50

(b)  For analog 2, the "min of the maxes" equals 0.50, due to a dissimilarity between wind directions at time t-2.
Assign to analog 2 this value of similarity to the present case.

Figure 8. Raise old low values of similarity-in effect, "forget" old dissimilarities with mf(t) (Figure 5). Then determine the minimum of the maximum of all the similarities between past case and present case.

The just described process of similarity measurement of temporal cases is the most complicated process in the fuzzy k-nn algorithm for prediction. The subsequent two process are relatively simple and explained briefly as follows.

  1. Traverse case base to find analogs

Traverse the case base measuring the similarity between past cases and a present case and simultaneously maintain an ordered linked list of the k most similar cases. Make every case-to-case similarity measuring process only as detailed as necessary. If initial attribute-to-attribute tests imply strong dissimilarity between cases -- sufficient to exclude the past case in question from the k-nn set -- then terminate the similarity measurement process for that past case and proceed to the next past case.

  1. Make predictions based on a weighted median of the k-nn

For purposes of illustration, we assume that we sought only two analogs for the present case, that is, k = 2. The weighted median calculation easily extends to higher values of k.

Figure 8 shows that between analog 1 and the present case the degree of similarity equals 0.70, and between analog 2 and the present case the degree of similarity equals 0.50. Hence, a prediction for the present case should consist of such proportional parts of analog 1 and analog 2, as shown in Figure 9.

time
analog 1analog 2 predictionactual
t+1
(0.7 * 24+ 0.5 * 21) / (.7+.5) =23 30
t+2
(0.7 * 30+ 0.5 * 24) / (.7+.5) =28 24
t+3
(0.7 * 999+ 0.5 * 750) / (.7+.5) =895 999

Figure 9. Prediction of cloud ceiling based on weighted median of k-nn.

  1. Future work

Our short-term objective is to perform a series of five experiments to test parts of the system, as follows.
  • Vary attribute set.
  • Vary k.
  • Vary size of case base.
  • Vary fuzziness.
  • Test system against persistence.

Our long-term objectives are to improve the improve the system, as follows.

  • Port the system to other airports.
  • Incorporate real-time observations and recent NWP guidance.
  • Incorporate additional predictive information, such as projections of radar images of precipitation and satellite images of cloud.
  • Enable the system to learn autonomously.

  1. Acknowledgments

I wish to thank my colleagues in the Atmospheric Environment Service (AES) of Environment Canada for their guidance during the development of this thesis-related research. I also wish to thank AES for partly sponsoring this research and for providing the necessary data and computer facilities.

  1. References

Bardossy, A., Duckstein, L., and Bogardi, I., 1995: Fuzzy rule-based classification of atmospheric circulation patterns, International Journal of Climatology, 15, 1087-1097.

Hadjimichael, M., Kuciauskas, A. P., Brody, L. R., Bankert, R. L., and Tag, P. M., 1996: MEDEX: A fuzzy system for forecasting Mediterranean gale force winds, Proceedings of FUZZ-IEEE 1996 IEEE International Conference on Fuzzy Systems, 529 -534.

Hansen, B. K., 1997: SIGMAR: A fuzzy expert system for critiquing marine forecasts, AI Applications, Vol. 11, No. 1, 59-68.

Hansen, B. K., Bankert, R., and Hadjimichael, M. (eds.), 1999: Fuzzy logic in environmental sciences: A bibliography, http://chebucto.ns.ca/~bjarne/fuzzy_environment, downloaded Sept. 27, 1999.

Hansen, B. K., and Riordan, D., 1998: Fuzzy case-based prediction of ceiling and visibility, Preprints of the 1st Conference on Artificial Intelligence, American Meteorological Society, 118-123.

Keller, J. M., Gray, M. R., and Givens Jr., J. A., 1985: A fuzzy k-nearest neighbor algorithm, IEEE Transactions on Systems, Man, and Cybernetics, Vol. 15, No. 4, 258-263.

Kosko, B., 1997: Fuzzy engineering, Prentice Hall, New Jersey, USA.

Kuciauskas, A. P., Brody, L. R., Hadjimichael, M., Bankert, R. L., and Tag, P. M., 1998: MEDEX: Applying fuzzy logic to a meteorological expert system, Preprints of the 1st Conference on Artificial Intelligence, American Meteorological Society, 68-74.

Maner, W., and Joyce, S., 1997: WXSYS: Weather Lore + Fuzzy Logic = Weather Forecasts, presented at 1997 CLIPS Virtual Conference, http://web.cs.bgsu.edu/maner/wxsys/wxsys.htm, downloaded Feb. 27, 1999.

Martin, D. E., 1972: Climatic presentations for short-range forecasting based on event occurrence and reoccurrence profiles, Journal of Applied Meteorology, 11, 1212-1223.

McBratney, A. B., and Moore, A. W., 1985: Application of fuzzy sets to climatic classification, Agricultural and Forest Meteorology, 35, 165-185.

Munataka, T., and Jani, Y., 1994: Fuzzy systems: An overview, Communications of the ACM, Vol. 37, No. 3, 69-76.

Murtha, J., 1995: Applications of fuzzy logic in operational meteorology, Scientific Services and Professional Development Newsletter, Canadian Forces Weather Service, 42-54.

Stensrud, D. J., Brooks, H. E., Du, J, Tracton, M. S., and Rogers, E., 1999: Using ensembles for short-range forecasting, Monthly Weather Review, Vol. 127, No. 4, 433-446.

Sujitjorn, S., Sookjaras, P., Wainikorn, W., 1994: An expert system to forecast visibility in Don-Muang Air Force Base, 1994 IEEE International Conference on Systems, Man and Cybernetics (Humans, Information and Technology) (2-5 Oct., 1994), IEEE, NY, NY, USA, 2528-2531.

Tag, P. M., Hadjimichael, M., Brody, L. R., Kuciauskas, A. P., and Bankert, R. L., 1996: Automating the subjective recognition of 500 mb wind patterns as input to a meteorological forecasting system, Proceedings of the 15th Conference on Weather Analysis and Forecasting, American Meteorological Society, 347-350.

Viot, G., 1993: Fuzzy logic in C, Dr. Dobb's Journal, February 1993 (special issue on Cognitive Computing), pgs. 40-49 and 94.

Zadeh, L. A., 1996: Fuzzy Logic = Computing with Words, IEEE Transactions on Fuzzy Systems, Vol. 4, No. 2, 103-111.

Zadeh, L. A., 1965: Fuzzy sets, Information and Control, Vol. 8, 338-353.

Zimmerman, H. J., 1991: Fuzzy set theory and its applications (2nd edition), Kluwer Academic Publishers.


1. The fuzzy rule base approach to expert systems is explained by Zimmerman (1991). Kosko (1997) refers to the rule base as a "fuzzy associative memory" and describes the process of rule resolution as firing all rules partially and in parallel and take a balanced average. Viot (1993) describes a fuzzy rule based system balance an inverted pendulum (a benchmark problem for fuzzy systems) and convincingly demonstrates how simple the system is by providing compilable C code for the system on one page.


This online paper is based on:

Bjarne K. Hansen, 2000: Analog forecasting of ceiling and visibility using fuzzy sets, Preprints of the 2nd Conference on Artificial Intelligence, American Meteorological Society, 1-7.

* Corresponding author address:

Bjarne K. Hansen
New Brunswick Weather Centre
Meteorological Service of Canada
Environment Canada
77 Westmorland Street, Suite 400
Fredericton, New Brunswick
Canada   E3B 6Z3

E-mail: bjarne@cs.dal.ca