只能模糊算法
① 把图像变模糊的算法一般是怎样实现的
第一步:先复制背景图层。第二步:滤镜——模糊——高斯模糊(数值大小跟据你想要的效果定)第三步:为复制北影图层添加蒙版,再用画笔工具擦出你想要的清楚的地方!
② 求模糊控制算法,汇编语言编写的,关于温度控制的!感谢
模糊控制比较常用的两种算法;普通模糊控制算法,模糊PID控制算法
普通模糊控制算法:建立在人工经验知识的基础上,需要明确控制要求,并结合人工控制经验,然后才可以做出实用的模糊控制算法。虽然有很多样板经验表可以使用,但还需要根据实际控制对象做些修改,才可使用。
模糊PID控制算法:对人工经验要求的比较少,但需要结合PID控制经验和现场试验数据,才能做出好的控制算法。
编程原理:只讲普通模糊控制算法,模糊PID自己去找资料,模糊PID太容易实现,故不再赘述。
下面一至六步,我只说了一些计算过程,它们可以使用matlab完成,实现起来比较简单,只把matlab计算得到的表格放到模糊控制程序里即可,也就是说借助matlab编写模糊控制算法只需要进行第一、二、七步的操作。
第一步:收集模糊经验,分条列出,可以暂时使用样板经验表(经验表和分条列出的经验是相通的)。
第二步:确定各模糊集合隶属度函数
第三步:取一组输入输出数据组合,它们中的各元素,按照一条模糊规则中模糊变量组合和各自隶属度函数分别模糊化,然后各变量通过模糊运算得到一个值,这个值就是当前组合对当前规则的匹配度。同样,算出这个数据组合对其余各条模糊规则的匹配程度,也就是匹配值。最后对每个匹配值,进行模糊或运算,得到的数据u
第四步:分别取各输入输出数据组合进行第三步操作,然后得到一个n维表(n为输入,输出变量个数),每个单元对应一个数据组合,单元中的取值对应数据组合的u值(u的算法参考第三步)
第五步:任取一组输入组合,遍历输出值,根据第四步的表格得到对应的一组u值,根据下面公式计算输出:y=/其中yi是第i个可能的输出量取值,ui是与yi对应的u值。
第六步:对每一组可能的输入组合,得到各自的输出值y,然后把他们列出一个表,大功即成。这个表就是输入与输出的映射表。前几步的目的就是得到这个表,我们称之为模糊控制查询表。
第七步:编写模糊控制查询表的查询程序,亦可以看成模糊控制算法计算程序,其实就是一个查表程序。到此模糊控制算法编写完成。
模糊控制过程中,首先采集数据,离散化,查表得到输出值,输出查表所得的输出值,模糊控制器工作完成。
其实对复杂控制系统,模糊控制的难点在于模糊经验的收集与修正。
③ 什么叫模糊控制算法
模糊控制技术是利用模糊控制算法控制变频器的电压和频率的一种技术,通过模糊控制技术可使被控电动机的升速时间得到控制,以避免升速过快对电动机使用寿命的影响以及升速过慢而影响工作效率。
④ 神经网络算法 遗传算法 模糊算法 哪个好
没有哪种算法更好的说法,因为每种算法都有自己的优势。只能说某种算法在处理某种问题时,效果更好更合适。
神经网络不能说是一种算法,它是一种数学网络结构,各神经元的权值、阈值是用某种训练算法计算出来的。神经网络适用于非线性系统,可用于难以用数学表达式来描述的系统。
遗传算法在全局寻优问题上效果很好,因其收敛速度较快,且不易陷入局部极小点。其中实数编码法适合与神经网络结合,例如GA-BP神经网络。
模糊算法可将一些难以量化的参数模糊处理,并且算法较简单,尤其是适用于专家经验占主要地位的系统,因为添加一条专家经验只需往规则库里添加一条语句即可。用这种算法要注意区间不能划得太宽,否则算法太不精确。
⑤ 模糊控制算法是什么
模糊控制技术是利用模糊控制算法控制变频器的电压和频率的一种技术,通过模糊控制技术可使被控电动机的升速时间得到控制,以避免升速过快对电动机使用寿命的影响以及升速过慢而影响工作效率。
⑥ 什么叫模糊PID算法
说实话不是一两句能说清楚,简单说就是用模糊控制加PID控制。PID控制是通过P I D即比例积分微分三个参数控制的策略。这个估计楼主肯定懂。模糊PID算法就是通过模糊控制来控制这三个参数,实时改变参数以便达到更好的控制策略。具体的,内容楼主找本资料慢慢研究。
⑦ 模糊控制算法
模糊控制算法,是对手动操作者的手动控制策略、经验的总结.模糊控制算法有多种实现形式,采用应用最早、最广泛的查表法,可大大提高模糊控制的时效性,节省内存空间
⑧ 什么是模糊预测算法啊
模糊预测控制算法
Fuzzy Prediction Control Algorithm
翟春艳 李书臣
摘 要:模糊预测控制(FPC)是近年来发展起来的新型控制算法,是模糊控制与预测控制相结合的产物.文章在预测控制的模型预测、滚动优化、反馈校正机理下,对模糊预测控制模型及其优化控制算法作了归纳,并对模糊预测控制今后的发展进行了展望.
模糊表的一部分,就是个数组,多少个输入就做个几维数组就可以了(3514字)liyu2005[28次]2004-3-20 18:16:07
unsigned char outputs[MF_TOT], // 模糊输出mu值
fuzzy_out; // 模糊控制值
unsigned char input[INPUT_TOT] ={ // 模糊输入
0, 0
};
unsigned char code input_memf[INPUT_TOT][MF_TOT][256]={
// 输入功能函数
{
{ // velocity: VSLOW
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF,
0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF,
0xFF, 0xF6,
0xED, 0xE4, 0xDB, 0xD2, 0xC9, 0xC0, 0xB7, 0xAE, 0xA5, 0x9C, 0x93, 0x8A, 0x81,
0x78,
173
0x6F, 0x66,
0x5D, 0x54, 0x4B, 0x42, 0x39, 0x30, 0x27, 0x1E, 0x15, 0x0C, 0x03, 0x00, 0x00,
0x00,
0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00,
0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00,
0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00,
0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00,
0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00,
0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00,
0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00,
0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00,
0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00,
0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00,
0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00,
0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00,
0x00, 0x00
}
http://www.newcyber3d.com/cds/ch_cd05/intro_cga.htm
⑨ 什么是模糊算法
通过对现实对象的分析,处理数据并构建模糊型数学模型。用隶属关系将数据元素集合灵活成模糊集合,确定隶属函数,进行模糊统计多依据经验和人的心理过程,它往往是通过心理测量来进行的,它研究的是事物本身的模糊性
⑩ 模糊算法路径规划C语言实现的程序,感激不尽。
仅供参考~
#define MAX_VERTEX_NUM 100 //最大顶点数
#define MAX_INT 10000 //无穷大
typedef int AdjType;
typedef struct{
int pi[MAX_VERTEX_NUM];//存放v到vi的一条最短路径
int end;
}PathType;
typedef char VType; //设顶点为字符类型
typedef struct{
VType V[MAX_VERTEX_NUM]; //顶点存储空间
AdjType A[MAX_VERTEX_NUM][MAX_VERTEX_NUM]; //邻接矩阵
}MGraph;//邻接矩阵表示的图
//Floyd算法
//求网G(用邻接矩阵表示)中任意两点间最短路径
//D[][]是最短路径长度矩阵,path[][]最短路径标志矩阵
void Floyd(MGraph * G,int path[][MAX_VERTEX_NUM],int D[][MAX_VERTEX_NUM],int n){
int i,j,k;
for(i=0;i<n;i++){//初始化
for(j=0;j<n;j++){
if(G->A[i][j]<MAX_INT){
path[i][j]=j;
}else{
path[i][j]=-1;
}
D[i][j]=G->A[i][j];
}
}
for(k=0;k<n;k++){//进行n次试探
for(i=0;i<n;i++){
for(j=0;j<n;j++){
if(D[i][j]>D[i][k]+D[k][j]){
D[i][j]=D[i][k]+D[k][j];//取小者
path[i][j]=path[i][k];//改Vi的后继
}
}
}
}
}
int main(){
int i,j,k,v=0,n=6;//v为起点,n为顶点个数
MGraph G;
int path[MAX_VERTEX_NUM][MAX_VERTEX_NUM];//v到各顶点的最短路径向量
int D[MAX_VERTEX_NUM][MAX_VERTEX_NUM];//v到各顶点最短路径长度向量
//初始化
AdjType a[MAX_VERTEX_NUM][MAX_VERTEX_NUM]={
{0,12,18,MAX_INT,17,MAX_INT},
{12,0,10,3,MAX_INT,5},
{18,10,0,MAX_INT,21,11},
{MAX_INT,3,MAX_INT,0,MAX_INT,8},
{17,MAX_INT,21,MAX_INT,0,16},
{MAX_INT,5,11,8,16,0}
};
for(i=0;i<n;i++){
for(j=0;j<n;j++){
G.A[i][j]=a[i][j];
}
}
Floyd(&G,path,D,6);
for(i=0;i<n;i++){//输出每对顶点间最短路径长度及最短路径
for(j=0;j<n;j++){
printf("V%d到V%d的最短长度:",i,j);
printf("%d\t",D[i][j]);//输出Vi到Vj的最短路径长度
k=path[i][j];//取路径上Vi的后续Vk
if(k==-1){
printf("There is no path between V%d and V%d\n",i,j);//路径不存在
}else{
printf("最短路径为:");
printf("(V%d",i);//输出Vi的序号i
while(k!=j){//k不等于路径终点j时
printf(",V%d",k);//输出k
k=path[k][j];//求路径上下一顶点序号
}
printf(",V%d)\n",j);//输出路径终点序号
}
printf("\n");
}
}
system("pause");
return 0;
}