import brain_state_calculate as bsc
import cpp_file_tools as cft

file=["F:/data/r617/0620healthyOutput_1.txt","F:/data/r617/0620healthyOutput_2.txt","F:/data/r617/0620healthyOutput_3.txt"]
my_bsc = bsc.brain_state_calculate(32)
my_cft = cft.cpp_file_tools(32, 1)
my_bsc.init_networks(file, my_cft)
my_bsc.save_networks('', '0527')

print 'END'
import numpy as np

#In this script we train the kohonen network using another kohonen network
#learning is totally unsupervised
#####################
######  START  ######
from cpp_file_tools import cpp_file_tools

dir_name = '../RT_classifier/BMIOutputs/0423_r600/'
save_obj = False
ext_img = '.png'
save = True
show = False
files0423 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]

my_bsc = bsc.brain_state_calculate(32, 'koho_RL', ext_img, save, show)
my_cft = cpp_file_tools(32, 1, ext_img, save, show)
my_bsc2 = bsc.brain_state_calculate(32, 'koho', ext_img, save, show)

##build one koho network and class obs with unsupervised learning
l_res, l_obs = my_bsc.cft.convert_cpp_file(dir_name, 't_0423', files0423[0:5], False)
#use training dataset (not working)
# sp = signal_processing.Signal_processing()
# l_obs = sp.load_m(dir_name+'trainSet140423.mat', 'BrainAct')
l_obs_koho = my_bsc.cft.obs_classify_kohonen(l_obs)

#build and train networks
my_bsc.build_networks()
my_bsc.simulated_annealing(l_obs, l_obs_koho, l_res, 0.10, 14, 0.95)
my_bsc2.build_networks()
my_bsc2.simulated_annealing(l_obs, l_obs_koho, l_res, 0.10, 14, 0.95)