diff --git a/CMakeLists.txt b/CMakeLists.txt
index abeb99cbdb66658e58fbc708fc52517f7d568c21..06155e991b4f38c3639940e72172f9a2006ac0c7 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -177,7 +177,7 @@ if (NOT ${WILL_BUILD_SHARED_LIBRARY})
 endif ()
 set (Boost_USE_MULTITHREADED OFF)
 set (Boost_USE_STATIC_RUNTIME OFF)
-set (Boost_LIBS chrono filesystem iostreams regex serialization system timer)
+set (Boost_LIBS filesystem iostreams regex serialization system timer)
 find_package (Boost 1.66.0
     REQUIRED COMPONENTS ${Boost_LIBS})
 if(UNIX AND NOT APPLE)
diff --git a/optimizer/Optimizer/EA/FixedPisaNsga2.h b/optimizer/Optimizer/EA/FixedPisaNsga2.h
index 84156e11d3c26aae6e3f883b71b228d6c3f49aff..df6db950858f68eee78a2732f0ae1d0b584f2199 100644
--- a/optimizer/Optimizer/EA/FixedPisaNsga2.h
+++ b/optimizer/Optimizer/EA/FixedPisaNsga2.h
@@ -55,7 +55,6 @@
 #include "Optimizer/EA/Population.h"
 #include "Optimizer/EA/Variator.h"
 
-#include <boost/chrono.hpp>
 #include <boost/property_tree/ptree.hpp>
 
 #include "Util/Trace/Trace.h"
@@ -242,8 +241,8 @@ private:
     /// file header for result files contains this parameter description
     std::string file_param_descr_;
 
-    boost::chrono::system_clock::time_point run_clock_start_;
-    boost::chrono::system_clock::time_point last_clock_;
+    std::chrono::system_clock::time_point run_clock_start_;
+    std::chrono::system_clock::time_point last_clock_;
 
     // DEBUG output helpers
     std::unique_ptr<Trace> job_trace_;
diff --git a/optimizer/Optimizer/EA/FixedPisaNsga2.tcc b/optimizer/Optimizer/EA/FixedPisaNsga2.tcc
index 13cd5ebe5547324534e7f52f5b86547ea89e43ca..129a36bd45d799166f0522857b50cee110f1c2af 100644
--- a/optimizer/Optimizer/EA/FixedPisaNsga2.tcc
+++ b/optimizer/Optimizer/EA/FixedPisaNsga2.tcc
@@ -182,8 +182,8 @@ void FixedPisaNsga2<CO, MO>::initialize() {
     initialized_m = false;
 
     // start poll loop
-    run_clock_start_ = boost::chrono::system_clock::now();
-    last_clock_      = boost::chrono::system_clock::now();
+    run_clock_start_ = std::chrono::system_clock::now();
+    last_clock_      = std::chrono::system_clock::now();
     run();
 
     // run has ended
@@ -192,8 +192,8 @@ void FixedPisaNsga2<CO, MO>::initialize() {
         current_hvol_ =
           variator_m->population()->computeHypervolume(comms_.island_id, hvol_ref_m);
 
-    boost::chrono::duration<double> total =
-        boost::chrono::system_clock::now() - run_clock_start_;
+    std::chrono::duration<double> total =
+        std::chrono::system_clock::now() - run_clock_start_;
     std::ostringstream stats;
     stats << "__________________________________________" << std::endl;
     stats << "GENERATION " <<  act_gen << std::endl;
@@ -363,11 +363,11 @@ void FixedPisaNsga2<CO, MO>::postPoll() {
             current_hvol_ = hvol;
         }
 
-        boost::chrono::duration<double> total =
-            boost::chrono::system_clock::now() - run_clock_start_;
-        boost::chrono::duration<double> dt    =
-            boost::chrono::system_clock::now() - last_clock_;
-        last_clock_ = boost::chrono::system_clock::now();
+        std::chrono::duration<double> total =
+            std::chrono::system_clock::now() - run_clock_start_;
+        std::chrono::duration<double> dt    =
+            std::chrono::system_clock::now() - last_clock_;
+        last_clock_ = std::chrono::system_clock::now();
         std::ostringstream stats;
         stats << "__________________________________________" << std::endl;
         stats << "Arriving at generation " << act_gen + 1     << std::endl;
diff --git a/optimizer/Util/Trace/Timestamp.h b/optimizer/Util/Trace/Timestamp.h
index b7c88e3217fc70c2d32fe4f3f37c0346c1d40dfc..133db07c9f7e0d3a4051b675ca5c6cb99cc7bf04 100644
--- a/optimizer/Util/Trace/Timestamp.h
+++ b/optimizer/Util/Trace/Timestamp.h
@@ -22,7 +22,6 @@
 #define __TIMESTAMP_H__
 
 #include <sstream>
-#include <boost/chrono.hpp>
 #include <ctime>
 
 #include "Util/Trace/TraceComponent.h"
@@ -40,9 +39,9 @@ public:
 
     void execute(std::ostringstream &dump) {
 
-        boost::chrono::time_point<boost::chrono::system_clock> now;
-        now = boost::chrono::system_clock::now();
-        std::time_t now_time = boost::chrono::system_clock::to_time_t(now);
+        std::chrono::time_point<std::chrono::system_clock> now;
+        now = std::chrono::system_clock::now();
+        std::time_t now_time = std::chrono::system_clock::to_time_t(now);
 
         std::ostringstream timestamp;
         timestamp << std::ctime(&now_time);