code: public void updateBestSolution(long time, double value, SolutionType newBestSolution){
          times.add(time);
          values.add(value);
          bestSolution = newBestSolution;
      }
docs: Update the best found solution. The update time and newly obtained value are added
  to the list of updates and the final best solution is overwritten.
  
  @param time time at which the solution was found (milliseconds)
  @param value value of the solution
  @param newBestSolution newly found best solution