Kevin's A.I. Corner
Frank N. Stein
Neural Pages Gary's Tech Corner Motor Tech Corner Movie Robots Down loads Product Report
TRaCY Users Parts Trader Electronic Basics International Robot Builders Knight Rider
Club News Tools Join us at TRCY Robotic Arms Failures
Example Neural Networks : (here today)
The first example is a 2 d perceptron network (This is a very simple example, but thats the best place to start.)
The second example is a 6 d perceptron network! (Still simple but just a little more involved.) (Don't forget to brush up on your hyper cube, n-dimensional geometry! Just kidding we will get by without all the gory detail.)
About Neural Nets
Why Neural Nets? Are they good for Robots?
Sure why else would I research and find all of this stuff out? An example of a nearly completely Neural Robot is the ANT robot developed at West Virginia University. I volunteered with that project and so I learned about at least that one application of neural technology. You are probably using neural technology while you are reading this page. High speed modems are only possible though the use of Adaptive Signal Processing which is an application of neural technology.
But the best thing about neural networks is that they are artificial (meaning that you and I can put them together) and they think (not like a person but not like traditional computers either) and can do many useful things like help a robot think.
What is this page all about?
When I read the AI corner article it renewed my interest in Neural Nets remembering the ANT project. I wish in this page to give a "hands on approach " to learning about Neural Nets. Every so often when I can I will provide simple learning examples of neural nets that you can try out.
Can I run the examples?
Most of my examples will be in the form of Borland Turbo C++ programs for DOS. These programs work just fine under Windows 95 and Windows 98. You don't need Turbo C++ to run the programs you can run them and look at the source code with an editor of your choice.
For those of you on Mac's or Linux you should be able to run the programs in your DOS emulators. You may also re compile the provided source code and it should work in your environments as well. You will need access to a BGI like graphics library that will work with your compiler. Or you can modify the program to remove the graphics since for the most part the graphics are just eye candy anyway.
If this is Hands on then where can I find a more detailed explanation of the theory?
I encourage you to read about this at Neural Nets Dr K Gurney he has some excellent introductory material on neural nets. I will not repeat most of the information that Dr Gurney has already presented. Instead where appropriate I will show a link to the part of his book that applies to the current example. By the way Dr Gurney is publishing his book soon in print, I look forward to it.
But I don't know C or C++
Don't sweat the C++ part the code is mostly C code. If you don't know C then your missing out on the most powerful robot programming language I know of. Learn it. Read my book if you like or one of several other good books on learning C++ or C.
Fist learn to program for DOS. It is much easier than programming for Windows and for the most part you will want to program C on an embedded computer which is closer to DOS programming than Windows programming anyway.
Examples of the future : (not here yet)
Near Future examples will include Bidirectional Associative Memory (BAM) networks, Kahonan Networks, and Back Propagation Networks. Coming Soon.
In the far future (this year I hope) we will introduce Genetic Algorithms in Conjunction with Neural Networks in the form of Artificial Life simulations a personal interest of mine. This will most likely be a multi part series building up to the Artificial Life simulation.
Acknowledgments and thanks to other researchers
I wish to thank Dr. Gurney at the University of Sheffield in the UK for providing his into text on line.
I wish to thank Dr. Klinkachorn at WVU in Morgantown WV for the use of selected homework assignments from a Short Course on Neural Networks in these pages.
This page written by NeilChak a student of robotics at large.
If I am using a picture or text that you believe only you should have rights to, then e-mail me and I will rectify the problem.