Agarwal, P.K., Bereg, S., Daescu, O. et al. Algorithmica (2010) 58: 352. doi:10.1007/s00453-008-9270-3
Given a polyhedral terrain T with n vertices, the two-watchtower problem for T asks to find two vertical segments, called watchtowers, of smallest common height, whose bottom endpoints (bases) lie on T, and whose top endpoints guardT, in the sense that each point on T is visible from at least one of them. There are three versions of the problem, discrete, semi-continuous, and continuous, depending on whether two, one, or none of the two bases are restricted to be among the vertices of T, respectively.
In this paper we present the following results for the two-watchtower problem in ℝ2 and ℝ3: (1) We show that the discrete two-watchtowers problem in ℝ2 can be solved in O(n2log 4n) time, significantly improving previous solutions. The algorithm works, without increasing its asymptotic running time, for the semi-continuous version, where one of the towers is allowed to be placed anywhere on T. (2) We show that the continuous two-watchtower problem in ℝ2 can be solved in O(n3α(n)log 3n) time, again significantly improving previous results. (3) Still in ℝ2, we show that the continuous version of the problem of guarding a finite set P⊂T of m points by two watchtowers of smallest common height can be solved in O(mnlog 4n) time. (4) We show that the discrete version of the two-watchtower problem in ℝ3 can be solved in O(n11/3polylog(n)) time; this is the first nontrivial result for this problem in ℝ3.