Roger Federer defeated Frenchman Pierre-Hugues Herbert, to reach his 13th final ATP Halle, the most in the tournament's history.