home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Collection of Education
/
collectionofeducationcarat1997.iso
/
COMPUSCI
/
ET.ZIP
/
ET.DOC
next >
Wrap
Text File
|
1989-08-31
|
7KB
|
173 lines
1 Welcome to ET! April 30, 1989
ET is an artificial intelligence neural network (NN) demonstration program.
The program name ET is short for 'neuron' and derives from the Greek symbol
sigma for the summation of input weights (the keyboard letter 'E' suffices for
sigma) and capital 'T' for threshold activation. ET has a graphics and mouse
intuitive interface. Neuron threshold and weight inputs are manually set in
this demonstration to maintain simplicity and encourage a fundamental
understanding of neuron activation. The simulations are intended to be
theoretical.
Hardware requirements: EGA and mouse.
Software requirement : mouse driver must be called before executing ET!
Note: Before reading the operations listing you may consider executing ET to
get a 'feel' of the interface, and hopefully the explanations below will be
less necessary.
2 Operation of ET.
2.1 Terms used in this document:
* "Press a mouse button" refers to keeping your finger down on a key, while
possibly moving the mouse.
* "Click a mouse button" refers to an immediate push and release of a mouse
button.
* "Element" refers to an input node, neuron, or an output node.
* "Snapping" refers to neuron activation.
2.2 Creating Elements:
Press the left or right button of your mouse on menu options In, Neuron, and
Out to drag an element into the drawing area. If that element is released
on the border, on the menu, or on another element it is not created. Upon
release into the drawing area a key from the keyboard is requested for human
identification. The key must be alphanumeric else the element is not
created. The key is not used internally and need not be unique.
2.3 Moving an Element:
Press the left button of your mouse on an element to drag it. If that
element is released on the border, on the menu, or on another element it is
bounced back into it's former position.
2.4 Connecting onto an Element:
Press the right button of your mouse on an element an connect onto another
element with a release. Releasing the right button onto an empty region
will have no effect. Releasing the right button over a previous connection
will be ignored and result in a "Connect Repeat" error displayed, otherwise,
any element may be connected to any other element. Future versions will
allow a two way connection.
2.5 Neuron Weight Settings:
Click the right button of your mouse on a neuron to modify the neuron weight
inputs and threshold. A click of the right button of your mouse on an input
or output node will have no effect. Move the hand icon into the slide
settings and press your left or right mouse button to slide a weight or the
threshold value. Press the left or right button of your mouse out of the
neuron settings window to remove the neuron settings window. For a neuron to
'fire' or 'snap' the following inequality must be true:
sum of active weights
---------------------------- >= Threshold
sum of total input |weights|
For example assume a neuron say, neuron 1 with threshold=0.45 and three
input weights a=0.30, b=0.40, and c=0.25, then,
0.30*a_active+0.4*b_active+0.25*c_active
---------------------------------------- >= 0.45
|0.30|+|0.40|+|0.25| ?
where the x_active values are binary 0 or 1, and |x| = absolute value of
x.
The switching above is equivalent to the binary function,
OUT = A*B + B*C + C*A
For this neuron, if any two inputs are active the output will then become
active on the next step. What surprises me most about neuron snapping is
the seemingly binary behavior through an analog means. Neurons either snap
or remain dormant. The weight and threshold values control the effective
binary function. In the preceding example, if a=0.45, b=0.40, c=0.25 and
threshold=0.38 then the binary function becomes,
OUT = A + B*C
Greater decision independence is evident with the removal of the '*' or
'and' operator. Negation may also be configured with the help of a three
continuously active input nodes connected in a cycle as shown below. Due
the the time dependent step-wise neuron snapping, the effect of negation can
be seen only momentarily for this simple configuration.
(-)
in--------------------> (+)
ET ----------->out
(+)
-->b---->c---->d----->
| |
| |
------------------
2.6 Deleting an Element:
Press the left or right button of your mouse on menu option Delete and
release the cross cursor on an element in the drawing area. If the cross
cursor is released on the border, on the menu, or nowhere no element is
deleted. Upon deletion, the element and all connections to and from it are
removed.
2.7 Simulation:
Click the left or right button of your mouse on menu option Simulation, then
click on any elements you would like initially active. An active element is
indicated by the yellow vertical and horizontal lines about the element. Be
sure to set all weights for the neurons before selecting the Simulation
menu. To begin neuron snapping (decision making) click the Step button. To
cancel, click the Stop button or any region in the drawing area.
If the neural network model has five or more neurons with at least two
connected as a second layer, surprising neuron snapping may result.
Recursion of the output layer into the input layer can provide an
interesting sight of neuron snapping as well.
3 Possible Applications
* approving loan applications
* student admission into universities
* trouble-shooting industrial circuits
* robot learning
* dynamic software interaction
* pattern recognition (vision, sound)
4 Future Versions.
This ET NN simulation will be incorporated with various input and output nodes
such as keyboard strikes, database file access, and MIDI music keyboard
activation. ET was created to help me form an AI NN basis for computer music
composition on the IBM PC. Various learning models will also be included. If
you have suggestions for future versions please contact me.
5 Distribution and Order.
Feel free to distribute this public domain version of ET, it can be quite
useful in academic settings. If you would like the commercial version please
send a $40 check and any ET feature request(s) to:
Software Bytes
P.O. Box 9283
El Paso, TX 79983
(915) 779-2352
6 Closing.
ET was written from the heart, I hope you learn about neural nets.
Sincerely,
Raul Aguilar
Electronics Engineer