论文部分内容阅读
免疫系统是目前已知的最精妙复杂的身体抵御外部有害物质的系统,它犹如一支训练有素的精锐部队,捍卫机体的健康。免疫细胞会对入侵者产生记忆,当下次同样的抗原入侵时,便以此抗体将其消灭,这正是“疫苗预防接种”的基本原理。人工免疫系统作为人工智能研究的一个新领域,期望借鉴生物免疫系统的信息处理机理和功能,进一步丰富人工智能能的研究手段,也可以说,生物免疫学的发展推动了人工智能的研究。免疫系统的特点和作用机理对工程应用中许多复杂问题的求解有重要的启示和借鉴作用,作为一种智能优化计算方法,在实际工程中表现出巨大的潜力。但是在数值建模和优化计算等领域中,在处理大量数据和求解大规模复杂问题时,免疫算法(ImmuneAlgorithm,IA)仍然需要大量的计算时间,而并行的IA算法能极大地降低问题求解时间。针对IA在解决大规模优化问题时需要消耗大量的时间无法达到实时性的问题,结合GPU的高速并行性,本文提出了一种基于GPU(Graphics Processing Unit,GPU)加速的细粒度并行免疫算法。本算法借助CUDA(Compute Unified Device Architecture,CUDA)统一架构,将实现过程转化成CUDA线程块并行计算过程,使得免疫算法在GPU中加速执行,在取得较好的优化效果的同时,解决了细粒度并行的群体规模限制问题,提高了算法的运行速度。本文的重要工作如下:(1)回顾了免疫算法的研究背景,产生与研究现状以及研究趋势,同时阐明了利用GPU来研究免疫算法的意义,阐述了本文的免疫算法研究模型。(2)回顾GPU的发展,对GPU的通用计算以及应用做了一个大概的阐述,对NVIDIA GPU的统一计算设备架构(CUDA)的执行模型,存储模型以及通信模型做了简要的概述。(3)阐述了免疫算法的生物学机理,对生物学整体上的认识可以有助于我们更好的对算法模型理解。(4)针对传统算法在优化大规模等问题时计算量大和计算速度慢的问题,提出了基于GPU加速的细粒度并行免疫算法,通过图形硬件的并行性,将传统的递归算法转化成并行计算,大幅度提高了算法的执行速度,节约了计算时间。对算法进行程序实现,对算法在CPU和GPU中的时间进行比较,给出结果分析,证明了算法的可行性与实用性。