experimental algorithms