diff --git a/src/LearningMethods/LearningSequence.cpp b/src/LearningMethods/LearningSequence.cpp
index 01bc7f42ac0c89f9c32902e36969117cc4e3751f..2bb38182d8fc91ee2cfa0c62fa7c01db390d433c 100644
--- a/src/LearningMethods/LearningSequence.cpp
+++ b/src/LearningMethods/LearningSequence.cpp
@@ -18,7 +18,7 @@ namespace lib4neuro {
 
     LearningSequence::~LearningSequence() = default;
 
-    void LearningSequence::add_learning_method(std::shared_ptr<LearningMethod> method) {
+    void LearningSequence::add_learning_method(LearningMethod *method) {
         this->learning_sequence.push_back(method);
     }
 
diff --git a/src/LearningMethods/LearningSequence.h b/src/LearningMethods/LearningSequence.h
index d0de54b8e83c17f2279ca3886fa67f24bf761e19..b6c81ef7d3c5c79ccd6a4826d907d0139f62af87 100644
--- a/src/LearningMethods/LearningSequence.h
+++ b/src/LearningMethods/LearningSequence.h
@@ -24,7 +24,7 @@ namespace lib4neuro {
         /**
          *
          */
-        std::vector<std::shared_ptr<LearningMethod>> learning_sequence;
+        std::vector<LearningMethod*> learning_sequence;
 
         /**
          *
@@ -62,7 +62,7 @@ namespace lib4neuro {
          *
          * @param method
          */
-        LIB4NEURO_API void add_learning_method(std::shared_ptr<LearningMethod> method);
+        LIB4NEURO_API void add_learning_method(LearningMethod *method);
     };
 
 }