diff --git a/src/problem-solver.cc b/src/problem-solver.cc
index 80521aab768c7f7826fe4d84acf793c0b6434366..0da115e1a3d8bcf392306d483a04e3a7124e8f10 100644
--- a/src/problem-solver.cc
+++ b/src/problem-solver.cc
@@ -312,6 +312,8 @@ namespace hpp {
     {
       if (!problem ())
         throw std::runtime_error ("The problem is not defined.");
+      if (roadmap())
+        roadmap()->clear();
       RoadmapPtr_t r (Roadmap::create (problem ()->distance (), problem ()->robot ()));
       if (constraintGraph_) r->constraintGraph (constraintGraph_);
       roadmap (r);