入门文献复现——Murphy C K——Combining belief functions when evidence conflicts

2023-11-07

作者Murphy提出了综合平均法来组合多个BOE,大体的步骤如下:
(1):将给定的BOE进行平均,获得各个BPA的平均质量averageMass。
(2):利用Dempster的组合规则将(1)求得的平均质量进行组合,并且组合(n-1)次。n为BOE的个数。

代码注解:因为当时没有足够的时间,所以aberageMass平均质量是直接给出的,例子就是采用的该Paper上的例子

#1、先写出结果的形式
x_result={"A":0,"A|B":0,"B":0,"Ω":0,"empty":0}
#2、输入平均值,为了节省时间,就直接给出average
#average={"A":0.58,"A|B":0,"B":0.4,"Ω":0.02,"empty":0}

#3 抽取每一个证据源中的焦元,返回一个集合
def focal_Element(m_dict):
    key_m=[];
    m_key=m_dict.keys();
    for item in m_key:
        key_m.append(item)
    keym_set=set(key_m);
    return keym_set;
#4、计算m_empty,直接返回值
def computeEmpty(m_1,m_2):
    F1=focal_Element(m_1);
    F2=focal_Element(m_2);
    # 构造空集合
    theta_set1 = set();
    theta_set2 = set();
    empty = set();
    m_empty = 0.00
    for item1 in F1:
        theta_set1.update(item1);
        for item2 in F2:
            theta_set2.update(item2);
            if (theta_set1.intersection(theta_set2) == empty):
                m_empty += m_1[item1] * m_2[item2];
            theta_set2.clear();
        theta_set1.clear();
    return m_empty;
#5、计算 m_intersection,返回计算好的。
def computeInter(m_1,m_2):
    F1=focal_Element(m_1);
    F2=focal_Element(m_2);
    #thetaSet=F2;
    thetaSet=focal_Element({"A": 0, "AB": 0, "C": 0, "BC":0,"B":0})
    #空集合
    f1_set=set();
    f2_set=set();
    strSet=set();
    inter=dict();
    for item0 in thetaSet:
        strSet.update(item0);
        sum=0.00
        for item1 in F1:
            f1_set.update(item1);
            for item2 in F2:
                f2_set.update(item2);
                if(f1_set.intersection(f2_set)==strSet):
                    sum+=m_1[item1]*m_2[item2];
                f2_set.clear();
            f1_set.clear();
        if item0 in inter:
            inter[item0]=sum;
        else:
            inter[item0] = sum;
        #inter.update(dict.fromkeys(item0,sum));
        strSet.clear();
    return inter;
# n:迭代次数
# avgSet:初始的average
def weightAvg(n,avgSet):
    for i in range(1,n):
        if(i==1):
            diedai=computeInter(avgSet,avgSet);#返回没有归一化的交集
            k=computeEmpty(avgSet,avgSet);#冲突质量
            k=1/(1-k);#归一化处理
            for item in diedai.keys():
                if item in diedai:
                    value_=round(diedai[item]*k,4);
                    diedai[item]=value_;
            diedai_0 = diedai;
            print("第 {0} 次迭代结果:{1}".format(i,diedai));
        else:
            diedai_1=computeInter(diedai_0,avgSet);
            k=computeEmpty(diedai_0,avgSet);
            k=1/(1-k);#归一化处理
            for item in diedai_1:
                if item in diedai_1:
                    value_=round(diedai_1[item]*k,4);
                    diedai_1[item]=value_;
            #diedai_0.clear();
            print("第 {0} 次迭代结果:{1}".format(i, diedai_1));
            diedai_0=diedai_1;
            #diedai_1.clear();
if __name__ == '__main__':
    n=2;
    #average_ = {"A": 0.58, "A|B": 0, "B": 0.4, "Ω": 0.02, "empty": 0}
    # average_ = {"A": 0.7, "A|B": 0, "B": 0.25, "Ω": 0.05, "empty": 0}
    average_ = {"A": 0.25, "AB": 0.25, "C": 0.25, "BC":0.25,"B":0}
    weightAvg(n,average_);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

入门文献复现——Murphy C K——Combining belief functions when evidence conflicts 的相关文章

随机推荐

  • visual studio2022没有c++ window的空项目

    选择安装
  • hugo+GitHub搭建博客网站

    准备工具 Git 设置 Linux命令行下载就可以 arch Linux安装命令 sudo pacman S git Debian 和 Ubuntu 安装命令 sudo apt get install git Windows 的Git 下载
  • 西门子S7通信协议以及JAVA版的实现

    西门子S7协议实现 采用java的方式实现西门子S7协议 链接地址 iot communication github https github com xingshuangs iot communication gitee https gi
  • Leetcode437. 路径总和 III(C语言)

    Leetcode437 路径总和 III C语言 数据结构 树 算法与数据结构参考 题目 给定一个二叉树 找出路径和等于给定数值的路径总数 路径不需要从根节点开始 也不需要在叶子节点结束 路径方向必须向下 二叉树不超过1000个节点 且节点
  • Vue 运行后自动打开浏览器的解决办法(vuecli2和vuecli3+的区别)

    一 Vue JavaScript 需要项目npm run dev运行后自动打开浏览器 VueCli2 1 1 版本说明 vue 2 5 2 vue router 3 0 1 vuecli2 1 2 修改项目目录下 config index
  • 验证码识别+爆破

    碰到比较简单 很好辨认的验证码可以尝试此种方法爆破 审查元素 找到验证码对应URL 复制到域名后面访问一下 确定是验证码URL 然后 打开工具PKAV HTTP FUzzer 开始尝试自动识别验证码 工具下载地址 https sec kim
  • svn使用记录

    File not found transaction 109 3q path trunk Setting Config cs You have to update your working copy first 好像是本地的 svn库中包含
  • 大模型基础03:Embedding 实战本地知识问答

    大模型基础 Embedding 实战本地知识问答 Embedding 概述 知识在计算机内的表示是人工智能的核心问题 从数据库 互联网到大模型时代 知识的储存方式也发生了变化 在数据库中 知识以结构化的数据形式储存在数据库中 需要机器语言
  • js实现轮播图原理及示例(转)

    网上有很多的例子介绍 在这里我所做的 无缝滚动 就是 通过改变元素的left值让图片呈现左右滚动的效果 我们首先看一下 div css 的结构样式 div css代码
  • 计算机二级excel评选投票,计算机二级-31-2.电子表格题(小刘-评选投票)

    1 首先查看本节课的课程题目 要求如图所示 2 然后打开 考试素材 具体目录如图所示 3 然后是 第一小题 修改文件名为Excel 进行另存 默认一般跟素材文件夹目录相同 4 第二小题 题目要求如图所示 5 首先检查 代码地址是否对应 然后
  • 正则表达式攻略

    第一章 正则表达式字符匹配攻略 正则表达式是匹配模式 要么匹配字符 要么匹配位置 请记住这句话 然而关于正则如何匹配字符的学习 大部分人都觉得这块比较杂乱 毕竟元字符太多了 看起来没有系统性 不好记 本章就解决这个问题 内容包括 两种模糊匹
  • Java用File完成硬盘文件的增删查改操作

    我的项目环境是eclipse 如果用的是idea的话最好创建好一个同类名的 class文件 因为字符编码不同 我用的是GBK 如果报错或者出现中文注释不出现的话 最好搜一下idea怎么改字符编码 package com bili demo3
  • siebel escript入门——基础知识一

    1 检测escript变量是否已定义 var test if typeof test undefined TheApplication RaiseErrorText test is undefined 2 escript的基本数据类型 es
  • 立式oled拼接屏有哪些产品优点?

    葫芦岛oled拼接屏是一种高清晰度的显示屏 由多个oled屏幕拼接而成 它可以用于广告牌 展览 演示 会议等场合 具有高亮度 高对比度 高色彩饱和度 高刷新率等优点 能够吸引人们的眼球 提高信息传递效果 葫芦岛oled拼接屏的优点主要有以下
  • 02node.js-◆ 模块化的基本概念 ◆ Node.js 中模块的分类 ◆ npm与包 ◆ 模块的加载机制

    学习内容 模块化的基本概念 Node js 中模块的分类 npm与包 模块的加载机制 1 模块化的基本概念 1 1 什么是模块化 模块化是指解决一个复杂问题时 自顶向下逐层把系统划分成若干模块的过程 对于整个系统来说 模块是可组合 分解和更
  • linux中,如何使用tar进行解压缩

    linux中 如何使用tar进行解压缩 环境 windows 7 virtualboax fedora 15 kde 可以使用tar命令解压缩 tar gz文件 下面以解压缩qt源文件举例 1 在windows中将qt源文件拷贝到共享文件夹
  • Python基础语法【4】—— 结构数据类型之列表

    文章目录 一 创建列表 1 使用 直接创建列表 2 使用list 函数创建列表 二 访问列表元素 1 使用索引方式访问列表元素 2 使用切片方式访问列表元素 三 添加元素到列表 1 使用append 方法添加元素 2 使用extend 方法
  • nvidia 专业显卡解码能力

    专业显卡问题 p620 解码 有时我们经常遇到专业显卡 专业显卡和非专业显卡在使用opengl 等底层调用时表现不一样 值得注意的是 专业显卡解码能力到了p400 以上才有显著的提升 p620 家族为开始又有提升 p620 不支持vp8 解
  • xml 入门 dtd

    xml dtd的格式 相
  • 入门文献复现——Murphy C K——Combining belief functions when evidence conflicts

    作者Murphy提出了综合平均法来组合多个BOE 大体的步骤如下 1 将给定的BOE进行平均 获得各个BPA的平均质量averageMass 2 利用Dempster的组合规则将 1 求得的平均质量进行组合 并且组合 n 1 次 n为BOE