Georgia Climate Data by James Pate Williams, Jr.

Abstract

I became interested in attempting to predict temperatures in the state of Georgia way back in the day, i.e., the date was November 1 – 4, 2009. I found a neat website for the temperatures from January 1895 to December 2001. Unfortunately, the website no longer exists online, however, I saved the data to an extinct PC of mine and a USB solid state drive. I used two methods to attempt predictions of the annual temperatures from January 2002 to December 2025. The first algorithm is polynomial least squares curve fitting [1]. The second method is a radial basis function neural network [2] [3] that is trained by an evolutionary hill-climber of my design and implementation [4] [5]. The applications were written in one of my favorite computer programming languages, namely, C# [6].

Methodologies

I created a polynomial least squares dynamic-link library (DLL) using Gaussian elimination with pivoting and an inverse matrix calculation utilizing an upper-triangular matrix [7]. At first the driver application was capable of fitting a 1-degree to 100-degrees polynomial. I found that my algorithm was only valid for a 1-degree to 76-degrees fitting polynomial. I used degrees: 1, 4, 8, 16, 32, 64, and 76.

Predicted Statewide Georgia Annual Average Temperatures in Degrees Fahrenheit
Poly Degree14816326476Model
YearT (F)T (F)T (F)T (F)T (F)T (F)T (F)Average
200264.263.163.863.662.463.062.963.3
200364.263.263.663.464.163.763.763.7
200464.263.363.463.464.563.964.063.8
200564.263.363.463.564.263.964.063.8
200664.263.463.463.663.863.763.863.7
200764.263.563.463.763.363.663.663.6
200864.263.663.463.763.063.463.463.5
200964.263.663.463.762.963.363.363.5
201064.163.763.563.762.963.363.263.5
201164.163.863.663.663.163.363.263.5
201264.163.863.763.663.363.463.363.6
201364.163.963.763.663.663.563.563.7
201464.163.963.863.663.963.663.663.8
201564.164.063.963.664.163.863.863.9
201664.164.063.963.664.363.963.964.0
201764.164.164.063.764.464.064.164.1
201864.164.164.163.764.464.164.264.1
201964.164.264.163.964.464.264.264.2
202064.164.264.264.064.364.364.364.2
202164.164.364.264.164.264.364.364.2
202264.164.364.264.264.264.364.364.2
202364.164.364.364.364.164.364.364.2
202464.064.464.364.564.064.364.364.3
202564.064.464.364.664.064.364.364.3

The second method was a radial basis function neural network that was trained by an evolutionary hill-climber of my design and implementation. I used 8, 16, 32, 64 basis functions. The population of the hill-climber was 16 and generations 262,144.

Predicted Statewide Georgia Annual Average Temperatures in Degrees Fahrenheit
Basis8163264Model
YearT (F)T (F)T (F)T (F)Average
200265.464.265.465.265.1
200365.564.265.465.265.1
200465.564.265.565.365.1
200565.564.265.565.365.1
200665.664.265.565.365.2
200765.664.265.665.365.2
200865.664.265.665.465.2
200965.764.265.665.465.2
201065.764.265.665.465.2
201165.764.265.765.465.3
201265.764.265.765.565.3
201365.864.265.765.565.3
201465.864.265.865.565.3
201565.864.365.865.565.4
201665.964.365.865.665.4
201765.964.365.865.665.4
201865.964.365.965.665.4
201966.064.365.965.665.5
202066.064.365.965.765.5
202166.064.366.065.765.5
202266.064.366.065.765.5
202366.164.366.065.765.5
202466.164.366.165.865.6
202566.164.366.165.865.6

I trust the polynomial fitting results more than the radial basis function neural network values. The polynomial fitting had mean square errors < 1 whereas the radial basis function neural network had mean square errors between 1 and 9. The general trends were increasing temperatures which are in line with the theorized global warming.

References

[1]H. T. Lau, A Numerical Library in C for Scientists and Engineers, Boca Raton: CRC Press, 1995.
[2]T. M. Mitchell, Machine Learning, Boston: WCB McGraw-Hill, 1997.
[3]A. P. Engelbrecht, Computational Intelligence An Introduction, Hoboken: John Wiley and Sons, 2002.
[4]Z. Michalewicz, Genetic Algorithms + Data Structures = Evolutionary Programs 3rd Edition, Berlin: Springer, 1999.
[5]D. B. Fogel, Evolutionary Computation Toward a New Philosophy of Machine Intelligence, Piscataway: IEEE Press, 2000.
[6]C. Petzold, Programming Windows with C#, Redmond: Microsoft Press, 2002.
[7]S. D. Conte and C. d. Boor, Elementary Numerical An Algorithmic Approach, New York: McGraw-Hill Book Company, 1980.
Unknown's avatar

Author: jamespatewilliamsjr

My whole legal name is James Pate Williams, Jr. I was born in LaGrange, Georgia approximately 70 years ago. I barely graduated from LaGrange High School with low marks in June 1971. Later in June 1979, I graduated from LaGrange College with a Bachelor of Arts in Chemistry with a little over a 3 out 4 Grade Point Average (GPA). In the Spring Quarter of 1978, I taught myself how to program a Texas Instruments desktop programmable calculator and in the Summer Quarter of 1978 I taught myself Dayton BASIC (Beginner's All-purpose Symbolic Instruction Code) on LaGrange College's Data General Eclipse minicomputer. I took courses in BASIC in the Fall Quarter of 1978 and FORTRAN IV (Formula Translator IV) in the Winter Quarter of 1979. Professor Kenneth Cooper, a genius poly-scientist taught me a course in the Intel 8085 microprocessor architecture and assembly and machine language. We would hand assemble our programs and insert the resulting machine code into our crude wooden box computer which was designed and built by Professor Cooper. From 1990 to 1994 I earned a Bachelor of Science in Computer Science from LaGrange College. I had a 4 out of 4 GPA in the period 1990 to 1994. I took courses in C, COBOL, and Pascal during my BS work. After graduating from LaGrange College a second time in May 1994, I taught myself C++. In December 1995, I started using the Internet and taught myself client-server programming. I created a website in 1997 which had C and C# implementations of algorithms from the "Handbook of Applied Cryptography" by Alfred J. Menezes, et. al., and some other cryptography and number theory textbooks and treatises.

Leave a comment