August 30, 2008, 11:59 am

We've come a long way from the German Enigma machine of WWII.
Ever since humans began communicating, they needed to communicate in secret. Whether it be sending military plans, political diplomacy, or just peace of mind, people have always had an interest in scrambling their communications. This is the study of cryptography. Just as old, however, is the study of breaking those codes.
For centuries, mathematicians have developed various ways of ciphering information, just to have their methods cracked shortly thereafter. One of the most recent examples of this was telegraph communications during WWII. The Germans had developed the Enigma machine, which went uncracked for most of the war. Cracking the Enigma was one of the crucial parts of the Allied victory. (Incidentally, Alan Turing was instrumental in cracking the Enigma). In this article, we’ll discuss a special kind of crypto, called public-key crypto.
Continue reading ‘Public-Key Cryptography’ »
August 6, 2008, 2:33 pm
Chaos Theory is also referred to as "The Butterfly Effect", where the occurrence of a hurricane is determined by whether or not a butterfly flaps its wings.
There are two kinds of theories out there: ones that say “Hey, look I found something new! Look what we can do!” and then there are ones that say “Remember when we thought we might be able to do that thing, well it turns out we can’t”. Chaos theory is the latter – it turns out that we aren’t as capable as we thought in predicting patterns, despite the recent revolutions in technology.
Continue reading ‘Chaos Theory: A Quick Introduction’ »
August 6, 2008, 2:13 pm

This happens to be the first fractal I ever wrote. It's based on self-similarity, but that's because it's a toy example.
People often associate fractals with self-similarity and it is too often assumed that a fractal is just a figure that repeats itself to as one zooms in on it.
This definition of fractals, however, is inaccurate because not every figure which is self-similar is a fractal. The technical definition of a fractal is “a figure with a fractional dimension”. In short, a fractal is a geometric figure which has a non-whole dimension.
Continue reading ‘Demystifying Self-Similarity’ »
August 6, 2008, 1:17 pm

DNA: The real fabric of our lives!
How do you approach problems you don’t know how to solve? Do you analyze it down to its roots until you get a logical solution? Maybe you just jump in and try something to see how well it works, then maybe modify it until the problem is solved? Genetic Algorithms use the latter try-it-and-modify-it approach to solve complicated problems by creating many solutions to their particular problem and measuring those solutions’ efficacy.
I’ve done a considerable amount of work in this area an undergraduate/hobbyist. If you want more to learn about GAs, then this is the place to be! This article gives a very brief overview and table of contents.
Continue reading ‘Introduction to Genetic Algorithms’ »
August 6, 2008, 12:49 pm

Screen Capture from WZebra (one of the best computer players out there)
Othello is a very simple board game where two opponents attempt to capture each other’s pieces to get the more of their color at the end of the game. At the higher levels, this game can be as difficult as Chess. It makes for a great Artificial Intelligence problem for programmers to work on because the game has a definite midgame and endgame parts.
When I began working in C++ as a high school student, this was one of the first problems I tackled. My goal was to create an Othello player which was capable of beating me. In the end, my player was able to beat a random mover every time, and it even beat me a few times, but I could usually beat it if I was trying hard enough. This article will briefly go over my methods of madness for creating a semi-intelligent Othello player.
Continue reading ‘Intelligent Othello’ »