<p>A <i>rectilinear Steiner tree</i> for a set <i>P</i> of points in <InlineEquation ID="IEq1"> <EquationSource Format="TEX">\(\mathbb {R}^2\)</EquationSource> <EquationSource Format="MATHML"><math> <msup> <mrow> <mi mathvariant="double-struck">R</mi> </mrow> <mn>2</mn> </msup> </math></EquationSource> </InlineEquation> is a tree that connects the points in <i>P</i> using horizontal and vertical line segments. The goal of <span>Minimum</span> <span>Rectilinear</span> <span>Steiner</span> <span>Tree</span> is to find a rectilinear Steiner tree with minimum total length. We investigate how the complexity of <span>Minimum</span> <span>Rectilinear</span> <span>Steiner</span> <span>Tree</span> for point sets <i>P</i> inside a <InlineEquation ID="IEq2"> <EquationSource Format="TEX">\(\delta \)</EquationSource> <EquationSource Format="MATHML"><math> <mi>δ</mi> </math></EquationSource> </InlineEquation>-strip—that is, a strip of the form <InlineEquation ID="IEq3"> <EquationSource Format="TEX">\((-\infty ,+\infty )\times [0,\delta ]\)</EquationSource> <EquationSource Format="MATHML"><math> <mrow> <mo stretchy="false">(</mo> <mo>-</mo> <mi>∞</mi> <mo>,</mo> <mo>+</mo> <mi>∞</mi> <mo stretchy="false">)</mo> <mo>×</mo> <mo stretchy="false">[</mo> <mn>0</mn> <mo>,</mo> <mi>δ</mi> <mo stretchy="false">]</mo> </mrow> </math></EquationSource> </InlineEquation>—depends on the strip width&#xa0;<InlineEquation ID="IEq4"> <EquationSource Format="TEX">\(\delta \)</EquationSource> <EquationSource Format="MATHML"><math> <mi>δ</mi> </math></EquationSource> </InlineEquation>. We obtain three main results. <OrderedList> <ListItem> <ItemNumber>1.</ItemNumber> <ItemContent> <p>We present an algorithm that finds an optimal <i>monotonic</i> rectilinear Steiner tree in <i>O</i>(<i>n</i>) time, assuming the points are already sorted by <i>x</i>-coordinate. We show that when the difference between any two distinct <i>x</i>-coordinates is at least&#xa0;<InlineEquation ID="IEq5"> <EquationSource Format="TEX">\(\delta \)</EquationSource> <EquationSource Format="MATHML"><math> <mi>δ</mi> </math></EquationSource> </InlineEquation>, then an optimal monotonic rectilinear Steiner tree for a point set inside a <InlineEquation ID="IEq6"> <EquationSource Format="TEX">\(\delta \)</EquationSource> <EquationSource Format="MATHML"><math> <mi>δ</mi> </math></EquationSource> </InlineEquation>-strip is also optimal among all (possibly non-monotonic) rectilinear Steiner trees.</p> </ItemContent> </ListItem> <ListItem> <ItemNumber>2.</ItemNumber> <ItemContent> <p>Next, we consider sparse points sets, that is, point sets such that any <InlineEquation ID="IEq7"> <EquationSource Format="TEX">\(1\times \delta \)</EquationSource> <EquationSource Format="MATHML"><math> <mrow> <mn>1</mn> <mo>×</mo> <mi>δ</mi> </mrow> </math></EquationSource> </InlineEquation> rectangle inside the <InlineEquation ID="IEq8"> <EquationSource Format="TEX">\(\delta \)</EquationSource> <EquationSource Format="MATHML"><math> <mi>δ</mi> </math></EquationSource> </InlineEquation>-strip contains <i>O</i>(1) points. We first show that an optimal monotonic rectilinear Steiner tree provides an <InlineEquation ID="IEq9"> <EquationSource Format="TEX">\(O(\delta )\)</EquationSource> <EquationSource Format="MATHML"><math> <mrow> <mi>O</mi> <mo stretchy="false">(</mo> <mi>δ</mi> <mo stretchy="false">)</mo> </mrow> </math></EquationSource> </InlineEquation>-approximation of an optimal rectilinear Steiner tree. Second, we present an algorithm with running time <InlineEquation ID="IEq10"> <EquationSource Format="TEX">\(n^{O(\sqrt{\delta })}\)</EquationSource> <EquationSource Format="MATHML"><math> <msup> <mi>n</mi> <mrow> <mi>O</mi> <mo stretchy="false">(</mo> <msqrt> <mi>δ</mi> </msqrt> <mo stretchy="false">)</mo> </mrow> </msup> </math></EquationSource> </InlineEquation> that computes an optimal rectilinear Steiner tree for sparse point sets.</p> </ItemContent> </ListItem> <ListItem> <ItemNumber>3.</ItemNumber> <ItemContent> <p>For point sets whose points are chosen randomly inside the rectangle&#xa0;<InlineEquation ID="IEq11"> <EquationSource Format="TEX">\([0,n]\times [0,\delta ]\)</EquationSource> <EquationSource Format="MATHML"><math> <mrow> <mo stretchy="false">[</mo> <mn>0</mn> <mo>,</mo> <mi>n</mi> <mo stretchy="false">]</mo> <mo>×</mo> <mo stretchy="false">[</mo> <mn>0</mn> <mo>,</mo> <mi>δ</mi> <mo stretchy="false">]</mo> </mrow> </math></EquationSource> </InlineEquation>, we present an algorithm that is fixed-parameter tractable with respect to&#xa0;<InlineEquation ID="IEq12"> <EquationSource Format="TEX">\(\delta \)</EquationSource> <EquationSource Format="MATHML"><math> <mi>δ</mi> </math></EquationSource> </InlineEquation> and linear in <i>n</i>. It has an expected running time of <InlineEquation ID="IEq13"> <EquationSource Format="TEX">\(2^{O(\delta \sqrt{\delta })} n\)</EquationSource> <EquationSource Format="MATHML"><math> <mrow> <msup> <mn>2</mn> <mrow> <mi>O</mi> <mo stretchy="false">(</mo> <mi>δ</mi> <msqrt> <mi>δ</mi> </msqrt> <mo stretchy="false">)</mo> </mrow> </msup> <mi>n</mi> </mrow> </math></EquationSource> </InlineEquation>.</p> </ItemContent> </ListItem> </OrderedList></p>

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Rectilinear Steiner Trees in Narrow Strips

  • Henk Alkema,
  • Mark de Berg

摘要

A rectilinear Steiner tree for a set P of points in \(\mathbb {R}^2\) R 2 is a tree that connects the points in P using horizontal and vertical line segments. The goal of Minimum Rectilinear Steiner Tree is to find a rectilinear Steiner tree with minimum total length. We investigate how the complexity of Minimum Rectilinear Steiner Tree for point sets P inside a \(\delta \) δ -strip—that is, a strip of the form \((-\infty ,+\infty )\times [0,\delta ]\) ( - , + ) × [ 0 , δ ] —depends on the strip width  \(\delta \) δ . We obtain three main results. 1.

We present an algorithm that finds an optimal monotonic rectilinear Steiner tree in O(n) time, assuming the points are already sorted by x-coordinate. We show that when the difference between any two distinct x-coordinates is at least  \(\delta \) δ , then an optimal monotonic rectilinear Steiner tree for a point set inside a \(\delta \) δ -strip is also optimal among all (possibly non-monotonic) rectilinear Steiner trees.

2.

Next, we consider sparse points sets, that is, point sets such that any \(1\times \delta \) 1 × δ rectangle inside the \(\delta \) δ -strip contains O(1) points. We first show that an optimal monotonic rectilinear Steiner tree provides an \(O(\delta )\) O ( δ ) -approximation of an optimal rectilinear Steiner tree. Second, we present an algorithm with running time \(n^{O(\sqrt{\delta })}\) n O ( δ ) that computes an optimal rectilinear Steiner tree for sparse point sets.

3.

For point sets whose points are chosen randomly inside the rectangle  \([0,n]\times [0,\delta ]\) [ 0 , n ] × [ 0 , δ ] , we present an algorithm that is fixed-parameter tractable with respect to  \(\delta \) δ and linear in n. It has an expected running time of \(2^{O(\delta \sqrt{\delta })} n\) 2 O ( δ δ ) n .