1.软件版本
matlab2022a
2.运行方法
使用matlab2022a或者高版本仿真,运行文件夹中的tops.m或者main.m。运行时注意matlab左侧的当前文件夹窗口必须是当前工程所在路径。具体操作观看提供的程序操作视频跟着操作。
3.部分仿真截图
编辑
编辑
4.内容简介
假设有M个用户均为MIMO Full Duplex,N个频率,1
由于在一个MIMO系统中,用户数量M大于可用的频谱个数N,因此,必有一部分用户存在频谱共享的问题。目前,现有的关于频谱分配的方法主要有基于竞价的分配方法,基于博弈论的分配方法,现有资料,主要都是这两种方法。下面针对这个问题,提出如下的改进方案:
这个改进方案,命名为基于改进遗传优化算法的多因素加权竞价博弈频谱分配算法。
这里,有别于传统的频谱分配方法,这里的分配方法,考虑了多种因素,我们分别假设为y1,y2,y3,。。。。。yn,并通过遗传优化算法,计算一种分配方案,即M个用户分配到N个频谱上, 分别计算以不同因素进行划分所得到的效益值V1,V2,V3,。。。。。Vn,,最后将这将这n个因素进行加权,得到其综合效益值:
根据遗传优化算法流程可知,其详细步骤如下所示:
步骤一:选择问题解的一个编码,给出一个有N个染色体的初始群体。编码的主要功能为确定用何种码制,然后将问题参数编码形成基因码链,每一个码链代表一个个体,表示优化问题的一个解。 根据编码方式不同可以分为二进制编码和实数编码两种类型,其中二进制编码的优势在于编码方式简单,便于遗传算法的交叉和编码操作。
步骤二:对群体中的每一个染色体,计算它的适应函数值。适应函数值为群体进化时的选择提供了依据,一般来说适应度越高,解的素质越好。适应度函数可以根据目标函数而定。
步骤三:若停止规则满足,则算法停止,否则计算概率P,并以此概率分布,从旧的种群pop(t)中随机选取N个染色体构成一个新的种群。选择操作常见的操作方式有比例 选择和排序选择方式。
步骤四:通过交叉,得到N个染色体的交叉集合。交叉的主要功能从种群中随机选择两个染色体,按一定的概率进行基因交换,交换位置的选取是随机的。
竞价和博弈相结合的联合分配方法;
编辑
值最大的用户,有先分配频谱资源,值最小的,则根据实际频谱资源情况,进行共用某一相同的频谱资源。