MATLAB绘制云模型程序实例.docxVIP

MATLAB绘制云模型程序实例.docx

本文档由用户AI专业辅助创建,并经网站质量审核通过
  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

MATLAB绘制云模型程序实例

云模型作为连接定性概念与定量描述的桥梁,在不确定性推理、数据挖掘等领域有着广泛应用。其核心思想是利用期望值(Ex)、熵(En)和超熵(He)三个数字特征来刻画定性概念的模糊性与随机性。本文将详细介绍如何在MATLAB环境下实现云模型的绘制,并通过具体程序实例展示其应用过程。

一、云模型核心概念简述

在深入程序实现之前,有必要先明确云模型的几个关键要素。期望值Ex代表了定性概念的中心值,是最能代表该概念的点。熵En则反映了定性概念的模糊程度,熵值越大,概念的边界越模糊,其取值范围也越宽。超熵He是熵的不确定性度量,即熵的熵,它反映了云滴的离散程度,超熵越大,云滴的分布越分散,云图的“厚度”也越大。

正向云发生器是云模型可视化的核心算法,其作用是根据给定的数字特征(Ex,En,He)生成若干个云滴,每个云滴都带有(x,μ)的坐标,其中x为定量值,μ为该x隶属于定性概念的确定度。

二、MATLAB实现正向云发生器

(一)算法步骤

正向云发生器的实现主要遵循以下步骤:

1.生成以En为期望值,He为标准差的正态分布随机数En_i;

2.以Ex为期望值,|En_i|为标准差生成正态分布随机数x_i,作为云滴的横坐标;

3.计算该x_i对应的确定度μ_i=exp(-(x_i-Ex)^2/(2*En_i^2));

4.重复步骤1-3,直至生成所需数量的云滴;

5.将所有(x_i,μ_i)云滴绘制在坐标系中,形成云图。

(二)程序代码实现

下面提供一个完整的MATLAB函数`CloudGenerator`,用于生成云滴数据并绘制云图。

functionCloudGenerator(Ex,En,He,N)

%云模型正向发生器

%输入参数:

%Ex:期望值

%En:熵

%He:超熵

%N:生成云滴的数量

%输出:

%绘制云图,并返回云滴数据(x,mu)

ifnargin4

error(输入参数不足,请提供Ex,En,He和N);

end

%生成N个以En为期望,He为标准差的正态随机数En_i

En_i=En+He*randn(1,N);

%生成云滴的x坐标,服从N(Ex,En_i^2)

x=Ex+En_i.*randn(1,N);

%计算每个x对应的确定度mu

mu=exp(-(x-Ex).^2./(2*En_i.^2));

%绘制云图

figure;

scatter(x,mu,30,filled,MarkerFaceAlpha,0.6);

xlabel(论域);

ylabel(确定度);

title([云模型(Ex=,num2str(Ex),,En=,num2str(En),,He=,num2str(He),)]);

gridon;

axistight;

%返回云滴数据

%CloudData=[x;mu];

end

(三)代码解读

上述函数首先对输入参数进行了简单校验,确保必要的参数(Ex,En,He,N)均已提供。核心部分在于利用MATLAB的`randn`函数生成符合正态分布的随机数。需要注意的是,在生成x坐标时,每个x_i对应的标准差是之前生成的En_i,这体现了云模型中随机性的层次。确定度μ的计算则遵循正态云模型的隶属度函数公式。

绘图部分采用了`scatter`函数,通过设置点的大小(30)、填充样式(filled)以及透明度(MarkerFaceAlpha,0.6)来增强云图的视觉效果。标题中动态显示了输入的三个数字特征,便于直观比较不同参数对云图形态的影响。

三、程序运行实例与结果分析

(一)基础示例

调用上述函数,设置一组典型参数:`CloudGenerator(5,1,0.1,500)`。这里Ex=5,En=1,He=0.1,生成500个云滴。运行后,MATLAB会弹出一个新的图形窗口,展示生成的云图。

从生成的云图中可以观察到,云滴主要围绕期望值Ex=5附近分布,呈现出中间密集、边缘稀疏的特点。确定度μ的最大值为1,出现在Ex处,随着x偏离Ex,μ值逐渐减小,这符合正态分布的特性。超熵He的存在使得En_i具有一定的波动性,因此云滴的分布并非严格对称,增加了模型的随机性。

(二)参数影响分析

通过调整不同的参数,可以观察云图的变化:

*改变Ex:例如`CloudGenerator(8,1,0.1,500)`,云图整体会沿x轴平移至新的期望值8处。

*改变En:增大En值,如`CloudGenerator(5,2,0.1,500)`,云滴在x轴方向的分布范

文档评论(0)

妙然原创写作 + 关注
实名认证
服务提供商

致力于个性化文案定制、润色和修改,拥有8年丰富经验,深厚的文案基础,能胜任演讲稿、读书感想、项目计划、演讲稿等多种文章写作任务。期待您的咨询。

1亿VIP精品文档

相关文档