diff --git a/src/libaevol/7/ExpManager_7.cpp b/src/libaevol/7/ExpManager_7.cpp
index 0b26efb844f83e3a2373486036e4076cbc6c7af1..ef6e851d2db62db712f7cebf2b7b61d916f74131 100644
--- a/src/libaevol/7/ExpManager_7.cpp
+++ b/src/libaevol/7/ExpManager_7.cpp
@@ -4227,9 +4227,12 @@ void ExpManager_7::run_a_step(double w_max, double selection_pressure) {
 
 #pragma omp single
 {
-sort(mutant_list_.begin(), mutant_list_.end(), [this](int a, int b) {
-        return exp_m_->dna_mutator_array_[a]->length_ > exp_m_->dna_mutator_array_[b]->length_;
-    });
+// sort(mutant_list_.begin(), mutant_list_.end(), [this](int a, int b) {
+//         return exp_m_->dna_mutator_array_[a]->length_ > exp_m_->dna_mutator_array_[b]->length_;
+//     });
+  unsigned seed = std::chrono::system_clock::now().time_since_epoch().count();
+
+  std::shuffle (mutant_list_.begin(), mutant_list_.end(), std::default_random_engine(seed));
 }
 
 #ifdef WITH_PERF_TRACES