Skip to main content
. 2014 Oct 1;238(1):18–30. doi: 10.1016/j.ejor.2014.03.005
1: x InitialSolution (); P{x}
2: N(κ) SelectFirstNeighborhood ()
3: while StoppingCriterionNotMet () do
4:  x¯ RescheduleWithTrueTravelSpeeds (x¯) x¯P
5:  forx¯P
6:  if(x¯x)(Timeout(x¯,x)Departure(x¯,x))then
7:   PP{x¯}
8:  else if NewRequestsPresent () then
9:   InsertNewRequests (x¯)
10:  end if
11:  end for
12:  if HasChanged (P) then
13:  x SelectCurrentIncumbent (P)
14:  end if
15:  x ShakeSolution (x,N(κ))
16:  ifxPthen
17:  PP{x}
18:  end if
19:  N(κ) SelectNextNeighborhood (κ)
20: end while