一、计算几何
计算几何是研究什么的?
计算几何研究几何模型和数据处理的学科,讨论几何形体的计算机表示、分析和综合,研究如何方便灵活、有效地建立几何形体的数学模型以及在计算机中更好地存贮和管理这些模型数据。
二、两点一线
计算几何理论中(或凸集中)过两点的一条直线的表达式,是如何描述的?与初中数学中那些直线方程有什么差异?有什么好处?(按自己的体会)
-
描述
空间中存在两个点满足 x 1 ≠ x 2 x_1\not=x_2 x1=x2
则可确定一条直线 y = θ x 1 + ( 1 − θ ) x 2 y=θx_1+(1-θ)x_2 y=θx1+(1−θ)x2 -
点斜式和两点式
初中数学中,设直线 l 上的两点P1、P2的坐标分别为 (x1,y1)和(x2,y2),且 x1 ≠ \not= = x2
所以直线 l 的斜率为
k = y 2 − y 1 x 2 − x 1 k={{y_2-y_1}\over{x_2-x_1}} k=x2−x1y2−y1
在直线 l 上任意取一点P(x,y),将直线 l 的斜率k以及P点的坐标代入直线的点斜式方程 y-y0=k(x-x0)中得:
y − y 1 = y 2 − y 1 x 2 − x 1 ∗ ( x − x 1 ) y-y_1={{y_2-y_1}\over{x_2-x_1}}*(x-x_1) y−y1=x2−x1y2−y1∗(x−x1)
化简得:
y − y 1 y 2 − y 1 = x − x 1 x 2 − x 1 {{y-y_1}\over{y_2-y_1}}={{x-x_1}\over{x_2-x_1}} y2−y1y−y1=x2−x1x−x1
此为直线 l 的两点式方程。 -
差异
对象 | 对比 |
---|---|
计算几何理论 | 广泛的表示n维欧式空间内所有的两个点连成的直线,它能够表达二维平面上的任何直线。 |
初中数学 | 是一个直观的几何对象,二维坐标系(平面)中求解的直线方程,是初中生在二维空间了解直线的起点。两点式方程不能用来表示坐标轴或与坐标轴平行的直线。 |
三、凸集/仿射集
凸集是什么? 直线是凸集吗?是仿射集吗?
-
凸集是什么?
(1)凸几何中:凸集是在凸组合下闭合的仿射空间的子集。
(2)欧氏空间中:凸集是对于集合内的每一对点,连接该对点的直线段上的每个点也在该集合内。 -
仿射集是什么?
仿射集是指欧氏空间 R n R^n Rn 中具有以下性质的点集 M M M:对任意 x , y ∈ M x,y\in M x,y∈M以及任意实数 λ \lambda λ,总有
( 1 − λ ) x + λ y ∈ M (1-\lambda)x+\lambda y \in M (1−λ)x+λy∈M
仿射集亦称仿射流形、线性流形、仿射簇,是实线性空间中的一类子集。非空间射集 M 的维数定义为上述子空间 L 的维数。空集的维数定义为 -1。维数分别为0、1、2的仿射集为点、直线和平面。 -
直线
直线是凸集,也是维数为1的仿射集。
四、平面
三维空间中的一个平面,如何表达?
-
一般式
A x + B y + C z + D = 0 Ax+By+Cz+D=0 Ax+By+Cz+D=0 -
截距式
x a + y b + z c = 1 {x\over a}+{y\over b}+{z\over c}=1 ax+by+cz=1 -
点法式
m ( x − x 0 ) + n ( y − y 0 ) + p ( z − z 0 ) m(x-x_0)+n(y-y_0)+p(z-z_0) m(x−x0)+n(y−y0)+p(z−z0)
五、超平面
更高维度的“超平面”,如何表达?
-
定义
超平面是指n维线性空间中维度为n-1的子空间。它可以把线性空间分割成不相交的两部分。比如二维空间中,一条直线是一维的,它把平面分成了两块;三维空间中,一个平面是二维的,它把空间分成了两块。 -
表达
法向量: ω \omega ω
常数: b b b
公式: ω T x + b = 0 \omega^Tx+b=0 ωTx+b=0
参考:如何理解超平面?
六、凸函数
什么是“凸函数”定义?什么是Hessian Matrix 矩阵? 如何判别一个函数是凸函数?f(x)=x^3 函数是凸函数吗?
-
定义
凸函数是一个定义在某个向量空间的凸子集 C C C上的实值函数 f f f,而且对于凸子集 C C C中任意两个向量 x 1 x_1 x1、 x 2 x_2 x2对于以下式子成立
f ( x 1 + x 2 2 ) ≥ f ( x 1 ) + f ( x 2 ) 2 f({x_1+x_2 \over 2}) \geq {f(x_1)+f(x_2) \over 2} f(2x1+x2)≥2f(x1)+f(x2) -
Hessian Matrix矩阵
Hessen矩阵是是一个多元函数的二阶偏导数构成的方阵,描述了函数的局部曲率,利用黑塞矩阵可判定多元函数的极值问题 -
凸函数判定
(1)对于一元函数 f ( x ) f(x) f(x),我们可以通过其二阶导数 f ′ ′ ( x ) f''(x) f′′(x) 的符号来判断。如果函数的二阶导数总是非负,即 f ′ ′ ( x ) ≥ 0 f''(x)≥0 f′′(x)≥0 ,则 f ( x ) f(x) f(x)是凸函数。
(2)对于多元函数 f ( X ) f(X) f(X),我们可以通过其Hessian矩阵的正定性来判断。如果Hessian矩阵是半正定矩阵,则 f ( X ) f(X) f(X)是凸函数。 -
f ( x ) = x 3 f(x)=x^3 f(x)=x3是凸函数吗?
对 f ( x ) f(x) f(x)求二阶导数得: f ′ ′ ( x ) = 6 x f''(x)=6x f′′(x)=6x
判断:当 x ≥ 0 x \geq 0 x≥0时 f ′ ′ ( x ) ≥ 0 f''(x) \geq 0 f′′(x)≥0,当 x < 0 x < 0 x<0时 f ′ ′ ( x ) < 0 f''(x) < 0 f′′(x)<0,所以 f ( x ) f(x) f(x)不是凸函数。
七、凸规划
什么是“凸规划”?如何判别一个规划问题是凸规划问题。
-
定义
-
凸规划问题判定
判断下列不等式约束函数是否为凸函数