Price defeats Smith to set up World Grand Prix final against Humphries