随机网络模型.docx

随机网络模型.docx

ID:57339036

大小:137.15 KB

页数:6页

时间:2020-08-12

随机网络模型.docx_第1页
随机网络模型.docx_第2页
随机网络模型.docx_第3页
随机网络模型.docx_第4页
随机网络模型.docx_第5页
资源描述:

《随机网络模型.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、《数学建模与实验》报告2017年4月6日星期四题目:随机网络模型姓名:班级:应用数学学号:摘要本文主要构造三种随机网络模型,第一种是给定点数和任意两点相连的概率随机生成随机网络,第二中是通过给定点数和边数随机生成随机网络,前两种方发得到的随机网络都没有涉及到边的权重问题,而在第三种中给定了点数,边数和权值构造了随机网络。关键词:1;随机网络2;matlab第一种随机网络1.1模型假设:任意给定点数和相邻两点之间的概率构造随机网络模型,如给定50个点,相邻两点之间连接的概率是0.2构造随机网络。下面将给出详细的说明和示例。1.2模型分析:给定N个节点,每一对节点以概率p进行连接,最多可以存在N(

2、N-1)/2条边。这样,所有连接的数目是一个随机变量。首先用matlab构造N个节点,以概率p随机选取边得到其对应顶点,之后连接起来就可以得到随机网络。1.3算法:Step1:生成n个节点,通过两个函数cos(t),sin(t)分别作为n个节点的横纵坐标。Step2:给定N个节点,最多可以存在m=N(N-1)/2条边,随机生成m个(0,1)之间的随机数,找出其中小于等于概率q的随机数。这些随机数就要连的边。Step3:通过第三步构造邻接矩阵,找到邻接矩阵中满足step3的点连线。1.4Matlab代码:functionrandom_network0(n,p)t=0:2*pi/n:2*pi;m=

3、nchoosek(n,2);%计算n个节点完全图的边数x=cos(t);y=sin(t);%构造n个点z=rand(1,m);%随机生成m个随机数ind1=(z<=p);%找出z中小于等于p的随机数,对应的地址将来连边ind2=squareform(ind1);%把0-1向量转换成邻接矩阵[i,j]=find(ind2);%求边的节点编号plot(x,y,'ro');%画出给定点title('randomnetwork');fork=1:length(i)%连接随机选中的m条边line([x(i(k)),x(j(k))],[y(i(k)),y(j(k))],'Color','k')end1.5

4、示例:假设给定点n取30,概率p取0.2在matlab命令窗口中输入:>>random_network0(30,0.2)随机网络图形如下:第二种随机网络2.1模型假设:任意给定点数和边数构造随机网络模型,如给定25个点,边数为15构造随机网络。下面将给出详细的说明和示例。2.2模型分析:给定N个节点,最多可以存在N(N-1)/2条边,从这些边中等概率的选取M条边构造随机网络,首先用matlab构造N个节点,以概率随机选取M边得到其对应顶点,之后连接起来就可以得到随机网络。2.3算法:Step1:生成n个节点,通过两个函数cos(t),sin(t)分别作为n个节点的横纵坐标。Step2:给定N个

5、节点,最多可以存在m=N(N-1)/2条边,生成一个1乘m个0的向量,随机选中s个元素。这些元素就要连的边。Step3:通过第三步构造邻接矩阵,找到邻接矩阵中满足step3的点连线。2.4Matlab代码:functionrandom_network1(n,s)t=0:2*pi/n:2*pi;m=nchoosek(n,2);x=cos(t);y=sin(t);ind1=zeros(1,m);randindex=randperm(m);%随机选取s条边fori=1:1:sind1(randindex(i))=1;endind2=squareform(ind1);[i,j]=find(ind2);

6、plot(x,y,'ro');title('randomnetwork');fork=1:length(i)line([x(i(k)),x(j(k))],[y(i(k)),y(j(k))],'Color','k')end2.5示例:假设给定点n取25,边数取15在matlab命令窗口中输入:>>random_network1(25,15)随机网络图形如下:第三种随机网络3.1模型假设:任意给定点数和边数以及权重构造随机网络模型,如给定5个点,边数为7,权重分别为1,2,3,4,5,6,7,8,9,10.构造随机网络。下面将给出详细的说明和示例。3.2模型分析:给定N个节点,最多可以存在N(N-

7、1)/2条边,从这些边中等概率的选取M条边构造随机网络,首先用matlab构造N个节点,以概率随机选取M边得到其对应顶点,之后连接起来就可以得到随机网络。3.3算法:Step1:生成n个节点,通过两个函数cos(t),sin(t)分别作为n个节点的横纵坐标。Step2:给定N个节点,最多可以存在m=N(N-1)/2条边,生成一个1乘m个0的向量,随机选中s个元素。这些元素就要连的边。Step3:给

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。