模糊集合和隶属函数

         普通集合,具有特定属性的确定对象的全体。内涵即普通集合的特定属性,外延即普通集合的元素全体。一个元素要么属于普通集合要么不属于普通集合。

       论域,即议题限定的范围,是一个普通集合。以下讨论中U表示论域,u表示论域的一个元素,可以把论域抽象化为区间[0,1]上的一个值。

       模糊集合定义:对于论域U上的一个模糊集合A,ua(u)为U到[0,1]的一个映射,表示论域U对集合A的隶属程度,ua(u)的值域为[0,1]。隶属函数ua完全表示了模糊集合A,因此A=ua。

       模糊集合的表示方法有向量法、序列法、分数法、积分法,其中分数法和积分法的加号和积分号仅仅作为一个标志,原则即表示出论域到[0,1]的映射关系。

      模糊集合的运算,∧表示取小值,∨表示取大值。1、包含,对于所有u,ua(u)≦ub(u),则A是B的子集,B包含A。2、交集和并集,ua∧ub,ua∨ub。3、余集,ua'(u)=1-ua(u)。其他对于普通集合成立的交换律、结合律、分配率等,对于模糊集合均成立。

       λ水平截集,λ属于[0,1],普通集合Aλ={u|ua(u)≥λ},将模糊集合转换为普通集合。性质:1、(A∩B)λ=Aλ∩Bλ,(A∪B)λ=Aλ∪Bλ。2、λ1≦λ2,则Aλ1≥Aλ2,即截集水平越低,集合越大。

      分解定理:将普通集合转变为模糊集合。设A={0.1/a+0.3/b+0.5/c+0.7/d+0.9/e},A=0.1A0.1+0.3A0.3+0.5A0.5+0.7A0.7+0.9A0.9。

      扩张定理:模糊集合的映射。X={x1,x2,x3,x4,x5,x6},Y={y1,y2,y3,y4,y5},f为X到Y的映射,A是在X上的模糊集合,A={(x1,0.2),(x2,0.7),(x3,0),(x4,0.9),(x5,0.1).(x6,0.5)}。可以得到Y上的模糊集合B={(y1,0.7),(y2,0.9),(y3,0.5)}。

      隶属函数构造方法。

      1、例证法。根据具体的问题,赋予元素隶属度,适合隶属度单调,元素较少的情况。

      2、比较法。通过相对比较设计隶属函数。  自行设计模糊集合的相对比较级 fi(j)表示相对于aj,ai隶属与模糊集合A的程度。建立相对矩阵,R=(rij)n*n ,rij=fj(i)/max(fj(i),fi(j))。

矩阵中每行的最小值作为对应元素的隶属度。也可以将每一行的值相加并乘以一个认为设定的权值作为对应元素的隶属度。

      3、经验法。不做介绍。

      4、模糊统计法。通过统计确定模糊集合中元素的隶属度。

      常用的隶属函数:常用凸模糊集,当论域为实数时,又把隶属函数称为模糊分布。有偏小、偏大、中型分布三种。根据需要自行查阅,从中挑选合适的分布,做一定的参数修改。

      模糊数:用来描述模糊数量的模糊集合。模糊数是一个凸模糊集合,极点值为1。平坦的模糊数表示模糊程度高,陡峭的模糊数表示模糊程度低。

      模糊数的基本运算:A@B=V(SA(x)交SB(y))(@表示加减乘除的运算),即运算隶属度取小值,元素的隶属度再进行汇总相加。

      关系运算(结果仍是模糊集):A>B=A交(>B),(>B)是1-B的右半部分。A<B=A 交(<B),(<B)是1-B的左半部分。

         

  • 6
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,我了解您的问题。关于模糊集合隶属函数的使用,AForge.NET框架提供了一些相关的类和方法。 首先,让我们来了解一下模糊集合隶属函数的概念。模糊集合是指一个元素可以属于不同程的不同集合,而不是只属于一个集合。例如,一个人可以在“矮”和“高”这两个集合中都有一定的隶属。而隶属函数则是用来表示一个元素属于某个集合的程,通常是一个[0,1]之间的实数。 在AForge.NET框架中,模糊集合隶属函数的实现是通过FuzzyLogic命名空间中的类来实现的。其中,FuzzySet类用于表示一个模糊集合,MembershipFunction类用于表示一个隶属函数。 具体来说,如果我们要创建一个三角形隶属函数,可以使用TriangleMembershipFunction类。例如,下面的代码创建了一个三角形隶属函数,它的顶点在0.5处,左边斜率为0.5,右边斜率为-0.5: ``` TriangleMembershipFunction mf = new TriangleMembershipFunction(0.5, 0.5, -0.5); ``` 然后,我们可以使用这个隶属函数来创建一个模糊集合。例如,下面的代码创建了一个名称为“高”的模糊集合,它的隶属函数是上面创建的三角形隶属函数: ``` FuzzySet fs = new FuzzySet("高", mf); ``` 这样,我们就创建了一个名为“高”的模糊集合,它的隶属函数是一个三角形函数。 在使用AForge.NET框架进行模糊推理时,我们通常需要定义一些规则,来描述模糊集合之间的关系。这些规则可以使用FuzzyRelation类来表示。例如,下面的代码创建了一个模糊关系,它表示如果一个元素属于“高”这个模糊集合,则它属于“矮”这个模糊集合隶属为0.2: ``` FuzzyRelation fr = new FuzzyRelation(fs, "矮", 0.2f); ``` 这样,我们就创建了一个模糊关系,它描述了“高”和“矮”这两个模糊集合之间的关系。 以上就是AForge.NET框架中模糊集合隶属函数的使用方法,希望能对您有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值