「凸多面体」の版間の差分

提供: ORWiki
ナビゲーションに移動 検索に移動
("凸多面体" を保護しました。 [edit=sysop:move=sysop])
(基礎編と用語編のマージ)
 
(他の1人の利用者による、間の1版が非表示)
1行目: 1行目:
 
'''【とつためんたい (convex polyhedron,  convex polytope)】'''
 
'''【とつためんたい (convex polyhedron,  convex polytope)】'''
  
 +
=== 概要 ===
 
有限個の閉半空間の共通部分を凸多面体と呼ぶ. すなわち, <math>n\,</math>次元実線形空間<math>{\mathbf R}^n\,</math>内の凸多面体<math>P\,</math>は, 適当な<math>m \times n\,</math>実行列<math>A\,</math>と<math>m\,</math>次元ベクトル<math>b\,</math>を用いて<br><center>
 
有限個の閉半空間の共通部分を凸多面体と呼ぶ. すなわち, <math>n\,</math>次元実線形空間<math>{\mathbf R}^n\,</math>内の凸多面体<math>P\,</math>は, 適当な<math>m \times n\,</math>実行列<math>A\,</math>と<math>m\,</math>次元ベクトル<math>b\,</math>を用いて<br><center>
  
10行目: 11行目:
  
 
と表現できる. 特に有界な凸多面体は, convex polytope と英語では区別して呼ばれ,  有限個の点からなる集合の凸包であり, 逆も成り立つ.
 
と表現できる. 特に有界な凸多面体は, convex polytope と英語では区別して呼ばれ,  有限個の点からなる集合の凸包であり, 逆も成り立つ.
 +
 +
=== 詳説 ===
 +
 <math>n\, </math>次元実ベクトル<math>a=(a_1,\cdots,a_n)^{\rm T} \in {\mathbf R}^n\, </math>と実数 <math>a_0{\in}{\mathbf R}\, </math> により定まる1次不等式 (線形不等式) <math>(a_1 x_1 + \cdots + a_n x_n \leq a_0)\, </math>を満たす点<math>x = (x_1,\cdots,x_n)^{\rm T}\, </math>全体からなる集合を閉半空間(closed halfspace)とよぶ. 有限個の閉半空間の共通部分を[[凸多面体]] (convex polyhedron) とよぶ. すなわち, <math>{\mathbf R}^n\, </math>内の凸多面体は, 適当な<math>m{\times}n\, </math>実行列<math>A\, </math>と<math>m\, </math>次元ベクトル<math>b\, </math>を用いて
 +
 +
 +
<center>
 +
<math>P = \{ x \in {\mathbf R}^n \mid Ax \leq b \}\, </math>    <math>(1)\, </math>
 +
</center>
 +
 +
 +
と表現できる. 凸多面体<math>P\, </math>が, ある正の実数<math>M\, </math>に対して
 +
 +
 +
<center>
 +
<math>x \in P \;\Longrightarrow\; |x_i| \leq M \quad(i=1,\cdots,n)\, </math>
 +
</center>
 +
 +
 +
をみたすとき有界である(bounded)とよばれ, 英語では convex polytopeと区別してよばれることが多い. 凸多面体の例としては, [[線形計画]]問題での[[実行可能多面体]], [[TSP多面体]], [[マトロイドの基多面体]], [[ポリマトロイド]]などがある.
 +
 +
 凸多面体には不等式表現以外にもう一つ有益な表現方法がある. <math>v^1,\cdots,v^\ell \in {\mathbf R}^n\, </math>に対して, 適当な<math>\alpha_1,\cdots,\alpha_\ell \in {\mathbf R}\, </math>によって
 +
 +
 +
<center>
 +
<math>v = \alpha_1v^1 + \cdots + \alpha_\ell v^\ell\, </math>
 +
</center>
 +
 +
 +
と表現されるベクトル <math>v\, </math> を<math>v^1,\cdots,v^\ell\, </math>の一次結合(線形結合)  (linear combination) とよぶ. 係数<math>\alpha_1,\cdots,\alpha_\ell\, </math>が非負条件
 +
 +
 +
<center>
 +
<math>\alpha_1 \geq 0, \cdots , \alpha_\ell \geq 0\, </math>    <math>(2)\, </math>
 +
</center>
 +
 +
 +
をみたす場合には <math>v\, </math> は非負結合(nonnegative combination), 和が1という条件
 +
 +
<center>
 +
<math>\alpha_1 + \cdots + \alpha_\ell = 1\, </math>    <math>(3)\, </math>
 +
</center>
 +
 +
 +
をみたす場合には <math>v\, </math> はアフィン結合 (affine combination), さらに (2) と (3) の両方をみたすとき <math>v\, </math> は<math>v^1,\cdots,v^\ell\, </math>の凸結合 (convex combination) とよばれる. 有限個の<math>v^1,\cdots,v^\ell \in {\mathbf R}^n\, </math>と<math>r^1,\cdots,r^d \in {\mathbf R}^n\, </math>に対して, <math>v^1,\cdots,v^\ell\, </math>の凸結合と<math>r^1,\cdots,r^d\, </math>の非負結合の和として表される点全体, すなわち
 +
 +
 +
<center>
 +
<math> \left\{ x = \sum_{i=1}^\ell \alpha_iv^i + \sum_{j=1}^d \beta_jd^j
 +
    \;\; \begin{array}{|l}
 +
      \sum_{i=1}^\ell \alpha_i = 1 \\
 +
      \alpha_i \geq 0 \;(i=1,\cdots,\ell) \\
 +
      \beta_j \geq 0 \;(j=1,\cdots,d)
 +
    \end{array} \right\}
 +
\, </math>    <math>(4)\, </math>
 +
</center>
 +
 +
 +
と定義される集合は凸多面体となり, 逆に (1) で定義される凸多面体については (4) をみたす有限個の<math>v^1,\cdots,v^\ell \in {\mathbf R}^n\, </math>と<math>r^1,\cdots,r^d \in {\mathbf R}^n\, </math>が存在することが知られている. 特に, 有界な凸多面体に対しては有限個の点<math>v^1,\cdots,v^\ell \in {\mathbf R}^n\, </math>の凸結合全体, すなわち,
 +
 +
 +
<center>
 +
<math>P = \left\{ x = \sum_{i=1}^\ell \alpha_iv^i
 +
    \;\; \right| \left.
 +
      \sum_{i=1}^\ell \alpha_i = 1,\;\; \alpha_i \geq 0 \;(i=1,\cdots,\ell)
 +
    \right\}\, </math>    <math>(5)\, </math>
 +
</center>
 +
 +
 +
と表現でき, (5)で定義される集合は, 点集合<math>V=\{v^1,\cdots,v^\ell\}\, </math>を含む (集合の包含関係の意味で) 最小な[[凸集合]] (convex set)として定義される<math>V\, </math>の[[凸包]] (convex hull) と一致する. 例えば, <math>{(0,0,0),(1,0,0),(0,1,0),(0,0,1)} \subset {\mathbf R}^3\, </math>の凸包である有界な凸多面体は
 +
 +
 +
<center>
 +
<math>x_1+x_2+x_3 \leq 1,\quad
 +
  x_1 \geq 0, \quad
 +
  x_2 \geq 0, \quad
 +
  x_3 \geq 0\, </math>
 +
</center>
 +
 +
 +
という4本の不等式で表現できる三角錐である.
 +
 +
 点集合<math>V=\{v^1,\cdots,v^\ell\} \subseteq {\mathbf R}^n\, </math>について, どの要素も他の要素たちのアフィン結合で表現できないとき, すなわち,
 +
 +
 +
<center>
 +
<math>\alpha_1v^1 + \cdots + \alpha_\ell v^\ell = 0 \;\Longrightarrow\;
 +
\alpha_1 = \cdots = \alpha_\ell = 0\, </math>
 +
</center>
 +
 +
 +
をみたすとき, <math>V\, </math> はアフィン独立(affinely independent)であるという. <math>{\mathbf R}^n\, </math>からは高々 <math>n{+}1\, </math>個のアフィン独立な点しか取れない. 集合<math>S \subseteq {\mathbf R}^n\, </math>に含まれるアフィン独立な点集合で要素数最大のものを<math>V=\{v^1,\cdots,v^\ell\}\, </math>としたとき, <math>S\, </math>の次元は<math>\ell{-}1\, </math>と定義する(次元は<math>V\, </math>の選び方に依存しないことを付記しておく). 先の例では,<math> {(0,0,0),(1,0,0),(0,1,0),(0,0,1)}\, </math>はアフィン独立であり, この凸包である三角錐の次元は<math>3\, </math>となる. 凸多面体<math>P \subseteq {\mathbf R}^n\, </math>の次元が <math>n\, </math> であるとき全次元的(full dimensional)という.
 +
 +
 凸多面体<math>P \subseteq {\mathbf R}^n\, </math>に対して, 超平面(hyperplane) <math>H\, </math>, すなわち, 非ゼロベクトル<math>(a_1,\cdots,a_n)^{\rm T} \in {\mathbf R}^n\, </math>と<math>a_0 \in {\mathbf R}\, </math>を用いて
 +
 +
 +
<center>
 +
<math>H = \{x \mid a_1x_1 + \cdots + a_nx_n = a_0 \}\, </math>
 +
</center>
 +
 +
 +
と表現できる集合が
 +
 +
 +
<center>
 +
<math>P \cap H \neq \emptyset \, </math> かつ <math>P \subseteq \{x \mid a_1x_1 + \cdots + a_nx_n \leq a_0 \}\, </math>
 +
</center>
 +
 +
 +
をみたすとき, <math>H\, </math>は<math>P\, </math>の支持超平面 (supporting hyperplane) とよばれる. 支持超平面と凸多面体の共通部分も凸多面体である. この共通部分を凸多面体の面 (face) とよび, その次元が<math>k\, </math>であるとき<math>k\, </math>次元面(<math>k\, </math>-face, <math>k\, </math> dimensional face)とよぶ. 特に多面体より次元が<math>1\, </math>小さい面をファセット(facet), <math>1\, </math>次元面を辺 (edge), <math>0\, </math>次元面を頂点 (vertex) とよぶ. 先の三角錐を例にすると, 不等式表現の4本に対応する面は<math>2\, </math>次元面 (ファセット) であり, 他に6個の<math>1\, </math>次元面 (辺) と4個の<math>0\, </math>次元面 (頂点) を持つ. 一般に有界な凸多面体は頂点全体の凸包と一致し, 全次元的な凸多面体はファセットに対応した不等式で一意的に表現できる (不等式の両辺を正数倍しても同じものとみなす). 凸多面体自身と空集合を便宜上面とすると, 面全体は包含関係に関して束となり, 凸多面体の面束 (face lattice) とよばれる. 同型な面束を持つ凸多面体を互いに組合せ的に同型 (combinatorially equivalent) とよぶ. 束の順序関係を逆にしても束となるが, 任意の凸多面体の面束の順序関係を逆にした束と同型な面束を持つ凸多面体が常に存在し, これは, 元の凸多面体の双対多面体 (dual polytope) とよばれる.
 +
 +
 凸多面体は[[計算幾何学]]の重要な研究対象であるばかりでなく, [[組合せ最適化問題]]の実行可能解全体を表現あるいは近似的に表現するための有益な道具である. [[多面体理論]]の項目も参照されたい.
 +
 +
 +
 +
----
 +
'''参考文献'''
 +
 +
[1] A. Brondsted, ''An Introduction to Convex Polytopes'', Springer-Verlag, 1980.
 +
 +
[2] G. L. Nemhauser and L. A. Wolsey, ''Integer and Combinatorial Optimization'', Wiley-Interscience, 1988.
 +
 +
[3] G. M. Ziegler, ''Lectures on Polytopes'', Springer, 1995.
 +
 +
[[Category:計算幾何|とつためんたい]]

2008年3月13日 (木) 23:21時点における最新版

【とつためんたい (convex polyhedron, convex polytope)】

概要

有限個の閉半空間の共通部分を凸多面体と呼ぶ. すなわち, 次元実線形空間内の凸多面体は, 適当な実行列次元ベクトルを用いて




と表現できる. 特に有界な凸多面体は, convex polytope と英語では区別して呼ばれ, 有限個の点からなる集合の凸包であり, 逆も成り立つ.

詳説

 次元実ベクトルと実数 により定まる1次不等式 (線形不等式) を満たす点全体からなる集合を閉半空間(closed halfspace)とよぶ. 有限個の閉半空間の共通部分を凸多面体 (convex polyhedron) とよぶ. すなわち, 内の凸多面体は, 適当な実行列次元ベクトルを用いて


    


と表現できる. 凸多面体が, ある正の実数に対して



をみたすとき有界である(bounded)とよばれ, 英語では convex polytopeと区別してよばれることが多い. 凸多面体の例としては, 線形計画問題での実行可能多面体, TSP多面体, マトロイドの基多面体, ポリマトロイドなどがある.

 凸多面体には不等式表現以外にもう一つ有益な表現方法がある. に対して, 適当なによって



と表現されるベクトル の一次結合(線形結合) (linear combination) とよぶ. 係数が非負条件


    


をみたす場合には は非負結合(nonnegative combination), 和が1という条件

    


をみたす場合には はアフィン結合 (affine combination), さらに (2) と (3) の両方をみたすとき の凸結合 (convex combination) とよばれる. 有限個のに対して, の凸結合との非負結合の和として表される点全体, すなわち


    


と定義される集合は凸多面体となり, 逆に (1) で定義される凸多面体については (4) をみたす有限個のが存在することが知られている. 特に, 有界な凸多面体に対しては有限個の点の凸結合全体, すなわち,


    


と表現でき, (5)で定義される集合は, 点集合を含む (集合の包含関係の意味で) 最小な凸集合 (convex set)として定義される凸包 (convex hull) と一致する. 例えば, の凸包である有界な凸多面体は



という4本の不等式で表現できる三角錐である.

 点集合について, どの要素も他の要素たちのアフィン結合で表現できないとき, すなわち,



をみたすとき, はアフィン独立(affinely independent)であるという. からは高々 個のアフィン独立な点しか取れない. 集合に含まれるアフィン独立な点集合で要素数最大のものをとしたとき, の次元はと定義する(次元はの選び方に依存しないことを付記しておく). 先の例では,はアフィン独立であり, この凸包である三角錐の次元はとなる. 凸多面体の次元が であるとき全次元的(full dimensional)という.

 凸多面体に対して, 超平面(hyperplane) , すなわち, 非ゼロベクトルを用いて



と表現できる集合が


 かつ 


をみたすとき, の支持超平面 (supporting hyperplane) とよばれる. 支持超平面と凸多面体の共通部分も凸多面体である. この共通部分を凸多面体の面 (face) とよび, その次元がであるとき次元面(-face, dimensional face)とよぶ. 特に多面体より次元が小さい面をファセット(facet), 次元面を辺 (edge), 次元面を頂点 (vertex) とよぶ. 先の三角錐を例にすると, 不等式表現の4本に対応する面は次元面 (ファセット) であり, 他に6個の次元面 (辺) と4個の次元面 (頂点) を持つ. 一般に有界な凸多面体は頂点全体の凸包と一致し, 全次元的な凸多面体はファセットに対応した不等式で一意的に表現できる (不等式の両辺を正数倍しても同じものとみなす). 凸多面体自身と空集合を便宜上面とすると, 面全体は包含関係に関して束となり, 凸多面体の面束 (face lattice) とよばれる. 同型な面束を持つ凸多面体を互いに組合せ的に同型 (combinatorially equivalent) とよぶ. 束の順序関係を逆にしても束となるが, 任意の凸多面体の面束の順序関係を逆にした束と同型な面束を持つ凸多面体が常に存在し, これは, 元の凸多面体の双対多面体 (dual polytope) とよばれる.

 凸多面体は計算幾何学の重要な研究対象であるばかりでなく, 組合せ最適化問題の実行可能解全体を表現あるいは近似的に表現するための有益な道具である. 多面体理論の項目も参照されたい.



参考文献

[1] A. Brondsted, An Introduction to Convex Polytopes, Springer-Verlag, 1980.

[2] G. L. Nemhauser and L. A. Wolsey, Integer and Combinatorial Optimization, Wiley-Interscience, 1988.

[3] G. M. Ziegler, Lectures on Polytopes, Springer, 1995.