diff --git a/CSNN-Simulator/apps/FMnist.cpp b/CSNN-Simulator/apps/FMnist.cpp
index 0a848ac5b1acf4bbd7b83c6b91c1e2bb6ae0163f..c595a2775c01c1c9f8526f067229b8e2a413890f 100644
--- a/CSNN-Simulator/apps/FMnist.cpp
+++ b/CSNN-Simulator/apps/FMnist.cpp
@@ -41,8 +41,8 @@ int main(int argc, char** argv) {
 
 	std::string input_path(input_path_ptr);
 
-	experiment.template add_train<dataset::FMnist>(input_path+"train-images-idx3-ubyte", input_path+"train-labels-idx1-ubyte", 1000);
-	experiment.template add_test<dataset::FMnist>(input_path+"t10k-images-idx3-ubyte", input_path+"t10k-labels-idx1-ubyte", 1000);
+	experiment.template add_train<dataset::FMnist>(input_path+"train-images-idx3-ubyte", input_path+"train-labels-idx1-ubyte");
+	experiment.template add_test<dataset::FMnist>(input_path+"t10k-images-idx3-ubyte", input_path+"t10k-labels-idx1-ubyte");
 
 	float th_lr = 0.0f;
 	float t_obj = 0.75;
@@ -51,14 +51,14 @@ int main(int argc, char** argv) {
 
 	auto& conv1 = experiment.template push_layer<layer::Convolution>("conv1", 5, 5, 32);
 	conv1.template parameter<float>("annealing").set(0.95f);
-	conv1.template parameter<float>("min_th").set(4.0f);
+	conv1.template parameter<float>("min_th").set(1.0f);
 	conv1.template parameter<float>("t_obj").set(t_obj);
 	conv1.template parameter<float>("lr_th").set(th_lr);
 	conv1.template parameter<float>("alpha").set(alpha);
 	conv1.template parameter<float>("doPrune").set(do_prune);
 	conv1.template parameter<float>("doReinforcement").set(do_reinforcement);
 	conv1.template parameter<Tensor<float>>("w").template distribution<distribution::Uniform>(0.0, 1.0);
-	conv1.template parameter<Tensor<float>>("th").template distribution<distribution::Gaussian>(5.0, 0.1);
+	conv1.template parameter<Tensor<float>>("th").template distribution<distribution::Gaussian>(8.0, 0.1);
 	conv1.template parameter<STDP>("stdp").template set<stdp::Biological>(w_lr, 0.1f);
 
 	experiment.template push_layer<layer::Pooling>("pool1", 2, 2, 2, 2);
@@ -69,7 +69,7 @@ int main(int argc, char** argv) {
 	auto& conv2 = experiment.template push_layer<layer::Convolution>("conv2", 5, 5, 128);
 	conv2.template parameter<float>("annealing").set(0.95f);
 	conv2.template parameter<float>("min_th").set(1.0f);
-	conv2.template parameter<float>("t_obj").set(0.60f);
+	conv2.template parameter<float>("t_obj").set(t_obj);
 	conv2.template parameter<float>("lr_th").set(th_lr);
 	conv2.template parameter<float>("alpha").set(alpha);
 	conv2.template parameter<float>("doPrune").set(do_prune);
@@ -95,9 +95,9 @@ int main(int argc, char** argv) {
 	fc1.template parameter<Tensor<float>>("th").template distribution<distribution::Gaussian>(10.0, 0.1);
 	fc1.template parameter<STDP>("stdp").template set<stdp::Biological>(w_lr, 0.1f);
 
-	experiment.add_train_step(conv1, 100);
-	experiment.add_train_step(conv2, 100);
-	experiment.add_train_step(fc1, 100);
+	experiment.add_train_step(conv1, 5);
+	experiment.add_train_step(conv2, 5);
+	experiment.add_train_step(fc1, 5);
 
 	auto& conv1_out = experiment.template output<TimeObjectiveOutput>(conv1, t_obj);
 	conv1_out.template add_postprocessing<process::SumPooling>(2, 2);
diff --git a/CSNN-Simulator/apps/Mnist.cpp b/CSNN-Simulator/apps/Mnist.cpp
index 0226f68d6ef0025e25df6b5c59a102c2e5b47cde..53ed9f9855a443acd41bfdea91680d15774cdb28 100644
--- a/CSNN-Simulator/apps/Mnist.cpp
+++ b/CSNN-Simulator/apps/Mnist.cpp
@@ -45,7 +45,7 @@ int main(int argc, char** argv) {
 	experiment.template add_test<dataset::Mnist>(input_path+"t10k-images.idx3-ubyte", input_path+"t10k-labels.idx1-ubyte");
 
 	float th_lr = 1.0f;
-	float t_obj = 0.50f;
+	float t_obj = 0.75f;
 	float w_lr = 0.1f;
 	float alpha = 0.05f;
 
@@ -95,9 +95,9 @@ int main(int argc, char** argv) {
 	fc1.template parameter<Tensor<float>>("th").template distribution<distribution::Gaussian>(10.0, 0.1);
 	fc1.template parameter<STDP>("stdp").template set<stdp::Biological>(w_lr, 0.1f);
 
-	experiment.add_train_step(conv1, 100);
-	experiment.add_train_step(conv2, 100);
-	experiment.add_train_step(fc1, 100);
+	experiment.add_train_step(conv1, 5);
+	experiment.add_train_step(conv2, 5);
+	experiment.add_train_step(fc1, 5);
 
 	auto& conv1_out = experiment.template output<TimeObjectiveOutput>(conv1, t_obj);
 	conv1_out.template add_postprocessing<process::SumPooling>(2, 2);
diff --git a/CSNN-Simulator/src/Experiment.cpp b/CSNN-Simulator/src/Experiment.cpp
index f920be4477d0501ec06b344cc73c28b759f0b669..8e346ebb4a60738ed1ff538bbca59060fa0a6837 100644
--- a/CSNN-Simulator/src/Experiment.cpp
+++ b/CSNN-Simulator/src/Experiment.cpp
@@ -36,7 +36,7 @@ AbstractExperiment::AbstractExperiment(const std::string& name) :
 		std::cout << "Experiment renamed in " << _name << std::endl;
 	}
 
-	_isRandom = "";
+	_isRandom = "MY_5IM";
 	std::seed_seq seed(std::begin(_name), std::end(_name));
 	_random_generator.seed(seed);