diff --git a/src/ceres_wrapper/ceres_manager.cpp b/src/ceres_wrapper/ceres_manager.cpp
index f37b2377b391564d10a6163ca95d89a5823c480c..9cd617a40867511acb34f304f10b80a0d7be8c37 100644
--- a/src/ceres_wrapper/ceres_manager.cpp
+++ b/src/ceres_wrapper/ceres_manager.cpp
@@ -7,7 +7,7 @@
 
 namespace wolf {
 
-CeresManager::CeresManager(ProblemPtr& _wolf_problem,
+CeresManager::CeresManager(const ProblemPtr& _wolf_problem,
                            const ceres::Solver::Options& _ceres_options) :
   SolverManager(_wolf_problem),
   ceres_options_(_ceres_options)
diff --git a/src/ceres_wrapper/ceres_manager.h b/src/ceres_wrapper/ceres_manager.h
index 2e1e0cb998df70e5ac6e42968edc62a6b326d151..6486f200efd89a492cc0260258a542c2ac50823d 100644
--- a/src/ceres_wrapper/ceres_manager.h
+++ b/src/ceres_wrapper/ceres_manager.h
@@ -40,7 +40,7 @@ protected:
 
 public:
 
-  CeresManager(ProblemPtr& _wolf_problem,
+  CeresManager(const ProblemPtr& _wolf_problem,
                const ceres::Solver::Options& _ceres_options
                 = ceres::Solver::Options());