**Input:** The graph \(G\), the parameter \(K\), the limit number \(E_{\text{max~}}\), and a starting solution \(s\) (could be empty) |

**Output:** A solution for the current time step |

1: Compute \(KG\); |

2: **while** time is available **do** |

3: Initialize the backbone graph \(BG\) by removing all arcs of \(KG;\) |

4: **while** \(BG\) has less than \(E_{\max}\) arcs **do** |

5: For each customer \(c\), generate uniformly a pick-up time \(t_{c}\) from \(I_{c}\) or from \(I_{c}^{s}\) (is the time window where the solution \(s\) is propagated in \(I_{c}\) ); |

6: Solve maxFlow on \(KG\) with the \(t_{c}\) pick-up times of the customers; |

7: Add the optimal arcs of the solution to the graph \(BG;\) |

8: **end while** |

9: Solve MIPmaxflow on \(BG;\) |

10: Update the solution \(s;\) |

11: **end while** |