12.07.2015 Views

Recognition of Largest Empty Orthoconvex Polygon in a Point Set

Recognition of Largest Empty Orthoconvex Polygon in a Point Set

Recognition of Largest Empty Orthoconvex Polygon in a Point Set

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

CCCG 2008, Montréal, Québec, August 13–15, 2008<strong>Recognition</strong> <strong>of</strong> <strong>Largest</strong> <strong>Empty</strong> <strong>Orthoconvex</strong> <strong>Polygon</strong> <strong>in</strong> a Po<strong>in</strong>t <strong>Set</strong>Subhas C. Nandy ∗ Krishnendu Mukhopadhyaya ∗ Bhargab B. Bhattacharya ∗AbstractAn algorithm for comput<strong>in</strong>g the maximum area emptyisothetic orthoconvex polygon among a set <strong>of</strong> n po<strong>in</strong>ts<strong>in</strong> a rectangular region, is presented. The worst casetime and space complexities <strong>of</strong> the proposed algorithmare O(n 3 ) and O(n 2 ) respectively.1 IntroductionThe problem <strong>of</strong> f<strong>in</strong>d<strong>in</strong>g an empty convex k-gon <strong>of</strong> maximumarea or perimeter amidst a po<strong>in</strong>t set [4] has severalapplications. A survey paper [2] has been publishedvery recently, which elaborates several optimization issuesrelated to this problem. In VLSI layout design,document image process<strong>in</strong>g and shape description, isotheticpolygons play a major role. A polygon is said tobe isothetic if its sides are parallel to coord<strong>in</strong>ate axes.The problem <strong>of</strong> identify<strong>in</strong>g the largest empty isotheticrectangle among a set <strong>of</strong> po<strong>in</strong>ts has been studied extensively.The best known algorithm for this problem runs<strong>in</strong> O(n log 2 n) time [1]. The same time complexity holdsif the obstacles are arbitrary polygons [6, 9]. Recentlyit is shown that the largest isothetic rectangle <strong>in</strong>side asimple polygon can be obta<strong>in</strong>ed <strong>in</strong> O(n log n) time [5].In isothetic doma<strong>in</strong>, the generalization <strong>of</strong> this problemis recogniz<strong>in</strong>g the largest empty orthoconvex polygon.An isothetic polygon is said to be orthoconvex if the<strong>in</strong>tersection <strong>of</strong> the polygon with a horizontal or a verticall<strong>in</strong>e is a s<strong>in</strong>gle l<strong>in</strong>e segment. <strong>Orthoconvex</strong>ity hasimportance <strong>in</strong> robotic visibility, and also its discretevariant appears <strong>in</strong> other areas like digital geometry [3]and discrete tomography [8]. Datta and Ramkumar[7] proposed algorithms for recogniz<strong>in</strong>g largest emptyorthoconvex polygon <strong>of</strong> some specified shapes amidsta 2D po<strong>in</strong>t set. These <strong>in</strong>clude (i) L-shape, (ii) crossshape, (iii) po<strong>in</strong>t visible, and (iv) edge visible polygons.The time complexity <strong>of</strong> these algorithms are allO(n 2 ). Another variation <strong>in</strong> this class <strong>of</strong> problems isrecogniz<strong>in</strong>g the largest empty staircase polygon amongpo<strong>in</strong>t and isothetic polygonal obstacles, which can alsobe solved <strong>in</strong> O(n 2 ) time and space [10]. But, to thebest <strong>of</strong> our knowledge, the problem <strong>of</strong> recogniz<strong>in</strong>g anempty orthoconvex polygon <strong>of</strong> arbitrary shape maximiz<strong>in</strong>garea/perimeter is not studied yet. In this paper,we propose an algorithm <strong>of</strong> recogniz<strong>in</strong>g an empty orthoconvexpolygon <strong>of</strong> maximum area, that runs <strong>in</strong> O(n 3 )time us<strong>in</strong>g O(n 2 ) space.∗ Indian Statistical Institute, Kolkata - 700 108, India2 Prilim<strong>in</strong>ariesLet R be a rectangular region conta<strong>in</strong><strong>in</strong>g a set <strong>of</strong> npo<strong>in</strong>ts P = {p 1 , p 2 , . . . , p n }. We will assume a coord<strong>in</strong>atesystem with bottom and left boundaries <strong>of</strong> R asthe x- and y-axes respectively. The coord<strong>in</strong>ates <strong>of</strong> apo<strong>in</strong>t α are denoted as (x(α), y(α)). We assume thatthe po<strong>in</strong>ts <strong>in</strong> P are <strong>in</strong> general positions, i.e., for everytwo po<strong>in</strong>ts p i and p j , x(p i ) ≠ x(p j ) and y(p i ) ≠ y(p j ).Henceforth, we shall use H i and V i to denote a horizontaland a vertical l<strong>in</strong>e pass<strong>in</strong>g through the po<strong>in</strong>t p i .Def<strong>in</strong>ition 1 An isothetic curve is a rectil<strong>in</strong>ear pathconsist<strong>in</strong>g <strong>of</strong> alternately horizontal and vertical l<strong>in</strong>e segments.An isothetic curve is a monotonically ris<strong>in</strong>gstaircase (R-stair) if for every pair <strong>of</strong> po<strong>in</strong>ts α and βon the curve, x(α) ≤ x(β) implies y(α) ≤ y(β). Similarly,for every pair <strong>of</strong> po<strong>in</strong>ts α and β on a monotonicallyfall<strong>in</strong>g staircase (F-stair), we have x(α) ≤ x(β)implies y(α) ≥ y(β). An isothetic polygon is a regionbounded by a closed isothetic curve.Def<strong>in</strong>ition 2 An isothetic polygon Π is said to be orthoconvexif for any horizontal or vertical l<strong>in</strong>e l, the <strong>in</strong>tersection<strong>of</strong> Π with l is a l<strong>in</strong>e segment <strong>of</strong> length greaterthan or equal to 0. In other words, l either <strong>in</strong>tersectsno edge or exactly two edges <strong>of</strong> Π.An orthoconvex polygon is empty if it does not conta<strong>in</strong>any member <strong>of</strong> P <strong>in</strong> its <strong>in</strong>terior. Our objective is toidentify the largest empty orthoconvex polygon <strong>in</strong> R.Def<strong>in</strong>ition 3 An empty orthoconvex polygon Π is saidto be maximal empty orthoconvex polygon (MEOP) ifthere exists no other empty orthoconvex polygon Π ′ thatproperly encloses Π.It is easy to observe that an MEOP is bounded bytwo R-stairs R tl and R br , and two F-stairs F tr andF bl , where R tl spans from the left boundary to the topboundary, R br spans from the bottom boundary to theright boundary, F tr spans from the top boundary to theright boundary and F bl spans from the left boundaryto the bottom boundary <strong>of</strong> R, and each concave vertex<strong>of</strong> these stairs must co<strong>in</strong>cide with a member <strong>in</strong> P (seeFigure 1). It may be observed that an R-stair (or anF-stair) may degenerate to a corner po<strong>in</strong>t <strong>of</strong> R.The number <strong>of</strong> maximal empty staircase polygonsamidst a po<strong>in</strong>t set <strong>of</strong> size n may be exponential <strong>in</strong> n;however, the maximum-area empty staircase polygoncan be computed <strong>in</strong> O(n 2 ) time [10]. S<strong>in</strong>ce a maximalempty staircase polygon is an MEOP as well, the same


20th Canadian Conference on Computational Geometry, 2008RtlFtrRtlp jFtrFblp jp i Rbr Fblp iRbr(a)Figure 1: <strong>Orthoconvex</strong> polygons(b)comb<strong>in</strong>atorial explosion holds for MEOP also. We nowpresent a polynomial time algorithm for comput<strong>in</strong>g themaximum-area MEOP.3 AlgorithmWe shall consider all possible pairs <strong>of</strong> po<strong>in</strong>ts p i , p j ∈ P,and identify the maximum area MEOP with p i ∈ F blas the closest po<strong>in</strong>t <strong>of</strong> the bottom boundary <strong>of</strong> R, andp j ∈ F tr as the closest po<strong>in</strong>t <strong>of</strong> the top boundary <strong>of</strong> R.The po<strong>in</strong>ts p i and p j are said to be the bottom-pivot andtop-pivot respectively, and the correspond<strong>in</strong>g MEOP isdenoted by MEOP(p i , p j ). We will use S to denote thevertical slab bounded by V i and V j . The projections <strong>of</strong>a po<strong>in</strong>t p k ∈ S on V i , V j , H i and H j are denoted by q k ,qk ′ , r k and rk ′ respectively. We now separately considertwo cases: (i) x(p i ) < x(p j ), and (ii) x(p i ) > x(p j ).In Case (i), the l<strong>in</strong>es V i and V j split the po<strong>in</strong>t set P<strong>in</strong>to three parts, P 1 , P 2 and P 3 , where P 1 and P 3 arethe set <strong>of</strong> po<strong>in</strong>ts to the left <strong>of</strong> V i and to the right <strong>of</strong> V jrespectively, and the po<strong>in</strong>ts <strong>in</strong> P 2 lie <strong>in</strong>side the verticalslab S. If V i hits the top and bottom boundaries <strong>of</strong>R at t 1 and b 1 respectively, and V j hits the top andbottom boundaries <strong>of</strong> R at t 2 and b 2 respectively. Now,the portion <strong>of</strong> the MEOP <strong>in</strong>side the vertical slab S,denoted by M 2 (b 1 , t 2 ), is an empty staircase polygonwith diagonally opposite corners b 1 and t 2 among thepo<strong>in</strong>ts <strong>in</strong> P 2 . The two stairs <strong>of</strong> M 2 (b 1 , t 2 ) are parts <strong>of</strong>the ris<strong>in</strong>g stairs R br and R tl respectively. If R tl hitsV i at q α , then the portion <strong>of</strong> the MEOP to the left <strong>of</strong>V i , denoted by M 1 (q α ), is an empty edge-visible polygonwith base [p i , q α ] among the po<strong>in</strong>ts <strong>in</strong> P 1 such that everypo<strong>in</strong>t <strong>in</strong>side the polygon is visible from its base [p i , q α ].Similarly, if R br hits V j at q β ′ then M 3(q β ′ ) is an emptyedge-visible polygon with base [p j , q β ′ ] among the po<strong>in</strong>ts<strong>in</strong> P 3 .In Case (ii), V j is to the left <strong>of</strong> V i . Here M 2 is an emptystaircase polygon from p i to p j , and these are the parts<strong>of</strong> F bl and F tr <strong>of</strong> the MEOP respectively. If F bl (resp.F tr ) hits V j (resp. V i ) at q ′ α (resp. q β), then M 1 (q ′ α )(portion to the left <strong>of</strong> V j ) is an edge-visible polygon withbase [q ′ α , p j], and M 3 (q β ) (portion to the right <strong>of</strong> V i ) isan edge-visible polygon with base [q β , p i ]. After fix<strong>in</strong>g p iand p j as the bottom-pivot and top-pivot respectively,we need to choose M 1 , M 2 and M 3 such that the sum<strong>of</strong> areas <strong>of</strong> these three polygons is maximum among allsuch polygons. We shall describe our algorithm for Case(i) only. Case (ii) can easily be handled us<strong>in</strong>g a similarmethod. For Case (i), we expla<strong>in</strong> the method <strong>of</strong> comput<strong>in</strong>gthe desired M 1 and M 2 . The computation <strong>of</strong> M 3is the same as that <strong>of</strong> M 1 .3.1 Computation <strong>of</strong> M 1Let us consider a po<strong>in</strong>t p i ∈ P. Let P 1 = {p k |x(p k ) x(p i ) and y(p k ) > y(p i )}.Q <strong>in</strong>cludes the top-right corner <strong>of</strong> R, and |Q| = m +1. Let q 0 , q 1 , q 2 , . . . , q m denote the projections <strong>of</strong> thepo<strong>in</strong>ts <strong>in</strong> Q on the vertical l<strong>in</strong>e V i <strong>in</strong> decreas<strong>in</strong>g order<strong>of</strong> their y-coord<strong>in</strong>ates. We create an array EV L(p i )whose elements are the maximum area empty edgevisiblepolygon M 1 (q k ) with [p i , q k ] as the base for allk = 0, 1, 2, . . ., m.We use vertical l<strong>in</strong>e sweep among the po<strong>in</strong>ts <strong>in</strong> P 1 start<strong>in</strong>gfrom the position <strong>of</strong> V i to create a height-balancedb<strong>in</strong>ary tree T . Its each node v is represented as a 5-tuple(I, x val, y val, ∆, δ). I is the base <strong>of</strong> the edge-visiblepolygons attached to node v. (x val, y val) is the po<strong>in</strong>twhere the node v is generated, and ∆ conta<strong>in</strong>s the area<strong>of</strong> the largest edge visible polygon rooted at that node.The ∆ parameters are computed <strong>in</strong> two passes. In theforward pass dur<strong>in</strong>g the sweep, the ∆ parameter <strong>of</strong> anode conta<strong>in</strong>s the area <strong>of</strong> the edge visible polygon thatis computed so far at that node. At the end <strong>of</strong> thesweep, a backward pass is executed from the leaf level<strong>of</strong> T up to its root, and ∆ value <strong>of</strong> each node is properlyset. The δ value <strong>of</strong> all nodes are 0 at the time <strong>of</strong> creation<strong>of</strong> T ; it will be set and used dur<strong>in</strong>g the computation <strong>of</strong>M 1 (q k ) for different q k .Creation <strong>of</strong> TThe root r <strong>of</strong> T corresponds to the entire <strong>in</strong>tervalI = [p i , q 0 ]; its x val and ∆ parameters are set tox(p i ) and 0 respectively. A vertical l<strong>in</strong>e sweep is performedfrom x = x(p i ) towards left. When a po<strong>in</strong>tp = (x(p), y(p)) ∈ P 1 is faced by the sweep l<strong>in</strong>e, theleaf nodes <strong>in</strong> T are searched. If y(p) lies <strong>in</strong> the <strong>in</strong>ter-


CCCG 2008, Montréal, Québec, August 13–15, 2008val [α, β] <strong>of</strong> a node v = ([α, β], µ, ν, ∆, δ), we compute∆ ∗ = ∆+(µ−x(p))×(β −α). Next, we create two children<strong>of</strong> v, namely v a = ([α, y(p)], x(p), y(p), ∆ ∗ , 0) andv b = ([y(p), β], x(p), y(p), ∆ ∗ , 0). F<strong>in</strong>ally, the backwardpass is executed from leaves towards the root <strong>in</strong> postordermanner to set the ∆ values as described above.Computation <strong>of</strong> M 1 (q k )M 1 (q 0 ) = ∆ attached to the root node r. While process<strong>in</strong>gq k , we assume that q k−1 is already processed. Westart scan<strong>in</strong>g from the root <strong>of</strong> T . At a particular nodev = ([α, β], µ, ν, ∆(v), δ(v)) on the search path, one <strong>of</strong>the follow<strong>in</strong>g two situations may happen: (i) ν ≥ y(q k )and (ii) ν < y(q k ).In Case (i), we compute A = (x(p i ) − µ) × (y(q k ) −y(q k−1 )). The area A is to be subtracted from all theedge-visible polygons stored <strong>in</strong> the the right-child v b <strong>of</strong>the node v. We subtract A from ∆(v b ). Without entirelytravers<strong>in</strong>g the subtree rooted at v b , we add A <strong>in</strong>δ(v b ). The motivation is that, while process<strong>in</strong>g someother q l , if the subtree rooted at v b is traversed, δ(v b )will be subtracted from the ∆ value <strong>of</strong> those nodes. Thesearch proceeds towards the left child <strong>of</strong> the node v. Ateach move from a node v to its children v ′ , δ(v) is subtractedfrom ∆(v ′ ), and added to δ(v ′ ), and then δ(v)is set to 0.In Case (ii), the edge visible polygon <strong>in</strong> the left child v a<strong>of</strong> the node v does not exist; so we delete the subtreerooted at v a and the node v also; the search proceedstowards the right child <strong>of</strong> v. The propagation <strong>of</strong> δ isto be performed at each step, but the computation <strong>of</strong>excess area A is to be performed when Case (i) arises.Next, a backward pass is needed to set the ∆ field <strong>of</strong> allthe nodes <strong>in</strong> the updated T . F<strong>in</strong>ally, M 1 (q k ) is set withthe ∆ value <strong>of</strong> the root <strong>of</strong> the updated T .Lemma 1 The computation <strong>of</strong> M 1 (q k ) for all k =0, 1, . . .,m needs O(n 2 ) time.Pro<strong>of</strong>. The creation <strong>of</strong> T needs O(n log n) time. Thelemma follows from the fact that the comb<strong>in</strong>atorial complexity<strong>of</strong> M 1 (q k ) is O(n) for all k = 0, 1, . . .,m. ✷Similarly, with each po<strong>in</strong>t p i ∈ P, an array EV R(p i ) isattached. If the projections <strong>of</strong> the po<strong>in</strong>ts {p k |x(p k )


20th Canadian Conference on Computational Geometry, 2008In our problem, comput<strong>in</strong>g the maximum area emptystaircase polygon among the po<strong>in</strong>ts <strong>in</strong> P 2 will not suffice.Suppose MEOP(p i , p j ) consists <strong>of</strong> a staircase polygonMESP(p i , p j ), that has edges (p i , q α ) along V i , (p j , q α ′)along V j , (p i , r β ) along H i and (p j , r β ′) along H j , thenit <strong>in</strong>cludes (i) an edge-visible polygon with base (p i , q)to the left <strong>of</strong> V i , (ii) an edge visible polygon with base(p j , q ′ ) to the right <strong>of</strong> V j , (ii) an L-polygon with base(p i , r) and (iv) an L-polygon with base (p j , r ′ ). Let q, q ′ ,r and r ′ correspond to p α , p α ′, p β , p β ′ ∈ P 2 respectively.Thus, <strong>in</strong> order to compute the MEOP <strong>of</strong> maximumarea, we need to modify the weight <strong>of</strong> some edges <strong>of</strong> thegraph SG as follows, and then compute the maximumweighted path <strong>in</strong> the graph SG.For each α such that p α ∈ P 2 , change the weight <strong>of</strong> itseach outgo<strong>in</strong>g edge e to w(e) + area(M 1 (p i , q α )).For each edge e ′ = (p i , β k ′), change the weight <strong>of</strong> e ′ tow(e ′ ) + area(LB(p i , r β )).For each edge α ′ such that p α ′ ∈ P 2 , if there existsan edge e ∗∗ from a footpr<strong>in</strong>t <strong>of</strong> α ′ to a footpr<strong>in</strong>t<strong>of</strong> p j , then change its weight to w(e ∗∗ ) +area(M 3 (p j , q ′ α ′)).For each <strong>in</strong>com<strong>in</strong>g edge e ′ on j β ′), change the weight<strong>of</strong> e ′ to w(e ′ ) + area(LA(p j , r β ′)).Theorem 2 The largest MEOP among a set <strong>of</strong> npo<strong>in</strong>ts can be computed <strong>in</strong> O(n 5 ) time and O(n 2 ) space.In [10], it is also shown that the geometric properties<strong>of</strong> the problem can be exploited to design an algorithmfor comput<strong>in</strong>g the empty staircase polygon <strong>of</strong> maximumarea <strong>in</strong> O(|P 2 | 2 ) time and space. Here the results <strong>of</strong> proces<strong>in</strong>ga po<strong>in</strong>t p j for comput<strong>in</strong>g the MESP(o, p j ) areused to compute MESP(o, p k ), where x(p k ) > x(p j )and y(p k ) > y(p j ); The po<strong>in</strong>t o is the bottom left corner<strong>of</strong> the rectangular floor. We will use the same pr<strong>in</strong>cipleto reduce the time complexity <strong>of</strong> the problem <strong>of</strong>comput<strong>in</strong>g the maximum area MEOP to O(n 3 ).4 Further improvementWe will fix a po<strong>in</strong>t p i ∈ P, and consider all p j ∈ Pwith x(p j ) > x(p i ) and y(p j ) > y(p i ). We also use thethe notion <strong>of</strong> complete process<strong>in</strong>g <strong>of</strong> a po<strong>in</strong>t p j [10]. Apo<strong>in</strong>t p j is said to be completely processed if all the edges<strong>in</strong>cident to p j <strong>in</strong> the graph G are processed. When apo<strong>in</strong>t p j is completely processed, the weights <strong>of</strong> differentpaths <strong>in</strong> the staircase graph (SG) with bottom-pivotand p i and p j respectively, are available at the footpr<strong>in</strong>ts<strong>of</strong> p j . Each <strong>of</strong> these polygons has <strong>in</strong>cluded thecorrespond<strong>in</strong>g M 1 (p i , q α ) and LB(p i , r β ) for some appropriatep α , p β ∈ S. In order to get the maximum areaMEOP with a MESP(p i , p j ), we need to add the area<strong>of</strong> the appropriate M 3 (p j , q α ′) and LA(p j , r β ′), wherep α ′, p β ′ ∈ S. We can compute the array L conta<strong>in</strong><strong>in</strong>gLA(p j , r k ) for all the po<strong>in</strong>ts p k ∈ S above H j <strong>in</strong> O(n)time. The values <strong>of</strong> area(M 3 (p j , q k )) are all available<strong>in</strong> the array EV R(p j ). Now we can use EV R(p j ), L,and the area attached to the different footpr<strong>in</strong>ts <strong>of</strong> p jto compute the largest MEOP(p i , p j ) <strong>in</strong> O(n) time.We process the po<strong>in</strong>ts above H i <strong>in</strong> S by sweep<strong>in</strong>g ahorizontal l<strong>in</strong>e upwards. After complete process<strong>in</strong>g <strong>of</strong>p j , we compute MEOP(p i , p j ) as described above, andthen process the outgo<strong>in</strong>g edges <strong>of</strong> p j <strong>in</strong> G. Thus, wehave the follow<strong>in</strong>g theorem:Theorem 3 The largest MEOP among a set <strong>of</strong> npo<strong>in</strong>ts can be computed <strong>in</strong> O(n 3 ) time and O(n 2 ) space.Pro<strong>of</strong>. For a fixed p i , the generation <strong>of</strong> footpr<strong>in</strong>ts forall p j ∈ P with x(p j ) > x(p i ) and y(p j ) > y(p i ) needsO(n 2 ) time [10]. The additional time required to processeach p j ∈ P is O(n). S<strong>in</strong>ce we need to fix each p i , thetime complexity result follows.The space complexity result follows from the fact thatthe preprocessed arrays M 1 (p i ) and M 3 (p i ) are <strong>of</strong> sizeO(n) <strong>in</strong> the worst case. Moreover while process<strong>in</strong>g apo<strong>in</strong>t p i , the number <strong>of</strong> footpr<strong>in</strong>ts generated is O(n 2 )<strong>in</strong> the worst case. These need to be stored dur<strong>in</strong>g theprocess<strong>in</strong>g <strong>of</strong> p i .✷References[1] A. Aggarwal and S. Suri, Fast algorithms for comput<strong>in</strong>gthe largest empty rectangle, <strong>in</strong> Proc. 3rd. Annual Symp.Comp. Geom., pp. 278-290, 1987.[2] C. Audet, P. Hansen and F. Mess<strong>in</strong>e, Extremal problemsfor convex polygons, J. <strong>of</strong> Global Optimization, vol. 38,pp. 163-179, 2007.[3] A. Biswas, P. Bhowmick and B. B. Bhattacharya, F<strong>in</strong>d<strong>in</strong>gthe orthogonal hull <strong>of</strong> a digital object, Proc. IWCIA,LNCS-4958, pp. 124-135, 2008.[4] J. E. Boyce, D. P. Dobk<strong>in</strong>, R. L. Drysdale, and L.Guibas, F<strong>in</strong>d<strong>in</strong>g extremal polygons, Proc. 14th AnnualACM Symp. on Theory <strong>of</strong> comput., pp. 282 - 289, 1982.[5] R. P. Boland and J. Urrutia, F<strong>in</strong>d<strong>in</strong>g the largest axisaligned rectangle <strong>in</strong> a polygon <strong>in</strong> o(nlog n) time, Proc.Canad. Conf. <strong>in</strong> Comp. Geom., pp. 41-44, 2001.[6] K. Daniels, V. Milenkovic and D. Roth, F<strong>in</strong>d<strong>in</strong>g thelargest area axis-parallel rectangle <strong>in</strong> a polygon, ComputationalGeometry: Theory and Applications, vol. 7, pp.125-148, 1997.[7] A. Datta and G. D. S. Ramkumar, On some largestempty orthoconvex polygons <strong>in</strong> a po<strong>in</strong>t set, Proc.FSTTCS, LNCS 472, pp. 270-285, 1990.[8] G. T. Herman and A. Kuba (eds.), Advances <strong>in</strong> DiscreteTomography and its Applications, Birkhauser, 2007.[9] S. C. Nandy, A. S<strong>in</strong>ha and B. B. Bhattacharya, Location<strong>of</strong> the largest empty rectangle among arbitrary obstacles,Proc. FSTTCS, LNCS 880, pp. 159-170, 1994.[10] S. C. Nandy and B. B. Bhattacharya, On f<strong>in</strong>d<strong>in</strong>g anempty staircase polygon <strong>of</strong> largest area (width) <strong>in</strong> a planarpo<strong>in</strong>t-set Computational Geometry: Theory and Applications,vol. 26, pp. 143-171, 2003.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!