I've included a drawing of the problem I've always had with waypoints. It seems as though having an isolated, island-like barrier such as a table or a couch in the middle of a room is just asking for problems. As far as I know (and have tried) you cannot connect waypoints in a loop. Even if you place one end point directly on another, a character will always chose the waypoint path nearest to them without regard to how near the target destination is.
This leads to awkward situations, as seen in the image. Regardless of where the object lies within the room, characters will always go for the waypoint that's closest to them and follow it, even if there is a shorter route available. In the image, the character would move counter clockwise to reach the object, even though the shortest way would be clockwise.
I've all but conceded that nothing can be done about this problem, but I thought I'd reach out to the community to see if anyone had some ideas. It could also be possible that I'm handling waypoints incorrectly, which I'd love to hear.
Any thoughts?