Given a set X of points in the plane, two distinguished points s, t ∈ X, and a set Φ of obstacles represented by line segments, we wish to compute a simple polygonal path from s to t that uses only points in X as vertices and avoids the obstacles in Φ. We present two results: (1) we show that finding such simple paths among arbitrary obstacles is NP-complete, and (2) we give a polynomial-time algorithm that computes simple paths when the obstacles form a simple polygon P and X is inside P. Our algorithm runs in time O(m2n2), where m is the number of vertices of P and n is the number of points in X. © 2000 Elsevier Science B.V. All rights reserved.
Cheng, Q., Chrobak, M., & Sundaram, G. (2000). Computing simple paths among obstacles. Computational Geometry: Theory and Applications, 16(4), 223–233. https://doi.org/10.1016/S0925-7721(00)00011-0