-
优化一个变量的函数
翻译 maninwest@Codeforge 作者:John D. Cook@CodeProject这里介绍一个算法,优化化带有一个变量的函数而不需要导数。通常,需要导数的方法稳定但是慢,不需要导数的方法快捷但是不稳定。这里实现的这个方法稳定且高效。这个方法开始是Richard Brent 实现的。 给定一个函数 f(x) 和一个区间l [a, b], 该方法是找出函数 f(x) 在 [a, b] 区间的最小值。该方法也可以用于找出最大值。要找出最大值,指向传递原函数的反函数。即 f(x) 的最大值出现在-f(x) 的最小值点。Brent 的方法比较稳定。也很容易使用。用户不需要提供导数函数。该方法为了稳定牺牲了一些效率,但是相比其他稳定的方法如黄金分割法,则更加快捷。使用函数这里给出的代码是一个 C++ 函数和使用此函数的示例项目。要在你自己的项目中使用,只需在 Brent.h.头文件中添加#include 即可。最小化函数的主要输入是一个模板化实参,一个函数对象实现目标函数最小化。目标函数必须使用签名 double operator()(double x)实现 Public 方法。例如,这里是一个用于计算函数 f(x) = -x exp(-x) 的函数对象类。 class foo
{
public:
double operator()(double x) {return -x*exp(-x);}
};代码需要函数对象而不是函数的主要原因是,需要在应用中优化的函数,除了函数实参外,还要依赖参数。函数对象可以有很多参数,它们在找到一个变量的结果函数最小值前固定。其他实参是函数需要找到最小值的区间的终点,偏差用于停止, 一个输出参数用
- 2022-01-26 15:15:42下载
- 积分:1
-
Bayes滤波器算法,c++语言实现,Visual Studio.net下实现,2003年8月修正版本,用于数据融合算法
Bayes滤波器算法,c++语言实现,Visual Studio.net下实现,2003年8月修正版本,用于数据融合算法-Bayesian filter algorithm, c language, was officially realizing, in August 2003 amended version, algorithm for data integration
- 2023-01-26 08:40:04下载
- 积分:1
-
在 Python 中的IDEA 算法
idea.c- IDEA 分组密码算法的 C 源代码。 IDEA (国际数据加密算法),前身为 IPES (改进提议的加密标准)。算法由薛家赖和 James L.梅西,苏黎世 ETH 的开发。此实现修改和来自原来的 C 代码开发了薛家荔枝。从零开始的索引添加的名称更改从IPES的IDEA。循环流化床功能添加。随机数字例程添加。
- 2022-04-21 11:41:44下载
- 积分:1
-
搜索数据
它将搜索的关键字数组和数组查找关键字如果它指示该数组。欢迎大家下载、试用。谢谢大家的支持!
- 2022-01-21 01:14:05下载
- 积分:1
-
A discrete cosine transform (DCT)
离散余弦变换(DCT)用余弦和表示有限的数据点序列;
- 2022-02-03 16:43:10下载
- 积分:1
-
运动图像检测MovingObjectDetection
VS-C# 2010下运行。其中混合高斯算法有些问题,其余两种可以实现。
- 2022-08-22 06:30:13下载
- 积分:1
-
银行家算法
通过图形界面上数据的输入,将进程的所需的最大资源数、已分配资源数、完成进程所需的剩余资源数数据存入数组中,再根据银行家算法要求,进行进程间的运行分配,而后显示在左侧的面板上。
- 2022-12-10 11:55:03下载
- 积分:1
-
正则表达式分析器
应用背景这是一个正则表达式自动创建的代码在C + +关键技术C + +,有限自动机正则表达式
- 2022-02-06 22:44:47下载
- 积分:1
-
用于计算G-P关联维;和一些相关参数。并能确定最佳的嵌入维数;不是很成熟;希望各位指正;...
用于计算G-P关联维;和一些相关参数。并能确定最佳的嵌入维数;不是很成熟;希望各位指正;-G-P used to calculate the correlation dimension and a number of relevant parameters. And to determine the optimal embedding dimension not very mature hope that correction
- 2022-03-25 07:55:18下载
- 积分:1
-
眼睛闪烁算法
这个项目是一个眼睛跟踪和闪烁检测使用 opencv 库、 算法的第一步是找到眼区域,然后模板匹配算法用于跟踪、 下一步是眨眼检测、 眨眼检测算法的第一步是要减去从最后一个图像,然后阈值结果与某一值,当前的眼睛图像和终于形态运算符 (开放) 用于筛选从噪音。
- 2023-04-09 08:20:03下载
- 积分:1