created by bob wirtz 20140203

initial commit

/*////////////////////////////////////////////////////

 ANINEA - ANcient INscription rEAder

 _____________________________________________________________

 DESCRIPTION ...

 the program recognizes, memorizes, and learns symbols by converting images
 and what it sees into numbers and comparing them.

 all these actions occur in separate steps in order
 for the program to run smoothly and not be too slow, also the
 screen view size is relatively small for the same reason. besides,
 people operate in the same way, it's just that they do it so quickly
 that the entire process seems instantaneous.

 neuron weights are recorded so when the program is opened again it doesn't have
 to relearn anything.

 .......................................

 ISSUES ...

 increasing levels of abstraction so neural net can be able to recognize despite visual distortion and noise

 optimization

 reading pixel array text information as binary

 :::::::::::

 each neuron or group of neurons must be handled by an individual processor in order for
 the entire net to run in parallel (like an actual brain would). possible solutions to this
 include using a dedicated computer (cheap laptop or mac mini?) with multiple processors
 and/or networked computers (possibly raspberry pi?), with each computer again acting either
 as a single or small group of neurons. if a networked computer approach is taken, a single
 computer will need to act as a master terminal.

 this would additionally require parallel programming (in c++ or linux?) and computer networking,
 so again, this program in processing is just a draft. if raspberry pi is used, debian programming
 will be needed.

 :::::::::::

 a more efficient algorithm is needed for converting numbers to pixels. this could be done
 using optimization (see processing book).

 :::::::::::

 all recorded data will be in binary to be more optimized. converting from binary back into
 the program is still a problem.

 :::::::::::

 at least two neurons will be needed in order to overcome the XOR limitation. knowledge of calculus
 isn't required for this, but will be for a larger neural net with more neurons.

 .......................................

 ////////////////////////////////////////////////////////////*/

///////////