当前位置: 首页 > news >正文

关于智能控制领域中模糊控制算法的概述

智能控制领域中的模糊控制算法是一种基于模糊逻辑的控制策略,它通过对模糊集合的刻画来处理模糊信息,从而获得模糊输出并进行控制。模糊控制算法在实际控制工程中具有良好的应用前景,它不但具有较强的鲁棒性和适应性,而且可以为复杂控制系统提供定量化的控制手段。本文将对模糊控制领域的相关研究进行综述,介绍模糊控制算法的基本原理,主要应用场景以及研究前沿。

ecbdbf6729d1969a2f8c161e3efc9710.png

一、模糊控制算法基本原理

模糊控制算法是一种基于模糊逻辑的控制策略,它通过模糊化输入和输出变量、建立模糊规则库以及进行解模糊等步骤,实现对复杂系统的控制。在模糊控制系统中,输入和输出变量不仅仅取决于系统状态本身,还受到外部环境、测量误差等因素的影响,因此具有一定的不确定性和模糊性。模糊控制算法正是针对这种不确定性和模糊性而设计的,它可以处理包括不确定性因素在内的各种复杂系统,并对输出值进行修正和优化。

(1)模糊化输入变量

在模糊控制系统中,一般通过模糊化输入变量将连续、实际、定量的系统输入转化为离散、模糊、定性的概念。这可以通过建立输入变量的模糊集合来实现,每个模糊集合可以用一个隶属函数进行描述。模糊集合由三个元素组成:取值域、参数和隶属函数。其中,取值域定义模糊变量的取值范围,参数为模糊变量的名称,隶属函数则描述了变量在该取值域中的隶属程度。例如,对于一台温度控制系统,可以设定三个隶属函数分别描述冷、适中和热三种状态,并对每种状态的隶属函数进行设置,例如:

1)冷:温度为65F以下,隶属函数为1;

2)适中:温度为65~75F,隶属函数为上升/下降曲线;

3)热:温度为75F以上,隶属函数为1。

这样,系统输入温度变量就被模糊化为三个模糊量:冷、适中和热。

 

59efcbaa93745e4e39ac75b0a8175b3f.png

(2)建立模糊规则库

建立模糊规则库是模糊控制算法的核心,它包含一系列“如果……就……”规则来描述系统的行为。在模糊控制系统中,每个规则包含一些输入变量和输出变量,其形式为“如果输入1在集合1中,且输入2在集合2中,则输出在集合3中”。例如,对于上述温度控制系统,可以建立如下的模糊规则库:

1)如果温度为冷,且当前时间为白天(NS),则加热器加热(PL);

2)如果温度为适中,且当前时间为白天(Z),则保持目前状态(Z);

3)如果温度为热,且当前时间为白天(PL),则风扇运转(NS);

4)如果温度为冷,且当前时间为晚上(NL),则保持目前状态(Z);

5)如果温度为适中,且当前时间为晚上(Z),则降温器降温(NL);

6)如果温度为热,且当前时间为晚上(PS),则保持目前状态(PS)。

f8917977820b5aa7b211927e7072cf08.png

1ec7a2eee8b575f1b13d99071d8296ad.png

(3)模糊输出变量

在模糊控制系统中,系统的输出值也是模糊的,因此需要进行解模糊操作以得到实际的控制值。解模糊可以采用不同的方法,常见的方法包括:重心法、中心切割法、最大值法等。其中,重心法是最为常用的一种方法,它通过计算隶属函数的重心值来确定输出的实际取值。

b5078d8447d9b65b0e565257b5bfd6c6.png

 

二、模糊控制算法应用场景

模糊控制算法已经在多个领域得到了广泛应用,其中一些典型的应用场景如下:

(1)温度控制

在工业生产和大型热能传递系统中,温度控制是一项十分重要的任务。模糊控制算法可用于智能温度控制,其可以将人的经验及知识转化成模糊规则库,并对环境温度的变化作出实时调整,从而使得温度控制更加稳定可靠。

(2)车辆控制

模糊控制算法可以应用于车辆的自动控制,例如车道保持、自适应巡航等。车辆控制需要对环境中的信息进行感知,包括道路环境、其他车辆的位置等等,采用模糊控制算法可以有效地处理这些信息,并进行决策控制。

(3)机器人控制

在机器人领域中,需要对机器人的动作进行控制来实现特定的任务,例如航拍、拾取和运输等。模糊控制算法可以用于机器人的路径规划和动作控制,可以使得机器人更加智能化、灵活化和适应性更强。

三、模糊控制算法的研究前沿

虽然模糊控制算法已经在多个领域得到了广泛应用,但其仍面临很多挑战和问题。以下列举几个研究前沿:

(1)不确定性处理

模糊控制算法中应对不确定性的处理目前还存在一些问题,例如不确定性量化量化、不确定性的传递、不同因素的不确定性处理等等。因此需要更深入的研究模糊控制算法对不同类型不确定性的处理能力,以及不确定性处理方法的优化和改进。

(2)模糊规则库学习

由于模糊规则库的建立需要大量的专家知识和经验,因此模糊规则库学习已经成为研究的热点问题之一。如何从数据中发现关联规则,如何自动学习模糊规则库以及如何整合领域知识和数据知识等是当前的研究难点。

dc6b910ef3c0e919bf1f0f1afbb45aac.png

(3)模糊控制在深度学习中的应用

随着人工智能技术的快速发展,深度学习领域中使用的卷积神经网络(CNN)和递归神经网络(RNN)等技术已经在自然语言处理、图像识别和语音识别等领域得到了广泛应用。因此,研究如何将模糊控制算法应用于深度学习,以适用于更广泛的场景,是当前研究的一个热点领域。

三、总结

模糊控制算法在智能控制领域中具有广泛的应用前景,它可以对各种不确定性因素进行处理,具有良好的鲁棒性、实时性和适应性。随着研究的不断深入,模糊控制算法将可以应用于更多的领域和场景中,为人们提供更智能、更高效的控制手段。

 

更多信息请关注:DRobot

 

相关文章:

关于智能控制领域中模糊控制算法的概述

智能控制领域中的模糊控制算法是一种基于模糊逻辑的控制策略,它通过对模糊集合的刻画来处理模糊信息,从而获得模糊输出并进行控制。模糊控制算法在实际控制工程中具有良好的应用前景,它不但具有较强的鲁棒性和适应性,而且可以为复…...

剖析伦敦银最新价格走势图

国际金融市场瞬息万变,伦敦银的价格走势会受到诸多因素的影响,比如重要经济数据的公布,国际间的政治博弈,突发的政经大事,都可以令白银价格的走势,在短时间内暴涨暴跌的情况。 要在伦敦银市场实现良好的收益…...

通用人工智能技术(深度学习,大模型,Chatgpt,多模态,强化学习,具身智能)

目录 前言 1.通用人工智能 1.1 生物学分析 1.2具身智能 1.2.1当前的人工智能的局限 1.2.2 具身智能实现的基础 1.2.3 强化学习(决策大模型) 2.结论 往期文章 参考文献 前言 目前的人工智能实质上只是强人工智能,或者说单个领域的通…...

makefile的特性-部分语法记录

1.变量定义 1.1 来实现a1 $(a2)a2 lib.o1.2 : 来实现, 这种不能通过后面的变量来定义a1 : $(a2) b.0a2 : lib.o1.3 来实现a1 b.0a2 a11.4 ? 来实现,这种方式前面如果定义了,后面定义则无效a1 : a.oa1 ? lib.o //结果 a1 a.o 2.文件查找 2.1 VPATH 目录…...

【Java 进阶篇】JavaScript 正则表达式(RegExp)详解

JavaScript 正则表达式,通常简写为 RegExp,是一种强大的文本匹配工具,它允许你通过一种灵活的语法来查找和替换字符串中的文本。正则表达式在编程中用途广泛,不仅限于 JavaScript,在许多编程语言中也都有类似的实现。 …...

51单片机之串口通信例程

51单片机之串口通信例程 简介原理例程 简介 串行通信是指使用一条数据线,将数据一位一位地依次传输,每一位数据占据一个固定的时间长度。在串行通信中,数据可以以字符为单位进行传输,也可以以帧为单位进行传输。 在51单片机中&a…...

Hadoop高可用集群(HA)一键启动脚本

高可用集群启动时,需要分别在每个节点上都执行zkServer.sh start启动zookeeper,这个过程比较麻烦,并且当我们节点增多时,这个过程无疑不增加了我们的工作量,因此我们可以写一个一键启动所有节点zookeeper的脚本 脚本实…...

C#开发的OpenRA游戏之金钱系统(1)

C#开发的OpenRA游戏之金钱系统(1) 设计一个游戏,肯定要有一个唯一的资源,用这个资源来管理整个游戏的进度,以及相互争夺的焦点。在OpenRA里,就是使用矿产资源。所以在地图上分布几个矿场,玩家就需要相互争夺矿场,谁开采多谁就更有钱,谁有钱了就可以升级更好的科技,以…...

Puppeteer监听网络请求、爬取网页图片(二)

Puppeteer监听网络请求、爬取网页图片(二) Puppeteer监听网络请求、爬取网页图片(二)一、爬取需求二、实现讲解三、效果查看 一、爬取需求 首先打开浏览器,打开指定网站监听网站发出的所有请求,记录请求&a…...

GoLang连接mysql数据库

跟着文档走GORM 指南 | GORM - The fantastic ORM library for Golang, aims to be developer friendly. 1.使用命令拉取 go get -u gorm.io/gorm go get -u gorm.io/driver/sqlite2.开始使用 package mainimport ("fmt""github.com/gin-gonic/gin"&…...

软件工程与计算总结(八)软件设计基础

一.设计思想的发展 1958:软件这个名词第一次在公开刊物上使用~60年代中后期and70年代前中期:结构化编程、逐步求精、自顶向下理念是程序设计主要方法70年代中后期and90年代:结构化设计方法、抽象数据类型、信息隐藏、封装、继承、多态等思想…...

someip 入门

什么是someip? SomeIP(Scalable Service-Oriented MiddlewarE over IP)是一种基于以太网的通信协议,用于汽车领域的通信。它允许不同的汽车电子控制单元(ECUs)之间通过网络进行通信,以便在车辆内…...

C# 使用Parallel去执行并行下载

直接上代码&#xff1a; //最大线程下载数量ParallelOptions options new ParallelOptions{MaxDegreeOfParallelism 5};public async Task DownloadMusicUrl(List<MusicTags> musicTags){DateTime currentTime DateTime.Now;DateTime startTime new DateTime(1970, 1…...

@Component 和 @Bean的区别

Component 和 Bean 是Spring框架中用于管理和配置依赖注入的关键注解&#xff0c;用于定义和管理Spring应用程序中的组件。 Component: Component 是一种泛用型的Spring注解&#xff0c;用于标识一个类为Spring组件。Spring会自动扫描所有带有Component 注解的类&#xff0c;并…...

百度测试开发工程师面试心得

百度测试开发实习生面试心得&#xff1a; 电话面试&#xff1a; 面试官&#xff1a;首先做一下自我介绍吧 我&#xff1a;我是***&#xff0c;来自什么大学&#xff0c;现在大三&#xff0c;在学校期间担任过部长&#xff0c;副主席等职务&#xff0c; 组织举办了很多比赛&…...

发现更多美景!XnViewMP for Mac/Windows 图片浏览软件

想要轻松快捷地浏览、管理和编辑您的照片吗&#xff1f;XnViewMP for Mac 是您的最佳选择&#xff01;这款强大而多功能的图片浏览软件将给您带来全新的视觉体验。 借助 XnViewMP&#xff0c;您可以方便地浏览各种图片格式&#xff0c;包括JPEG、PNG、GIF等&#xff0c;并支持…...

城市广告牌安全传感器特点有哪些?

城市广告牌安全传感器特点有哪些&#xff1f; 在现代快节奏的都市生活中&#xff0c;城市的广告牌成为不可或缺的一部分&#xff0c;以各种形式和大小存在于城市的街头巷尾&#xff0c;商业中心和交通要道。广告牌是城市生命线组成的一部分。但是由于天气因素、材料老化、不当维…...

源码部署lamt架构

源码部署lamt架构 lamt由apache&#xff0c;mysql&#xff0c;tomcat三者组成 文章目录 源码部署lamt架构1.准备工作1.1.配置yum源&#xff0c;关闭防火墙和selinux1.2.拉取相应源码包 2.安装apache3.安装mariadb4.安装tomcat 1.准备工作 1.1.配置yum源&#xff0c;关闭防火墙…...

【Java 进阶篇】JavaScript Math对象详解

在JavaScript编程中&#xff0c;Math对象是一个非常有用的工具&#xff0c;用于执行各种数学运算。它提供了许多数学函数和常数&#xff0c;可以用于处理数字、执行几何运算、生成随机数等。在本篇博客中&#xff0c;我们将深入探讨JavaScript中Math对象的各种功能和用法。 什…...

geecg-uniapp 路由修改 页面创建 (2)

一&#xff0c;增加页面 添加路由 &#xff08;1&#xff09;我们以home的常用服务 当作示例 我们修改 usList 数据 &#xff08;2&#xff09;查找对应路径 work.js 目前荒石对应的路径跳转 helloword 我们修改成 huang &#xff08;3&#xff09;修改跳转路径 修…...

微信开发者工具下载

一、微信开发者工具下载官网 微信开发者工具下载地址与更新日志 | 微信开放文档 (qq.com) 二、微信开发者工具界面 下载安装好后&#xff0c;软件图标如下图所示。 运行软件如下图所示&#xff0c;这时候就需要使用你的管理员账号扫码登录。 登陆后的界面&#xff0c;如下图…...

ctfshow萌新计划web9-14(正则匹配绕过)

目录 web9 web10 web11 web12 web13 web14 web9 审一下代码&#xff0c;需要匹配到system|exec|highlight才会执行eval函数 先看一下当前目录下有什么 payload&#xff1a;?csystem(ls); index.php是首页&#xff0c;我们看看config.php payload&#xff1a;?csystem…...

【数据结构】单链表按位序插入元素e【前插】(带头结点的和不带头结点的)这篇很重要,文字说明比起其他篇是正确的

声明单链表的结构体成员 struct LNode {int data;struct LNode *next; };typedef struct LNode LNode;// 或者: 两者是等价的 typedef struct LNode {int data;struct LNode *next; }LNode;按位序插入元素e&#xff1a;就是在第i个位置插入新结点&#xff0c;数据域为e 以下带…...

Maven Surefire Exclude 无效问题排查日志

昨天有个需求,要在单元测试的时候单线程执行,并且只执行单元测试类特殊结尾的,那么根据以往经验,直接在maven里面配置exclude并且指定include即可。如下尝试 <plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-surefire-plugin&…...

ArcGIS笔记4_水动力模型验证不理想时如何修改局部水深地形

本文目录 前言Step 1 模型验证不理想的情况Step 2 修改确值点并重新插值 前言 本章主要服务于MIKE水动力模型的调整修改工作。水动力模型跑完之后&#xff0c;常常会出现验证结果不理想的情况&#xff0c;比如潮位验证中&#xff0c;实测站点数据与模拟数据相差很大&#xff0…...

介绍一下mysql有哪些索引类型

以下是MySQL的8种不同索引类型的比较&#xff0c;以帮助你了解它们的特点和适用场景&#xff1a; 索引类型用途和特点适用场景B-Tree 索引用于范围查询、等值查找和排序操作大多数查询 &#xff0c;不适合全文搜索和空间数据。唯一索引保证索引列的值唯一&#xff0c;不允许重…...

#力扣:125. 验证回文串@FDDLC

125. 验证回文串 一、Java class Solution {public boolean isPalindrome(String s) {for (int l 0, r s.length() - 1; l < r; l, r--) {while (l < r && !Character.isLetterOrDigit(s.charAt(l))) l;while (l < r && !Character.isLetterOrDig…...

分享一下便利店怎么做微信小程序

便利店微信小程序开发&#xff0c;让生意更便捷&#xff01; 在这个数字化时代&#xff0c;微信小程序已经成为一种新的生活方式。它不仅改变了人们的消费习惯&#xff0c;还为各行各业提供了无限商机。对于便利店来说&#xff0c;微信小程序是一个绝佳的营销工具&#xff0c;…...

Gitlab CI/CD 入门教程

前言 开发人员常常提到的 CI/CD 是什么&#xff1f; 是用于集成测试的工具&#xff0c;每次提交代码后自动检测、构建和进行单元测试的过程。这一整条流水线式的测试流程我们称之为 pipeline。 入门教程 如何使用 CI/CD? 首先需要确保有可用的 runner&#xff08;如何确保…...

【mfc/VS2022】计图实验:绘图工具设计知识笔记

绘制曲线&#xff08;贝塞尔曲线&#xff09;&#xff1a; 转自&#xff1a;CDC 类 | Microsoft Learn 绘制一条或多条贝塞尔曲线。 BOOL PolyBezier(const POINT* lpPoints,int nCount);参数 lpPoints 指向包含曲线端点和控制点的 POINT 数据结构数组。 nCount 指定 lpPo…...