Skip to main content
QUICK REVIEW

[論文レビュー] A linear-time algorithm for the maximum-area inscribed triangle in a convex polygon

Yoav Kallus|arXiv (Cornell University)|Jun 9, 2017
Computational Geometry and Mesh Generation参考文献 3被引用数 7
ひとこと要約

本稿では、n個の頂点を持つ凸多角形に内接する最大面積三角形を計算する線形時間アルゴリズムを提示している。これは、DobkinとSnyderが提唱した誤りのあるO(n)アルゴリズムを是正するものである。固定方向に平行な一辺をもつアンカード三角形(アンカード三角形)を活用することで、幾何的性質と凸最適化を用いて候補となる三角形を効率的に探索し、O(n)の時間計算量を達成した。これは計算幾何学における長年の未解決問題を解消するものである。

ABSTRACT

Given the n vertices of a convex polygon in cyclic order, can the triangle of maximum area inscribed in P be determined by an algorithm with O(n) time complexity? A purported linear-time algorithm by Dobkin and Snyder from 1979 has recently been shown to be incorrect by Keikha, Löffler, Urhausen, and van der Hoog. These authors give an alternative algorithm with O(n log n) time complexity. Here we give an algorithm with linear time complexity.

研究の動機と目的

  • 凸n角形に内接する最大面積三角形をO(n)時間で計算できるかどうかという未解決問題を解消すること。
  • DobkinとSnyder(1979年)が提唱した誤りのあるO(n)アルゴリズムを是正すること。最近の研究で、特定の9角形においてそのアルゴリズムが失敗することが示された。
  • 最大面積内接三角形問題に対して、O(n)時間計算量を達成する正しいかつ効率的なアルゴリズムを開発すること。
  • アンカード三角形(ある辺の法線方向が固定で、その方向に対して面積が最大となる三角形)の概念を導入し、それを主要な構造的道具として活用すること。
  • 最大面積内接三角形は、すべての頂点が多角形の境界上にあり、かつその辺の外法線に一意にアンカーリングされることを示すこと。

提案手法

  • アンカード三角形を、ある辺に対して固定された外法線方向を持ち、その法線方向に対して面積が最大となる三角形として定義する。
  • 固定方向uに対して、uに直交する方向−uのサポートラインが多角形に接する点が、uにアンカーリングされた三角形の第3頂点であるという幾何的性質を利用する。
  • 方向u ∈ S¹をパラメータとして探索を行い、アンカーリング頂点a(u)が区分的定数関数であり、b(u)、c(u)が連続であることに着目し、効率的な走査を可能にする。
  • 回転するカリッパー方式の手法を適用し、方向uの回転に伴い三角形の頂点を段階的に更新する。方向uに直交する方向における多角形の広がりを表す関数f(y)およびg(y)を、区分的線形関数として用いる。
  • 面積関数s(y) = √[(1/2)(y - y_min)(f(y) + g(y))] の凸性を用いて、局所的最大値が大域的最大値であることを保証し、効率的な最適化を実現する。
  • 多角形の頂点を走査する二重ポインタ法を実装し、方向の回転に伴いパラメータs_bとs_cを動的に更新することで、最適な三角形を追跡する。臨界遷移点の閉形式表現を用いる。

実験結果

リサーチクエスチョン

  • RQ1凸n角形に内接する最大面積三角形をO(n)時間で計算できるか?
  • RQ2Dobkin-Snyderアルゴリズムはなぜ失敗するのか。その正しさを損なう構造的欠陥は何か?
  • RQ3根付き三角形からアンカード三角形に問題の定式化を再定義することで、線形時間で問題を解けるか?
  • RQ4最大面積内接三角形が、その辺の法線と頂点位置によって一意に決定されるという幾何的性質は何か?
  • RQ5多角形のサポート関数の区分的線形性と凸性をどのように活用すれば、O(n)の計算量を達成できるか?

主な発見

  • 本稿では、凸多角形に内接する最大面積三角形を計算する正しいO(n)時間アルゴリズムを提示し、計算幾何学における長年の未解決問題を解決した。
  • アルゴリズムは、ある辺の外法線方向が固定で、その方向に対して面積が最大となるアンカード三角形の概念に基づいている。
  • 最大面積三角形は、常にその3辺の外法線にアンカーリングされており、かつすべての頂点が多角形の頂点に位置する。
  • 回転するカリッパー方式で多角形の頂点を走査し、パラメータ化された三角形頂点の臨界遷移点の閉形式表現を用いることで、O(n)の時間計算量を達成した。
  • アンカーリング頂点a(u)が多角形の辺上にあるような端的なケースに対しても、その処理を正しく行っている。具体的には、反時計回りの端点を一意の代表点として選択することで、一意性を保証している。
  • 根付き三角形ではなくアンカード三角形に焦点を当てることで、従来のO(n log n)時間の手法を回避し、より効率的かつ正確な解決策を実現した。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。