/* Self-Organizing Map: A demo using C language and gnuplot !!! 2005. 6.26 by A.Date Last modified 1 may 2009 Animation Demo 2d */ #include #include #include #define N_XUNITS 10 #define N_YUNITS 10 #define DIM_INPUT 2 /* dimension of input */ #define X_RANGE 1.0 #define Y_RANGE 1.0 #define Z_RANGE 1.0 #define SLEEP 100 void som2d(); void init_reference(); void write_data(); void write_data_anim_d2(); double ALPHA=0.1; double SIGMA=0.8; int N_LEARNING = 10000; int N_SUB_LEARNING = 100; double S[DIM_INPUT]; /* input */ double RV[N_XUNITS][N_YUNITS][DIM_INPUT]; int T[N_XUNITS][N_YUNITS]; FILE *gp; typedef struct _Position Position; struct _Position { int x; int y; }; int main (int argc, char *argv[] ) { int i,j; int r1, r2; double x,y; long seed = 1234567; for (i=1; i