当前位置:文档之家› 一种改进的DBSCAN聚类融合算法及应用

一种改进的DBSCAN聚类融合算法及应用

藕藉
应 用 方 法 论
1 7 3

种 改进 的DBS AN聚 类融合算法及应 用 C
黄衍 标 ,魏育 华
( 广州华立科技 职业学 院,广 东广州 5 1 2 1 3 5)
摘 要 D S A 高密度 聚类 是数据挖 掘 中聚类算 法里常用 的一 种分析 方法 ,它能找 出样本 比较 密集 的部 分并概 括 m样 本相对 比较集 中的 BC N 类 。本文通过 分析D S A 算法 特点并对 其缺陷加 以改进运 用于R h c p BC N o o u 中型组 机器人数 据融合 系统 ,实验 结果表 明运用D s A 算 法可以 Bc N 大 幅度提高机 器人 目标 定位 的准确性 。 关 键 词 聚类融合 ;D S A B C N;密度 ;R hc p oo u 中型组数据融 合 中 图分 类 号 T P 文献 标 识码 A 文 章编 号 17— 6 1( 1)7— 13O 6 39 7一 0 02 07一 1 2 1
21 数 据 结 构 的 聚类算法 - 邻接表建 立完成后 ,就要开始进行聚类运算了。算法大致 的工作流 程如下 : 1 初 始化一些参数 ,其中领 域半径 值E S ) P 和门限值 M nt ̄机器人 i s pl 系统 的比赛实际情况确定 ,以4 s R bC p V 4 o o u 中型足球机器人 比赛系统来 说 ,本文选领域半径值E S=0 m,Mi t=2 P . 3 n s ,聚类数K= 。 p 0 2)将对象集 F 中所有对象插 入到邻接 表 ,逐个扫描邻 接表基 表中 的对象 ,判断其是否已经被 聚类过 了 ( 通过判断uet  ̄实现 ),如果 sda g 是 ,则跳过这一对象 ,否则开始下一步 。 3) 断其是否为核心点 ,只有 核心点才能发起一次聚类活动 ,是 判 则K=K+1 并开始步骤4 。若此点非核心点则将其标记并跳过这一对象 , 留待以后 的收尾处理 。 4 对这一点开始聚类 ,i : 。然后逐一检索该基表元素后链 接的 ) d K 结点链 ,从而查 找出此点邻域 内的所有点 ,并对这些点进行判断。设其 邻域内的点为b ,情况 1 已经被聚类 过了 , :b 则不对b 进行任何处理 ;情 况2 未被聚类过且是核心点 ,则将其作为新种子压栈 ,以待后面对其 :h 进行递归地聚类处理 ;情况3 未被聚类 过且不是核心点 ,则将类 号填 :b 入b d 的i 变量中,说 明b 已经被聚类为i d 了。不管是哪种情况 ,都将b 点标 识为已经聚类过 ,以免 以后进行不必要 的重复处理 。 5)从种子栈 中取 出一个元素 ,递归地对其进行聚类 。类号i不变, d 因为这还是属 于原来的类。如此递归 ,直 到种子栈为空为止。这 时,标 明类号为i的聚类活动完成。 d 6 判断K ) 的值 ,当K 不大于4 时返回步骤2 再次扫描邻接 表基表 中的 元素。 7)归 一处理 :将遗 留点 ( 例如不 属于任何类的非核心点 )进行噪 声点处理,对各类 中的节点进行归一化 ,如多个点进行加权平均运算变 成一个点 。
聚类是一种重要的数据分析技术 。聚类分析作为统计学的一个分 支 已经被广泛研究 了许多年。而且 ,聚类分析也 已经广泛地应用 到诸 多领 域 中,包括人 _智能 、 r 模式识别 、 数据分析 、图像处理 、推荐 系统 以及 市场研究等领域 。通过聚类 ,人们 能够识别密集 的和稀疏的区域 ,因而 发现全局 的分布模式 ,以及 数据属性之 间有趣 的相互关系。本 文针对 目 前D S A 算法的特点及缺陷将之稍作改变并实现其算法步骤 ,然后放 BC N 到具体应用中加 以实验测试 。
2 算 法 改进 及 实现
本 文以典型的多移动机器人系统R b C p o o u  ̄型足球 机器人 比赛系统 为应 用实例 ,由大量 的实验数据统计结果表明 ,比赛 系统 中各机器人返 回的 目标 定位数据 总是以呈正态 分布形式 出现在实 际位 置的周 同。因 此 ,本文 以R hc p n o u 中型足球机器人 比赛 系统的 目标定 位作为改进后的 D S A 算法的应用环境 。 BC N 机器人需要辨别的 目标如球 、场上机器 人等 的位置都是 以二维坐标 点的方式表示 的。在写一个 比较完整的程序之前 , 通常要先规划好程序 的数据结构及算法。
l k oe *et, i N d l nx;用于链接下一个点 n /
)n N d; l k oe i
1 B C N算 法简 介及 特点 D S A
D S A 算法利用类 的高密度连通性 ,快速发现任意形状的类 。其 BC N 基本思想是 :对于一个类 中的每个对象 ,在其给定半径的领域 中包含 的 对象不能少于某一给定 的最小数 目。为了发现 一个类 ,D S AN B C 先从对 象集F 中找到任意一对象P 并查找F , 中关于半径E S P 和最小对象数M n t i s p 的从P 密度直达的所有对象。若P 是核心对 象,也就是说半径为E S 的 P 的P 领域中所包含 的对象数不小于M n ̄ i ,则通过区域查询 (ei e ) p r o q r 可 gn u y 以找到一个关 于E s n 的类 ,即集合c P 和Mi 。如果P 是一个边界点,则半 径为E S 的领域 中所包含的对象i = M nt, 被暂时标注为噪声点 , P 的P bf i s P : p 然后 继续循环处理F 中下一个对象直到找出所有类。 D S A 算法是一种基 于密度 的空间数据聚类方法 ,该算法的显著 BC N 优点是 聚类速度快 ,且能够有 效处理 噪声 点和发现 任意形状 的空间聚 类。但 由于它在进行 聚类时使用 了一个全局性的表征密度 的参数 ,因此 也具有 比较明显的弱点 :一是要求人为确定参数 ;二是 当空间聚类密度 不均匀 ,聚类间距离相差很大时 ,聚类质量将会受 到影响。
相关主题