GSL中的多维最小值

多维最小值

本章描述了寻找任意多维函数最小值的函数。本库为各种迭代求最小值器和收敛测试提供了低级组件。用户可以将这些组合起来以实现所需的解决方案,同时提供对算法中间步骤的完全访问。每一类方法都使用相同的框架,因此可以在运行时在最小化器之间切换,而不需要重新编译程序。求最小值器的每个实例都跟踪自己的状态,允许在多线程程序中使用求最小值器。最小值算法可以通过反转函数的符号来实现函数的最大化。

头文件gsl_multimin.h包含求最小值函数和相关声明的原型。

39.1 概述

多维最小值问题要求找到一个点x,使标量函数,

 取一个比任何相邻点都小的值。对于平滑函数,梯度g =∇ f在最小值处消失。一般来说,对于n维函数的最小值,没有可用的交叉法。算法从最初的猜测开始,使用搜索算法,尝试朝下坡方向移动。

    利用函数的梯度的算法执行沿这个方向的一维直线最小化,直到找到一个合适的精度的最低点。然后利用函数及其导数的局部信息更新搜索方向,并重复整个过程,直到找到真正的n维最小值。

不需

GSL 开源 科学计算库 学习笔记(分享部分译稿) GSL是GNU Scientific Libary的简写,是一组专门为数值科学计算而设计的程序库。该程序库用C语言写就,C程序员提供了API。不过 可以对其使用swig工具进行封装,以便能被更高级的语言使用,比如C#,java等。读者可以在网上找到很多swig的例子。 GSL原码是以GPL协议发布的,获取与使用都非常地方便,这也是我们之所以选取GSL学习的根本原因。 GSL库涵盖了数值计算领域的方方面面,主要包括下面的计算领域,还有一些新的程序代码会不断纳入到GSL中。 Complex Numbers 复数; Roots of Polynomials 多项式根; Special Functions 特殊函数; Vectors and Matrices 向量与距阵; Permutations 排列; Combinations 组合; Sorting 排序; BLAS Support 基础线性代数程序集(向量间运算,向量距阵运算,距阵间运算); Linear Algebra CBLAS Library 线性代数库; Fast Fourier Transforms 快速傅利叶变换; Eigensystems 特征值; Random Numbers 随机数; Quadrature 积分; Random Distributions 随机分布; Quasi-Random Sequences 近似随机分布序列; Histograms 直方图; Statistics 统计; Monte Carlo Integration Monte Carlo积分; N-Tuples N元组; Differential Equations 微分方程; Simulated Annealing 模拟退火算法; Numerical Differentiation 数值差分; Interpolation 拟合与插值; Series Acceleration; Chebyshev Approximations Chebyshev逼近; Root-Finding 根; Discrete Hankel Transforms 离散Hankel转换; Least-Squares Fitting 最小二乘算法拟合; Minimization 最小值; IEEE Floating-Point IEEE浮点运输; Physical Constants 物理常量; Basis Splines 基本样条曲线; Wavelets 小波变换。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值