I. Introduction
Multi-Goal Path Finding (MGPF) problems aim to find a least-cost path for a robot to travel from an origin () to a destination () such that the path visits each node in a given set of goals () at least once. In the process of finding a least-cost path, MGPF algorithms also find an optimal sequence in which the goals must be visited. When the search space is discrete (., a finite graph), the cost of traveling between any two nodes can be computed using an all-pairs shortest paths algorithm. In this case, the MGPF encodes a variant of the Steiner1 Traveling Salesman Problem (TSP) and is NP-Hard [28]. In the general case, the search space is continuous and the least cost to travel between any two nodes is not known a-priori. This least-cost path computation between any two nodes in the presence of obstacles, in itself, is one of the most widely studied problems in robot motion planning [27], [30]. We address the general case of MGPF as it naturally arises in active perception [1], [36], surface inspection [7] and logistical applications [24], [35], [40]. Specifically, industrial applications such as spot welding, spray-painting or drilling [42], [46] use robot manipulators with end-effectors to travel through a set of target configurations to perform their respective tasks. While the target configurations are known, the sequence in which these configurations must be visited are not known. In addition, the cost of traveling between any two configurations is not easy to pre-compute and is independent of the sequence in which the target configurations are visited.
Any node that is not required to be visited is referred to as a Steiner node. A path may choose to visit a Steiner node if it helps in either finding feasible solutions or reducing the cost of travel.