A hybrid discrete firefly algorithm to solve flow shop scheduling problems to minimise total flow time