跳到正文
格致开物
MATHWIKI
探索
学科导航
学习路径
搜索
☾
登录
探索
学科导航
学习路径
随机漫游
希腊字母
关于本站
管理员登录
搜索
数学百科
/
知识地图
查看“︁优化”︁的源代码
←
优化
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于这些用户组的用户执行:
管理员
、aipublisher
您可以查看和复制此页面的源代码。
数学优化是在给定可行范围内寻找目标函数最小值或最大值的问题。最小化 <math>f</math> 与最大化 <math>-f</math> 可以互相转换。一个优化模型必须说明决策变量、目标与约束;“最好”只有在这些选择明确后才有数学含义。 == 目标函数与可行域 == 一般约束优化可写为 <math display="block">\min_{x\in\mathbb R^n}f(x)\quad\text{使得}\quad g_i(x)\le0,\ h_j(x)=0.</math> 满足所有约束的点构成可行域。不可行的问题没有可行解;有可行解也未必能取得最小值。例如 <math>\min_{x>0}x</math> 的下确界为 0,却没有可行点达到 0。连续函数在非空紧集上一定能取得最大、最小值,这是常用的存在性保证。 == 一个带边界的一维例子 == 考虑 <math display="block">\min_{x\ge2}(x-1)^2.</math> 没有约束时,导数 <math>2(x-1)=0</math> 给出 <math>x=1</math>,但该点不可行。对所有 <math>x\ge2</math>,函数递增,所以最优点为 <math>x=2</math>,最小值为 1。 [[File:Gezhi-optimization-boundary.svg|frame|center|alt=函数x减一的平方在x大于等于二的可行区域内,最小值位于边界二一,而无约束最低点一零不可行|约束改变最优解;只解“导数等于零”会漏掉边界最优点。]] 若在可行域内部取得局部极小值,且函数可微,那么梯度为零是必要条件。但驻点不一定是极小值,例如 <math>f(x)=x^3</math> 在 0 的导数为零却没有极值。 == 局部最优、全局最优与凸性 == 局部最优只要求在附近没有更好点;全局最优要求整个可行域都没有更好点。集合 <math>C</math> 凸是指任意两点间的线段都在集合内。函数在凸域上凸,是指对 <math>0\le t\le1</math>, <math display="block">f(tx+(1-t)y)\le t f(x)+(1-t)f(y).</math> 凸优化问题的局部极小点也是全局极小点。这并不自动保证最优点存在或唯一;严格凸函数若在凸域上取得最小值,才保证最优点唯一。线性规划要求线性目标与线性等式、不等式约束,是重要的凸优化类别。 == 拉格朗日乘子怎样使用 == 求 <math>x^2+y^2</math> 在 <math>x+y=1</math> 下的最小值。定义 <math display="block">L(x,y,\lambda)=x^2+y^2+\lambda(x+y-1).</math> 令对 <math>x,y</math> 的偏导为零,并满足约束,得到 <math>2x+\lambda=0</math>、<math>2y+\lambda=0</math>、<math>x+y=1</math>,所以 <math>x=y=1/2</math>,目标值为 <math>1/2</math>。 这次结论还可直接验证:由 <math>x^2+y^2=((x+y)^2+(x-y)^2)/2\ge1/2</math>,等号恰在 <math>x=y</math> 时成立。一般问题使用乘子法需要约束正则性等条件,求出驻点后仍需判断它是极小、极大还是其他情形。 == 梯度下降与步长 == 无约束可微问题常用迭代 <math>x_{k+1}=x_k-\eta\nabla f(x_k)</math>,其中 <math>\eta>0</math> 是步长。对 <math>f(x)=(x-1)^2</math>,误差满足 <math display="block">x_{k+1}-1=(1-2\eta)(x_k-1).</math> 只有 <math>0<\eta<1</math> 时,这个固定步长迭代对任意初值都收敛到 1;步长过大会振荡或发散。这个区间是本例结论,不能照搬到所有目标函数。 == 解得精确不等于模型正确 == [[数学建模]]中的目标可能是误差、成本或耗时,不同目标会产生不同解。多目标问题需要说明权衡,数值软件报告“成功”后还应检查约束残差、最优性条件和参数敏感性。整数决策、非凸结构和噪声目标可能需要不同算法。 == 延伸阅读 == * [https://stanford.edu/~boyd/cvxbook/ Stephen Boyd、Lieven Vandenberghe,《Convex Optimization》]:凸集、凸函数、最优性条件与算法。 * [[导数]] · [[线性代数]] · [[数学建模]] [[分类:应用与建模]]
返回
优化
。