How to create an intelligent waypoint system?

Check out this tutorial: Basics of AI | Live Training | Unreal Engine - YouTube

You will need to use a Navmesh.

You can get the amount of time it will take for the character to reach its next location by doing some math on the movement speed of your character and the distance between the waypoints.

PS. Your drawing doesn’t make sense to me, the character doesn’t need to take such a complex way around some obstacles when he can move straight towards the character from the first location.