I've chosen to study and to use A.I. because I like to program something more intelligent than people who studied plain computers and informatics. The methods and elements of A.I. are interesting and programming and learning them is fun (but sometimes also pain). Somehow I have enjoyed my study on Department of cybernetics and artificial intelligence (link).
Neural Networks
I like them very much, that's why I've chosen the application of neural networks as my master's thesis. I have also done couple other programs using artificial neural networks. The best thing about neural networks is that you can teach them on almost any kind of problem and they will do the job nicely.
Evolutionary Algorithms
They are something like improvement of blind state-space searching based on the principles observed from nature (like crossover and mutation of subjects), so they are more effective. There is a lot of theory about how to make them work well and they can be (are) used widely (even in military technologies).
Fuzzy logic
The use of fuzzy logic is a bit strange, also usage of fuzzy logic in any application is controversial as I think that other parts of A.I. are more suited for most of the problems than fuzzy logic. I have some experiences with fuzzy logic regulator setting but it was a painful experience ;-) But maybe I will find the magic of fuzzy logic someday...
Speech recognition
A great part of A.I. on which I will (hopefully) focus more in the near (or distant?) future. Many methods for words and continuous speech recognition with some advantages and disadvantages. I've done only Fast Fourier Transformation (but all by myself), which needed for every speech recognition method.
Programming languages of A.I.
You may have probably heard about LISP or Prolog, which are the programming languages of A.I. Prolog is used for all the applications in which predicate logic can be (or must be) used because Prolog is all about predicate logic. The situation is different with LISP, which is a very smart object-oriented language (little bit similar to Java) with features that many modern programming languages lack. If you're about to write a application with symbolic rules, recursion and new rule deduction, then LISP is your friend.
Knowledge based systems
Even if you don't like MS Windows "Help and support" application (which should help users with computer trouble but mostly it doesn't), knowledge based systems are great when you need an expert which doesn't need to sleep and doesn't need a long time to remember the solution to a known problem. There are many knowledge based systems which do they job very well (in medicine, banking, etc.).
