阴性选择法

2024-05-10 11:58
文章标签 选择 阴性

本文主要是介绍阴性选择法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

阴性选择法是由Forrest在1994年提出算法,该算法在AIS中得到了广泛的应用,是AIS的核心算法之一。该算法的过程如图:

1.定义自我集S,以及表示自我的长度为l的字符串。

2.定义部分匹配规则,匹配阈值以及期望达到的系统匹配失败率等参数。(此处多用r-contiguous匹配规则)

3.随机产生长度为l的字符串作为未成熟的检测器。

4.计算每个未成熟检测器和自我集中的每一个个体的适应度/匹配度(看是否超过阈值)

5.超过阈值,即匹配成功,则删除该检测器。若未匹配成功,则加入成熟检测器集R。

6.通过不断地将R中的检测器与S比较起到监控S的目的。

其中,成熟检测器的数量NR,不会随着自我集NS的增加而增加,但是生成NR的时间会随着NS规模的增加而成呈指数增加,随着初始检测器数目NRo的增加而线性增长。

利用Forrest阴性选择算法,可以令系统以相对较小的代价取得很高的系统安全。因为系统匹配失败率随着NR的增长而指数增长。

要想对阴性选择算法进行改进,就需要减少成熟检测器集数量NR,因为成熟检测器集监测待保护数据的时间复杂度与有效检测器的个数呈线性关系。


阴性选择中两种匹配规则:

1.连续r位匹配规则:两个长度为l的二进制字符串a、b,当且仅当他们在r或多于r个连续位上有相同字符时,称它们在连续r位匹配规则下匹配。

公式:P=[1+(l-r)/2]*1/2^r

2.海明距离匹配规则:两个长度为l的二进制字符串a、b,当他们在r或多于r个相同位置上有相同字符时,称它们在海明距离匹配规则下匹配。

其中,在同等匹配精度的要求下,海明距离匹配规则的阴性选择算法所需要的成熟检测器数目远小于连续r位匹配规则。


海明距离匹配规则法优势:

1.相对于连续r位匹配规则,海明距离匹配规则的阴性选择算法的成熟期检测器集更小,系统检测带保护字符串(自我集)的实时性更好。

2.匹配精度r是可变的。可以减少黑洞数量,提高系统安全性。

其思想的精髓是在达到一定系统匹配失败率Pf的要求下,大幅度减少所需的有限检测其数量。系统匹配失败率就是全部的成熟检测器和一个自我字符串进行匹配,匹配失败。


而在动态匹配精度r的作用下,生成的成熟检测器中也必须含有标记r的位置,以表示匹配精度不同的检测器。而在这些成熟的检测器R中,较大的rx(单一匹配精度)检测器会随着自我集S的增大而增多,较小的rx检测器则会大幅度减少。即较大匹配精度的检测器在成熟检测器集中所在的比例随着自我集合的增大而上升。 在Pf一定的前提下,随着r范围的右移(边界数同时增大),所需的有效检测器数随之增大。


连续r位匹配规则中高效的成熟检测器生成算法:

1.线性时间检测器生成算法

2.贪婪检测器生成算法

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

黑洞:个人理解黑洞就是一个不能与任何一个有效检测器匹配的(即不能被任何一个检测器检测出来的)非我字符串。也就是说,一旦有一个检测器可以与黑洞中的字符串相匹配,那么就会有自我集中的字符串也与这个检测器相匹配。

ps:有效检测器属于成熟检测器集。

“黑洞”的数量是采用部分匹配方式的阴性选择算法所不可回避的问题。黑洞空间的大小确定了采用阴性选择算法系统的系统匹配失败率Pf所能达到的底线。而黑洞的大小是由匹配精度r决定的。另外,黑洞的数目还与自我集中元素个数和自我元素的相似度有关,自我集元素越相似,对应的黑洞数量越少。

这里我们要知道,在成熟检测器检对待检测字符串(未知字符串)进行检测时,只要出现一个检测器与该字符串匹配,则可以判定,该字符串属于非我集。

这篇关于阴性选择法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/976382

相关文章

Python 中 requests 与 aiohttp 在实际项目中的选择策略详解

《Python中requests与aiohttp在实际项目中的选择策略详解》本文主要介绍了Python爬虫开发中常用的两个库requests和aiohttp的使用方法及其区别,通过实际项目案... 目录一、requests 库二、aiohttp 库三、requests 和 aiohttp 的比较四、requ

el-select下拉选择缓存的实现

《el-select下拉选择缓存的实现》本文主要介绍了在使用el-select实现下拉选择缓存时遇到的问题及解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的... 目录项目场景:问题描述解决方案:项目场景:从左侧列表中选取字段填入右侧下拉多选框,用户可以对右侧

如何选择适合孤独症兄妹的学校?

在探索适合孤独症儿童教育的道路上,每一位家长都面临着前所未有的挑战与抉择。当这份责任落在拥有孤独症兄妹的家庭肩上时,选择一所能够同时满足两个孩子特殊需求的学校,更显得尤为关键。本文将探讨如何为这样的家庭做出明智的选择,并介绍星贝育园自闭症儿童寄宿制学校作为一个值得考虑的选项。 理解孤独症儿童的独特性 孤独症,这一复杂的神经发育障碍,影响着儿童的社交互动、沟通能力以及行为模式。对于拥有孤独症兄

C#实战|大乐透选号器[6]:实现实时显示已选择的红蓝球数量

哈喽,你好啊,我是雷工。 关于大乐透选号器在前面已经记录了5篇笔记,这是第6篇; 接下来实现实时显示当前选中红球数量,蓝球数量; 以下为练习笔记。 01 效果演示 当选择和取消选择红球或蓝球时,在对应的位置显示实时已选择的红球、蓝球的数量; 02 标签名称 分别设置Label标签名称为:lblRedCount、lblBlueCount

透彻!驯服大型语言模型(LLMs)的五种方法,及具体方法选择思路

引言 随着时间的发展,大型语言模型不再停留在演示阶段而是逐步面向生产系统的应用,随着人们期望的不断增加,目标也发生了巨大的变化。在短短的几个月的时间里,人们对大模型的认识已经从对其zero-shot能力感到惊讶,转变为考虑改进模型质量、提高模型可用性。 「大语言模型(LLMs)其实就是利用高容量的模型架构(例如Transformer)对海量的、多种多样的数据分布进行建模得到,它包含了大量的先验

cross-plateform 跨平台应用程序-03-如果只选择一个框架,应该选择哪一个?

跨平台系列 cross-plateform 跨平台应用程序-01-概览 cross-plateform 跨平台应用程序-02-有哪些主流技术栈? cross-plateform 跨平台应用程序-03-如果只选择一个框架,应该选择哪一个? cross-plateform 跨平台应用程序-04-React Native 介绍 cross-plateform 跨平台应用程序-05-Flutte

如何选择SDR无线图传方案

在开源软件定义无线电(SDR)领域,有几个项目提供了无线图传的解决方案。以下是一些开源SDR无线图传方案: 1. **OpenHD**:这是一个远程高清数字图像传输的开源解决方案,它使用SDR技术来实现高清视频的无线传输。OpenHD项目提供了一个完整的工具链,包括发射器和接收器的硬件设计以及相应的软件。 2. **USRP(Universal Software Radio Periphera

《数据结构(C语言版)第二版》第八章-排序(8.3-交换排序、8.4-选择排序)

8.3 交换排序 8.3.1 冒泡排序 【算法特点】 (1) 稳定排序。 (2) 可用于链式存储结构。 (3) 移动记录次数较多,算法平均时间性能比直接插入排序差。当初始记录无序,n较大时, 此算法不宜采用。 #include <stdio.h>#include <stdlib.h>#define MAXSIZE 26typedef int KeyType;typedef char In

为什么现在很多人愿意选择做债务重组?债重组真的就这么好吗?

债务重组,起初作为面向优质企业客户的定制化大额融资策略,以其高效周期著称,一个月便显成效。然而,随着时代的车轮滚滚向前,它已悄然转变为负债累累、深陷网贷泥潭者的救赎之道。在此路径下,个人可先借助专业机构暂代月供,经一段时间养护征信之后,转向银行获取低成本贷款,用以替换高昂网贷,实现利息减负与成本优化的双重目标。 尽管债务重组的代价不菲,远超传统贷款成本,但其吸引力依旧强劲,背后逻辑深刻。其一

C语言程序设计(选择结构程序设计)

一、关系运算符和关系表达式 1.1关系运算符及其优先次序 ①<(小于) ②<=(小于或等于) ③>(大于) ④>=(大于或等于 ) ⑤==(等于) ⑥!=(不等于) 说明: 前4个优先级相同,后2个优先级相同,关系运算符的优先级低于算术运算符,关系运算符的优先级高于赋值运算符 1.2关系表达式 用关系运算符将两个表达式(可以是算术表达式或关系表达式,逻辑表达式,赋值表达式,字符