AN OPTIMAL ALGORITHM FOR THE OBSTACLE NEUTRALIZATION PROBLEM

. In this study, an optimal algorithm is presented for the obstacle neutralization problem (ONP). ONP is a recently introduced path planning problem wherein an agent needs to swiftly navigate from a source to a destination through an arrangement of obstacles in the plane. The agent has a limited neutralization capability in the sense that the agent can safely pass through an obstacle upon neutralization at a cost added to the traversal length. The goal of an agent is to ﬁnd the sequence of obstacles to be neutralized en route minimizing the overall traversal length subject to the neutralization limit. Our optimal algorithm consists of two phases. In the ﬁrst phase an upper bound of the problem is obtained using a suboptimal algorithm. In the second phase, starting from the bound obtained from phase I, a k -th shortest path algorithm is exploited to ﬁnd the optimal solution. The performance of the algorithm is pre- sented with computational experiments conducted both on real and synthetic naval mineﬁeld data. Results are promising in the sense that the proposed method can be applied in online applications.


1.
Introduction. In this study, a path planning problem is considered where the goal is to safely and swiftly navigate an agent from a given source location to a destination through an arrangement of potential mine or threat discs in the plane. The agent is given a neutralization capability with which the agent can safely traverse through the disc after neutralizing it for a cost added to its traversal length. However, number of allowed neutralizations is limited, say by K, due to a particular reason such as the payload capacity of the agent or vehicle and the central issue is how to direct the agent to optimally utilize this neutralization capability. This problem, called obstacle neutralization problem (ONP), is a recently introduced NP-Hard problem [7]. Note that, if the number of allowed neutralizations is infinite, then the problem turns out to be the classical (unconstrained) shortest path problem and can be easily solved.
The ONP is of vital importance because of its real applications in real life. In a military scenario, the objective is to navigate a combat unit safely and swiftly through a coastal environment with mine threats and to reach the target location 836 ALI FUAT ALKAYA AND DINDAR OZ as fast as possible where the mine data is given to the combat unit in advance by an airborne mine detection tactical system [34,10]. This unit has a neutralization capability limited by K. In another scenario, a merchant ship navigating in an icy region has the capability of cracking (neutralizing) the ice blocks and tries to reach the destination in minimum time. Therefore, the main research question for ONP is how to use this neutralization capability so the optimum path is followed. Furthermore, ONP is also closely related to the problems undertaken in several other real world applications in diverse fields such as telecommunications routing, curve approximations, scheduling and minimum-risk routing of military vehicles and aircraft.
In order to formally define the problem, the following definitions are needed. Let s and t be two points in R 2 , D be a finite set of open discs in R 2 , C be a constant in R ≥0 , and K be a given constant in Z ≥0 . For simplicity and convenience, an instance of ONP will be denoted by a tuple (s, t, D, C, K). An agent wants to traverse from s to t through R 2 , along a continuous curve that is as short as possible in the sense of arclength. The traversing agent cannot enter discs which are obstacles or considered to be obstacles but, if and when the agent is located at the boundary ∂d for any d ∈ D, the agent has the option to neutralize the disc d at a cost C added to the traversal arclength. Thus, only after neutralizing a disc the agent can enter the disc and the agent has K allowed number of neutralizations. The objective is to direct the agents traversal to optimally use this neutralization capability; that is, to find a policy for the agent which minimizes the total cost of the agents s, t traversal. Throughout this study, it is assumed all disks have the same neutralization cost and the same radius.
It can be easily observed that the neutralization problem is a combinatorial optimization problem where among D discs (|D| ≥ K), the agent must choose at most K of them to neutralize.
An example to the neutralization problem is shown in Figure 1. Suppose the positions of s and t are (50,100) and (50,1), respectively. Each disk has a radius of 10 and 0.5 for the neutralization cost. In the figure, the optimal paths for K = 0, 1, 2 and 3 are depicted with bold, dashed, dotted and solid lines, respectively. Note that it is not always the case that all K allowable neutralizations are used.
There are two studies directly related with the ONP where heuristic methods are proposed and used for solving it. In [7], the authors propose a penalty based algorithm to find suboptimal solutions for the ONP. On the other hand, in [4], an ant system algorithm is adapted to solve the ONP. Being heuristic based methods, both of those studies propose suboptimal algorithms that are not guaranteed to be optimal. Hence, the literature is lack of an optimal algorithm that can solve the ONP instances. Therefore, a fast and robust optimal algorithm that can be used online is of vital importance in the scenarios listed above. Our contribution in this study is two-fold: (1) an effective optimal algorithm for the ONP is presented, (2) unlike the state-of-the-art studies where the underlying graph is discretized in order to simplify the problem, the proposed algorithm works both in continuous and discretized graphs.
Proposed algorithm consists of two phases. In phase I, a recently proposed algorithm is used to obtain a suboptimal solution. In the second phase, a k-th shortest path algorithm is used to close any gaps. The correctness of the algorithm is proven theoretically and computational tests are conducted both on discrete lattice and Figure 1. An example to the obstacle neutralization problem and optimal paths for K = 0, 1, 2 and 3 continuous graphs to reveal its performance. Furthermore, its results and performance are compared with an IP solver. Results show that the proposed algorithm performs well in terms of running time on continuous graphs and it can be used in online applications.
The rest of this manuscript is organized as follows: Section 2 gives a comprehensive overview of current state-of-the-art in ONP related research. Section 3 provides details of proposed algorithm, discusses its properties, and proves its optimality. Section 4 describes the graph modelling including the tangent arc graphs and the proof that the optimum path resides in the tangent arc graph. Section 5 presents real and random minefield data, computational experiments, and Section 6 summarizes and concludes our work.
2. ONP and related work. For a given graph G = (V, E), let c ij and w ij denote the cost and weight of the edge (i, j) ∈ E respectively. The objective in ONP is to find a minimum cost path from a start node s to a destination node t in V such that the sum of weights of the path edges is at most a given limit K.
Let the binary variable x ij = 1 if the edge (i, j) is part of the optimal path and 0 otherwise. The integer programming formulation of the ONP is as follows: The first constraint imposes that the difference in the number of edges leaving s and entering into s is 1. The second constraint states that the difference in the number of edges entering t and leaving t is 1. The third constraint states that for all other nodes except s and t, the number of edges leaving them is equal to the number of edges entering them. The fourth constraint enforces the total weight limit.
ONP is a recently introduced problem. However, in the literature, there are several problems which are closely related with ONP such as routing of signals in telecommunication networks with QoS guarantees. Delay sensitive applications such as real-time video and voice, require traffic to be received at the destination within a delay constraint. On the other hand, it is highly desirable to reduce the path cost, either in terms of money or cost of using network resources. In the literature, that problem is studied under the name Delay Constrained Least Cost Path (DCLC) problem. Juittner et al. [17] used Lagrangian relaxation techniques to solve it. The algorithm, called Lagrange Relaxation Based Aggregated Cost (LARAC) Algorithm, uses the concept of aggregated costs and provides an efficient method to find the optimal multiplier based on Lagrangian relaxation. Reeves and Salama [29] study the DCLC problem and propose a simple distributed heuristic method called the Delay-Constrained Unicast Routing (DCUR) Algorithm. The DCUR algorithm starts by building the least delay (LD) and least cost (LC) paths from each node to destination t. The path is constructed one node at a time from the source to destination. While building the path, DCUR chooses edges on LC path if traveling on that edge to the destination guarantees a permissible amount of delay by taking into account the delay accumulated thus far. Otherwise the algorithm chooses edges on the LD path. Guo and Matta [15] proposed another method for the DCLC problem, called the Delay Cost Constrained Routing (DCCR) Algorithm. In order to reduce the search space exploited by DCCR, the authors used a variant of the Lagrangian relaxation method proposed in [16]. The aforementioned heuristics along with six other ones for DCLC are compared in [19]. This study compares these algorithms on their path cost and computational complexity. Results of simulations on square lattices suggest the DCUR algorithm provides superior results in general.
Another closely related topic is minimum risk routing of military vehicles and aircraft in a threat environment where for a given risk function the edge lengths are assigned as probability of being detected by radars or surface air missiles. In this problem, the aim is to minimize the total risk on the path taken from source to destination that satisfies a given constraint due to supply of fuel or flight time.
The following are some of the studies on minimum risk routing of military vehicles.
Lee [21] worked on a search space which is discretized into a three dimensional grid. The constraint of the problem is a given maximum fuel consumption. Similar to [16], the lagrangian dual of the problem is used where in order to find the best lagrange multiplier value, bisection method is used. Latourell et al. [20] used genetic algorithms to optimize minimum risk routing of military vehicles. In their model, the authors considered the limitation on the sharpness of the turns that the aircraft can make. In [24] an ant system based path planning algorithm is proposed for the unmanned air combat vehicles where the objective is to reach the destination with minimum probability of being found and minimum consumed energy. In another study, biologically inspired two level method is proposed for real-time path planning in a complex and dynamic environment, employable in ground vehicles [23].
Zabarankin et al. [37] studied both analytical and discrete optimization approaches. They have shown the optimum can be reached when there is only one radar in a continuous setting. For discrete setting they use the algorithm proposed in [13]. In a further study, they extended their work and develop a model where the trajectory of an aircraft in a three-dimensional setting is determined [36]. Royset et al. [30] applied the algorithm in [9] to route planning problem for various type of military aircraft. Muhandiramge et al. [25] contributed the literature by giving a general scheme for convergence of network discretizations. Robot navigation is also a very similar topic to routing of vehicles. In [38], a novel and effective algorithm is proposed for dynamic unknown environments for robot navigation. Yang et al. [32] designed a distributed control algorithm for target search problem of multiple robots. In their work, they adapted the behaviour of bacteria to trap their target and use voronoi diagram to divide a large search space into small voronoi cells. The proposed BC algorithm is shown to be comparable with the state-of-the-art methods.
Curve approximation is another related application to ONP. Piecewise linear functions are often used to approximate complex curves in a number of domains including computer aided design, computer graphics, image processing, and mathematical programming [11]. Such an approximation, on the other hand, often needs to be made in the presence of transmission rate or storage constraints. There are two variants of this problem: (1) minimizing the approximation error subject to breakpoint constraints, and (2) minimizing the number of breakpoints given an approximation error bound. Dahl and Realfsen [12] aimed to minimize the approximation error and studied four different algorithms: a combinatorial algorithm, Lagrangian relaxation based algorithm, a dynamic programming algorithm and a linear programming algorithm. Nygaard et al. [26] studied the same problem and they use dynamic programming approach for solving the problem.
In another problem very similar to ONP, there is a mine hunting team which operates before the agent and neutralizes the necessary discs (not exceeding the given limit) to create a zero-risk path for the agent. However, in that problem the neutralization cost is considered as zero since the objective is to minimize the length of zero-risk path for the agent, not the mine hunting team. Bekker and Schmid [8] formulated a fitness function which favors shorter paths with a fewer number of neutralized discs and use genetic algorithms to tackle the problem. Li [22] developed a mission-planning tool to find a minimum-risk route for a surface ship through a mapped minefield. The author also proposed a greedy heuristic to form a prioritized list of mines to be cleared (neutralized) so that a zero-risk path is obtained. However, in the problem definition the author assumes that a minesweeper is sent before the ship and it can reach and clear any mine in any sequence, safely.
Several metaheuristic algorithms are tailored in [6,5] in order to solve Obstacle Neutralization Problem. They applied, namely, ant colony optimization, genetic algorithm and migrating bird optimization methods. Although the solutions were suboptimal, they achieved to get very close results to optimal in reasonable time.
State-of-the-art algorithms proposed for the aforementioned closely related problems either require significant computational resources or demonstrate poor performance on the neutralization problem. Furthermore, most of them propose heuristic solutions with no guarantee of optimality and only a few of the work on continuous graphs. As introduced in the next section, an optimal algorithm for the obstacle neutralization problem is developed that can also be used for related applications.
3. Proposed optimal algorithm. This section introduces the proposed optimal algorithm for ONP. The algorithm consists of two phases. In the first phase, a suboptimal algorithm, named Penalty Search Algorithm (PSA) is called. PSA is explained in more detail in [7] but here a basic explanation of it is provided for the sake of completeness. If the path returned by PSA has exactly K neutralizations, then the algorithm returns this path since it is proven that when PSA dictates exactly K neutralizations, then the path returned by PSA is indeed optimal [7]. However, PSA cannot always find a path with exactly K neutralizations and returns a path with less number of neutralizations than available (thus an upper bound solution). Should this be the case, proposed optimal algorithm initiates a second phase in order to close this gap. In the second phase, starting from the upper bound given by PSA and using the edge costs that PSA adjusted, a k-th shortest path algorithm (kSPA) is used to find the optimal path. A kSPA not only determines the shortest path, but also the second shortest, the third shortest, and so up to the k-th shortest path. Therefore, using kSPA, one can eventually find the optimal solution to the ONP. In the literature there are essentially two main contributions on kSPAs and in this study it is preferred to use the one proposed in [35] where paths are required to be loop free.
Recall that the optimum path may have K or fewer than the maximum allowable number of neutralizations. If second phase of the optimal algorithm returns a path with less than K neutralizations, its optimality must be guaranteed. In the following subsections, the details of the phases of the optimal algorithm is presented and its optimality is shown. But first, the notation that characterizes the model is presented.
• G = (V, E) denotes the graph representing the obstacle field and the tuple (s, t, D, C, K) represents an ONP instance • p * denotes the optimal path for the ONP instance (s, t, D, C, K) •p * denotes the best path found by PSA • For e ∈ E, (e) denotes its Euclidean length • For e ∈ E, θ(e) is the number of disks that edge e intersects. If e enters a disc but does not exit than it is counted as a half. That is, θ(e) := d∈D I(e, d). θ(null) is considered to be zero • For e ∈ E, its associated neutralization cost is defined as c(e) := C × θ(e) = C × d∈D I(e, d) • For e ∈ E, its total cost associated with α is denoted by τ (e, α) : For a path p in G : , and c(p) := e∈p c(e). Observe that θ(p) is the number of disks p intersects. Thus, an agent following path p would neutralize exactly θ(p) obstacle disks From these definitions, one can easily obtain the following equation-which will be used frequently in the following subsections.
3.1. Phase I: PSA. PSA is based on the following simple idea: find the largest penalty term α * ≥ 1 such that, the unconstrained shortest path (i.e., the path without any neutralization limits) with Euclidean length of disk-intersecting edges augmented by (α * ×C ×θ(e)) requires the highest number of neutralizations without exceeding K, hence the name "penalty search". This is the path returned by PSA and it clearly satisfies the neutralization limit constraint. The search for the penalty term is found by a straightforward bisection method [7]. The correctness of the PSA algorithm resides on the fact that as α is increased, the number of neutralizations dictated by PSA decreases and the total cost increases monotonically. Using this fact, the authors developed an efficient mechanism for finding α * using a bisection approach. PSA is presented in Figure 2 where comments are given in C language style. In the figure, Dijkstra(α) denotes execution of the Dijkstra's Algorithm for finding the unconstrained optimal s − t path using τ (e, α) as the edge costs. PSA starts by setting α = 1. If Dijkstra(α = 1) returns a path with neutralizations less than or equal to K, then PSA terminates with the current path. Otherwise, the first while loop finds a coarse interval [α min , α max ] such that α min ≤ α * ≤ α max . The second while loop takes a bisection approach to fine-tune α min and α max until α max − α min ≤ ε where ε is a pre-specified tolerance parameter. It is important to note that in the underlying graph, it is assumed that there is always a walk around path with 0 neutralizations that PSA returns in case it can not find a better one. In this way, the PSA is always guaranteed to return a valid path.
Most important property of PSA is that if θ(p * ) = K, that is, if the best path found by PSA requires exactly K neutralizations, thenp * is indeed the optimum path for the ONP instance (s, t, D, C, K). However, as mentioned earlier, PSA is not guaranteed to result in a path with exactly K neutralizations [7]. Should this be the case, a second phase is initiated to close the gap for finding the optimum path as discussed in the next section.
if (  There is a drawback of PSA that requires attention. Specifically, in some cases, PSA cannot find a path with exactly K neutralizations regardless of how fine α is tuned. The reason why PSA can not find the optimum is explained with examples in [7] and we direct the reader to there. At this point PSA is just ended and kSPA is starting. Recall that PSA returns two pieces of information: its best path,p * , and α * which means that when the cost of edges intersecting discs is set to α * × C × θ(e), thenp * is the shortest path. Using this adjusted graph, kSPA will start to find the optimal path with K or less number of neutralizations.
Before proceeding with the proposed optimal algorithm, it should be noted that the path returned by kSPA satisfying the maximum allowed number of neutralizations constraint might not necessarily be the optimum path. The example depicted in Figure 3 explains the situation. In the figure, the dashed path (p 1 ) is the optimum path of PSA's modified graph wherein the neutralization cost is modified with α = 1.307. The dotted path (p 2 ) is one of the feasible paths longer than p 1 on the modified graph. The solid path (p 3 ) is longer than the other two paths on the modified graph and thus will be reported latterly by kSPA. However, p 3 is the optimum path for this (s, t, D, 1, 4) instance as it is proven below.
As it is demonstrated with the above example, a well designed stopping criterion is needed to terminate the kSPA as well as the proof that shows the path obtained with that stopping criterion is the optimum path. To show this, some preliminary arguments are needed. The kSPA is designed to give the next shortest path at each iteration. That is τ (p i , α * ) ≤ τ (p j , α * ) for i < j, where p i is the i-th shortest path given by kSPA (Note that p 1 =p * ).
However, as it is demonstrated above, since kSPA is working in the adjusted graph, the next path returned by kSPA at i-th iteration, say p i , is a better (thus a candidate for optimal) solution only if it satisfies the neutralization limit constraint (θ(p i ) ≤ K) and it has a less total cost than the current best candidate path in the original graph (τ (p i , 1) < τ (p candi−1 , 1)). Mathematically, Hence, the following two propositions are obtained easily from (8), where the proofs are trivial.
Rule (8) guarantees that each candidate path has K or fewer number of neutralizations on it. A stronger claim is that the number of neutralizations on candidate paths increase monotonically. This is proven in the following corollary.
As stated earlier, a stopping criterion is needed to stop phase II. Next theorem presents the condition and proves its optimality.
Theorem 3.1. Suppose j is the first iteration that satisfies the following Then the following assertion holds for all k > j Proof. For a contradiction, assume that there exists a k > j such that τ (p k , 1) < τ (p candj , 1) and θ(p k ) ≤ K. Then, from this assumption and rule (8), one can conclude that p cand k = p k . Using this conclusion and the definition of kSPA, τ (p j , α * ) ≤ τ (p k , α * ) = τ (p cand k , α * ).
Using equation (7), Rearranging the equation, Using the assumption However, this contradicts to (9). Hence p candj is proven to be the optimum path if it satisfies (9) which is the stopping criterion for the proposed optimal algorithm.
Having defined the PSA and shown the correctness of stopping criterion for kSPA, the proposed optimal algorithm is presented next. Pseudocode of the optimal algorithm is presented in Figure 4 where comments are given in C language style.
p cand ← p 11. while (τ (p, α * ) − τ (p cand , α * ) < (K − θ(p cand )) × C × (α * − 1)) // stopping criterion 12. return p cand Graph modeling. In this study, the graphs are modeled in both discrete and continuous settings. Regarding the discrete setting, an 8-regular lattice discretization of the obstacle field is used. In order to model the ONP in a continuous setting, a special kind of graph, namely tangent arc graphs (TAG), is used. It is named as such since the graph contains edges of only tangents to the obstacles and arcs placed on the boundary of the obstacles. Below, firstly the explanation of TAG construction is provided and then it is shown that the optimum solution of the ONP lies in the TAG.

4.1.
Creating Tangent-Arc Graphs (TAG). The TAG associated with an ONP instance (s, t, D, C, K) can be represented by (V, E) where V will be the set of vertices, and E will be the set of edges in the TAG. The creation of the associated TAG will be completed in two steps where in the first one the linear edges and their corresponding start and end vertices are created. The TAG is started to be created by including the s and t into V . Then, tangent edges from s and t to each disk are included into E and their associated vertices are included into V (see Figure 5(a)). For a pair of nonintersecting discs one can define eight tangent edges and eight vertices as demonstrated in Figure 5(b) and add them to the corresponding sets of TAG. Tangent edges and vertices for a pair of intersecting discs can be defined in a similar way as shown in Figure 5(c). As the last linear edge to be included in the set E, the line segment from s to t is created.
In the second step, arc shaped edges are created. After creating the tangent edges and corresponding vertices, the arcs between the vertices on the boundary of  each disk are created as edges and added to the graph. In order to keep the graph as simple as possible, the number of edges is tried to be kept as minimum as possible. For this, only the arcs between two neighbor vertices (e.g. non-overlapping arcs) are created. It can be easily seen that with combinations of these non-overlapping arc segments, any possible arc between all possible vertex pairs can be spanned. In Figure 5(d), a TAG constructed for an ONP instance with three discs is presented.
TAG modeling requires a construction process which has a complexity dependent on |D|. More specifically, the complexity of constructing tangent edges between disks is O(|D| 2 ). This is because tangent edge construction involves a constant number of operation for processing every disk pair where there are |D| * (|D| − 1)/2 disk pairs. For creating the arc edges, there are O(|D|) number of vertices on each disk which means O(|D| × log(|D|)) number of operations are required in order to sort the vertices clockwise before creating the arcs between them. Since the number of disks is |D|, the complexity of creating all arcs is O(|D| 2 × log(|D|)). Thus the complexity of creating a TAG is O(|D| 2 × log(|D|)). A similar algorithm is used in [3] with a complexity of O(|D| 3 × log(|D|)) where they tackle a different problem.

4.2.
TAG contains the optimum path. Although there are uncountably infinitely many curves over which to minimize, below it is shown that the optimum path for an ONP instance must be a path in the associated TAG. However, the following definitions are needed: : set of discs p * K,D does not intersect with. In this subsection, the set of discs on which the cost function (τ ) will be evaluated is important and therefore overriding the previous definition, it will be used as τ (p, D). Therefore, τ (p, D) = (p) + |φ(p, D)| × C.
At the same time one can easily observe that where L is the number of discs p * K,D intersects with in D. That is, if one traverses along p * 0,D in D, then it may intersect at most L discs which are actually the discs p * K,D intersects with (see how D is defined above). Then, by firstly multiplying each side by C in Equation (12) and adding Equations (11) and (12) side by side, it is obtained which means that τ (p * 0,D , D) < τ (p * K,D , D). That is, p * 0,D is shorter than p * K,D in D. However, this is a contradiction because by definition p * K,D must be the optimum path for (s, t, D, C, K). Therefore p * K,D = p * 0,D So, the optimum path for any ONP instance (s, t, D, C, K) is exactly the same path for some other ONP instance (s, t, D , C, 0) where allowed number of neutralizations is 0 and D ⊆ D. Hence, if it can be shown that the optimum path for the ONP instance (s, t, D , C, 0) lies on the TAG (V , E ), then it can also be shown that the optimum path for the ONP instance (s, t, D, C, K) lies on the Proof. Since the optimum path for (s, t, D , C, 0) does not penetrate any discs, from the triangle inequality, the path must either walk on the boundaries of discs or use straight lines (tangents) between disks. By definition, TAG already consists of the arcs on the boundaries and tangents between discs. Therefore, the optimum path lies on the associated TAG.

5.
Computational experiments and results. This section presents the results of the comprehensive computational experiments revealing the performance of the proposed optimal algorithm on real, continuous, discretized, and random data by comparing with an ant system based algorithm and with the well-known SCIP integer programming solver [4,18]. Since an optimal algorithm is proposed, the basic metric to measure the performance of the proposed algorithm is its run time, RT (in seconds). Number of paths that the kSPA retrieves (#RP ) is another data reported in the following tables. Note that a value of 0 for #RP indicates that the optimal algorithm finds the optimum solution in Phase I. Additionally, the number of neutralizations on the optimal path (θ(p * )) and its total cost (τ (p * )) are reported as well. Regarding the ant system based algorithm, percent deviation from the optimal path cost value and run time is provided. For the IP solver, only the run time value is reported since the optimal paths cost is already same with the value found by the proposed optimal algorithm.
The specific application domain considered in our experiments is naval minefield navigation. A particular instance we make use of is a U.S. Navy minefield data set (called the COBRA data) with 39 obstacle disks that first appeared in Witherspoon et al. [31] and was later referred to in [28,27,14,34,33,3,2,1,7]. The COBRA data is illustrated in Figure 6 and tabulated in Table 1.
In addition to the real data explained above, several COBRA-like instances are used in order to fully reveal the performance of the proposed algorithm. Specifically, 100 instances are created for the obstacle field with 100 disks with radius=5 on a [0,100]×[0,100] rectangle.
A desirable feature of the lattice discretization is that its resolution can be increased or decreased as needed to achieve a desired balance between accuracy and computational burden. As an example on one of random obstacle fields, the solution of a problem instance (s, t, D, 5, 1) is presented on continuous space and discretized space with three different resolution settings (Figure 7). On continuous space the optimum path (p 1 ) does not need to make any neutralizations. p 2 , p 3 and p 4 are the optimum solutions when discretization is performed with 50×50, Figure 6. An actual naval minefield data set, called the COBRA data. Results on COBRA data. The proposed optimal algorithm is firstly tried on original COBRA data and its discretized version. While discretizing the CO-BRA data, vertices are created on the coordinates that are multiples of 10 with enough vertices spanning all obstacle field. Therefore, straight edges have a length of 10 whereas the diagonal edges have a length of 10 √ 2. Results regarding the tests conducted on both original COBRA data and its discretized version are given in Table 2 where several C and K value combinations. Observe that the proposed optimal algorithm finds the optimum result very quickly when compared with the IP solver where proposed optimal algorithm works up to 650 times faster than the IP solver. As the reader can notice easily, run time of the IP solver is provided only for the continuous environment because it can not run it on discretized environment due to the excessive number of vertices and edges that it can handle. Another major observation is that the results are obtained by Phase I of the optimal algorithm. Specifically on continuous setting, when C ≥ 10, the optimum solution for K = 1, 2, 3 is the same path having one neutralization. On discretized setting, the optimum solution for K = 1, 2, 3 is the same path having one neutralization when C ≥ 50.

5.2.
Performance on random COBRA-like obstacle fields on continuous graphs. As described in the previous subsection, 100 random COBRA-like obstacle fields are created with 100 disks in each. The performance of the optimal algorithm is tried on those instances with various C and K values and compared with the AS algorithm developed in [4]. Tables 3 and 4 present the performance comparison of the optimal algorithm and AS algorithm both in terms of solution quality and run time where each figure is the average of 100 obstacle fields. In Table 3 and 4, %Dev. column presents the deviation of the AS solution from the optimal and RT column presents its run time in seconds.
It can be easily observed that #RP and RT are proportional with each other which means that almost all of running time is due to kSPA. Another observation is the effectiveness of the optimal algorithm when K increases. This is because the algorithm firstly uses a heuristic to find a provably suboptimal solution. If it can find one, then it stops. The same observation is valid for various C values in Table 4. When compared with the run time of the IP solver, proposed optimal algorithm is faster for each C and K value where the performance gain is up to 640 times. Therefore, one can easily see that the proposed optimal algorithm is robust for high C and K values. On the other hand, one can see that AS presents a poor performance both in terms of path cost and run time. When compared with the proposed optimal algorithm, AS finds the solution inferior more than 9% in up to 200 times more time than the optimal algorithm. The poor performance in total cost is due to its stochastic nature whereas its high runtime is due to its iterative design while the ants try to build paths.

5.3.
Performance on random COBRA-like obstacle fields on discretized graphs. In order to reveal the performance of the proposed optimal algorithm on discrete graphs, the random COBRA-like obstacle fields are discretized on three different resolutions where each vertical and horizontal edge has a length of 10, 5 and 2. Thus, an obstacle field of [0,100]×[0,100] will have 10×10, 20×20, and 50×50 vertices from its coarsest resolution to its finest resolution. Results regarding the performance with various K values on different resolutions are given in Table 5.
Observe in Table 5 that for any K value, as the resolution gets finer, #RP and RT measures increase fast which due to the increase in edges and therefore in number of paths. Another interesting finding is observed when Table 3 and 5 are compared. See that even the #RP results on worst resolution (10×10 discrete setting) is greater than the one for continuous setting. However, even though run time on 10×10 setting is significantly less than continuous setting, the run time on 20×20 and 50×50 settings get considerably large. The reason why the #RP value get larger on finer resolution graphs is the parallel identical paths that occur more likely on discretized graphs. Due to its inherent design, the kSPA saves every instance of path that it checks until it finds the optimum path and there may be many parallel paths. Consider the following example in Figure 8. In the figure, suppose the path s − v − x − y − z − t is the shortest path and we are trying to find the second shortest path (excluding the parallel paths). Let us count how many parallel identical paths are there of the shortest path. There are 5 1 = 5 parallel paths from s to v (because they are five edges away vertically and one edge away horizontally from each other). Similarly, there are 5 2 = 10 parallel paths from x to y, and 4 3 = 4 parallel paths from z to t. Thus, even in this small graph 5 × 10 × 4 = 200 parallel identical paths are observed. Therefore memory footprint for the kSPA may grow in an unexpected way on the discretized graphs due to identical parallel paths. 5.4. Complexity for building TAG vs. Discretized graphs. In this study, graph modeling of the environment is performed in two different ways: TAG and discretization. The first model solves ONP in continuous environment and therefore can find optimal solution, whereas the second approach handles the problem in discrete space and can only find a sub-optimal solutions. From practical point of view, some discussions about the practical preference of building continuous and discretized graphs should be included. As it is shown in previous section, the Table 5. Results of proposed optimal algorithm on 50 random COBRA-like obstacle fields for various K values (C = 1) K [10]× [10] [20]× [20] [50]×[50] θ(p * ) τ (p * ) #RP RT (s) θ(p * ) τ (p * ) #RP RT (s) θ(p * ) τ (p * ) #RP RT (s)  Figure 8. An example how there occurs many parallel paths on a discretized minefield complexity of creating a TAG is O(|D| 2 × log(|D|)). Note that this complexity is independent of the map size. However, when discretization is used the complexity of the construction of the lattice graph depends on the map size. Grid construction, as opposed to TAG, is not affected by the cardinality of |D|. Specifically, if x denotes the number of vertices on a coordinate axis (assume for simplicity there are equal number of vertices on both coordinates), the complexity of grid construction is O(x 2 ) which is not dependent on |D|. Therefore, in small graphs (in terms of |D|) using TAG modeling is more efficient which also guarantees to find the optimal solution in the continuous space. In large graphs (with high number of disks), on the other hand, the TAG construction time increases, whereas the creation of the grid can take considerably shorter times.
6. Summary and conclusions. In this study, the obstacle neutralization problem (ONP) is tackled. The goal of ONP is to safely and swiftly navigate an agent from a given source location to a destination through an arrangement of obstacles in the plane. The agent is capable of neutralizing a limited number of disks en route at a cost. The main issue is how to optimally use this neutralization capability for the shortest s − t traversal. A two-phased optimal algorithm is presented to solve this problem and its correctness is proved. The performance of the algorithm is tried both on real minefield examples and synthetic but realistic obstacle fields. Furthermore, the algorithm is tried both on continuous and discrete spaces. The computational results suggest that the algorithm performs better in continuous space, which is a desirable property. The inferior performance in discrete space is due to large number of identical parallel paths that may a burden for Phase II of the algorithm. The run time performance of the algorithm is compared with an IP solver and as a result the proposed optimal algorithm runs up to 650 times faster than the IP solver. As a future work, in order to improve the performance of the optimal algorithm, a kSPA that can deal with parallel paths can be worked on. Furthermore, we believe that the proposed algorithm can be applied to several problem domains considering optimal navigation including ships neutralizing ice zones and military air vehicles neutralizing danger zones.