00001
00002
00003
00004
00005
00006
00007
00008
00010
00011 #define NKERN_NEURON_H
00012
00013 #include <vector>
00014 #include <fstream>
00015 #include <math.h>
00016
00017
00018
00019
00020 struct SimData_typ{
00021 int NumInputs;
00022 int NumOutputs;
00023 int NumHiddenLayers;
00024 int NeuronsPerLayer;
00025 int NeuronsPerHLayer;
00026 };
00027
00028 #define RANDOM_CLAMP (((float)rand()-(float)rand())/RAND_MAX)
00029 #define RANDOM_NUM ((float)rand()/(RAND_MAX+1))
00030
00031
00032 #define NUM_INPUTS 6
00033 #define NUM_OUTPUTS 2
00034 #define DEFAULT_HIDDEN_LAYERS 1
00035 #define DEFAULT_NEURONS_PER_HL 9
00036
00037
00038 #define ACTIVATION_RESPONSE 1.0f
00039 #define BIAS -1.0f
00040
00042
00044
00045 {
00046 int m_NumInputs;
00047 vector<float> m_vecWeight;
00048 Neuron(int NumInputs);
00049 };
00050
00052
00054
00055 {
00056 vector<Neuron> m_vecNeurons;
00057 int m_NumNeurons;
00058 int m_NumInputsPerNeuron;
00059 NeuronLayer(int NumNeurons,
00060 int NumInputsPerNeuron);
00061 };
00062
00063 #endif