## 比赛链接
##### 比赛链接:[“华为杯”第二十届中国研究生数学建模竞赛](https://cpipc.acge.org.cn/cw/hp/4)
##### 比赛选题:WLAN 网络信道接入机制建模(A题)
## 代码说明
### 0. 总体流程图
<img src="https://github.com/LZH20001220/HuaweiCup2023/assets/65153649/645d5765-a709-4420-9e1f-407a35117bef" width="800" height=auto>
### 1. 仿真器
#### 1.1 仿真器说明
本仿真程序是基于MATLAB R2021a 进行开发的,基于MATLAB 的面向对象编程工具,将每个 `AP` 封装为了一个类,并采用元组传递拓扑关系。所有 `AP` 通过一个 `Simulator` 类进行管理与交互, `AP` 将自己的行为抽象为事件, `Simulator` 将循环遍历所有AP 的事件,并按照时间顺序从前向后执行。
本程序只需改动 `main.m` 文件的参数配置,即可对不同场景进行仿真。
#### 1.2 主脚本运行说明
主脚本为 `main.m` 函数,问题一的运行示例如下代码所示。
每个 `AP` 类通过结构体 `simu_conf` 进行构造,其中 `mbps, simulator, r, p_e` 是必选参数, `W_min, W_max` 是可选参数。
构造完 `AP` 后,将它们组成一个元组,同时传入参数 `topoAP2AP,topoAP2STA` ,这两个参数定义了网络的拓扑关系,该代码对应了问题一的场景。
`simulator.Init` 初始化仿真, `simulator.RunAll` 执行仿真, `simulator.PlotAllEvent` 将绘制事件的时序图, `simulator.PlotThroughput` 将统计每个AP 的吞吐量、碰撞概率。
#### 1.3 核心功能模块说明
- **ApState.m**:用于定义AP的状态,包括退避状态,其他人发包时HOLD等待状态,SEND发送状态。
- **Callback.m**:代表事件对应的回调函数,包含触发时间,执行内容。
- **EventState.m**:用于记录事件的状态,用于仿真输出。
- **Events.m**:事件的状态,用三元组 `(起始时间, 终止时间, 状态)` 来定义一个事件。
- **Simulator.m**:用于与各AP的事件与状态交互,实现整个仿真程序的运行。
- **AP.m**:用于定义每个AP的行为逻辑和状态,与仿真器实现交互。
### 2. 理论计算:
#### 2.1 代码说明:
- **calculate_1.m**:计算第一问的冲突概率和系统吞吐
- **calculate_2.m**:计算第二问的冲突概率和系统吞吐
- **calculate_3.m**:计算第三问的冲突概率和系统吞吐
- **calculate_4_1.m**:计算第四问情况一的冲突概率和系统吞吐
- **calculate_4_2_3.m**:计算第四问情况二和情况三的冲突概率和系统吞吐
- **calculate_4_4.m**:计算第四问情况四的冲突概率和系统吞吐
#### 2.2 结果文件:
- **result_1.mat**:第一问的计算结果
- **result_2.mat**:第二问的的计算结果
- **result_3.mat**:第三问的的计算结果
- **result_4_1.mat**:第四问情况一的计算结果
- **result_4_2_3.mat**:第四问情况二和情况三的计算结果
- **result_4_4.mat**:第四问情况四的计算结果
#### 2.3 冲突概率计算:
通过Mathematica用于求解多元方程计算第四问四种情况下的冲突概率。
### 3. 画图 ###
#### 3.1 仿真器 ####
simulator.m是画每一章的仿真事件图与吞吐量曲线图,对应代码内的第五部分第六部分,执行main.m文件并修改每问相应的参数即可绘制。
为确保main.m文件中最大仿真时间固定在2e6,不必为每次画两张图修改参数,这里将simulator.m中92行x轴范围限定在10000。如有修改可写回原形。
#### 3.2 理论数据画图 ####
q3_therotical_value_bar.m与q4_therotical_value_bar.m分别导入result_3,result_4_1,result_4_2_3,result_4_4数据,其分别为第三题,第四题第一种情况,二三种情况和第四种情况中理论值的解。绘制柱状图。
#### 3.3 仿真数据画图 ####
q3_simu_bar.m、q4_simu_bar.m是在运行完simulator.m的基础上记录每组数据,将其写入3×3的数组中绘制柱状图代码。
## 比赛结果
一等奖(华为专项二等奖) [成绩公示网址](https://cpipc.acge.org.cn//cw/detail/4/2c9080178aee323d018bccd11b4e428a)
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
教育部认可的大学生竞赛备赛资料代码,源码,竞赛总结,所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通 全国电子设计大赛、全国大学生智能汽车竞赛、蓝桥杯、集成电路创新创业大赛、光电设计竞赛、挑战杯、大创项目、互联网+、三创赛、计算机设计竞赛、创新创业大赛、ACM-ICPC国际大学生程序设计竞赛、全国大学生数学建模竞赛、全国大学生电子商务“创新、创意及创业”挑战赛、全国大学生节能减排社会实践与科技竞赛、全国大学生工程训练综合能力竞赛、全国大学生机器人大赛-RoboMaster、RoboCon、“西门子杯”中国智能制造挑战赛、中国大学生计算机设计大赛、世界技能大赛、中国高校计算机大赛-大数据挑战赛、团体程序设计天梯赛、移动应用创新赛、网络技术挑战赛、全国大学生信息安全竞赛、“中国软件杯”大学生软件设计大赛、全国大学生光电设计竞赛、中国机器人及人工智能大赛、“大唐杯”全国大学生移动通信5G技术大赛、华为ICT大赛、全国大学生嵌入式芯片与系统设计竞赛、中国高校智能机器人创意大赛
资源推荐
资源详情
资源评论
收起资源包目录
华为杯第二十届中国研究生数学建模竞赛.zip (49个子文件)
资料总结
理论计算
第一问
calculate_1.m 2KB
result_1.mat 7KB
第三问
sol_p.mat 8KB
result_3.mat 3KB
calculate_3.m 2KB
README.md 922B
第四问
result_4_2_3.mat 3KB
calculate_4_4.m 4KB
calculate_4_2_3.m 4KB
calculate_4_1.m 4KB
result_4_1.mat 4KB
冲突概率计算
1_r=5.nb 11KB
2_r=6.nb 13KB
3_r=6.nb 14KB
3_r=5.nb 11KB
2_r=5.nb 11KB
1_r=6.nb 14KB
result_4_4.mat 3KB
第二问
calculate_2.m 1KB
result_2.mat 2KB
理论结果与仿真结果画图
问题四
result_4_2_3.mat 3KB
result_4_1.mat 4KB
main.m 1KB
Simulator.m 6KB
result_4_4.mat 3KB
therotical_value_plot_q4.m 2KB
q4_therotical_value_bar.m 2KB
q4_simu_bar.m 2KB
问题二
main.m 1KB
Simulator.m 6KB
问题一
main.m 1KB
Simulator.m 6KB
问题三
q3_therotical_value_bar.m 2KB
matlab3.mat 3KB
main.m 1KB
Simulator.m 6KB
q3_simu_bar.m 2KB
README.md 876B
A23100070049.pdf 2.29MB
仿真器
main.m 1KB
Events.m 292B
Simulator.m 5KB
AP.m 11KB
Callback.m 444B
EventState.m 161B
README.md 2KB
ApState.m 325B
论文模板-2023.docx 215KB
README.md 4KB
共 49 条
- 1
资源评论
妄北y
- 粉丝: 2w+
- 资源: 1万+
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 前端分析-2023071100789
- 2024.12.15.628585v1.full-复制.pdf
- html+css网页设计 美食 美食模版1个页面
- FL008-V1.1.1-基于单片机水位控制系统设计(1).pdf
- 程序员简历模板-供参考
- 程序员专用简历.zip
- 构网型 模块化多电平变流器 MMC 的VSG控制 同步发电机控制 MATLAB–Simulink仿真模型,可按需求定制 10电平.14电平,任意电平可做 三相MMC,采用VSG控制 设置负荷变动
- node管理工具 nvm
- 一个简洁使用的程序员简历模板.zip 包含个人经历-专业技能-项目经历
- 程序员简历模板-简洁、清晰
- 高压直流输电Matlab simulink仿真 采用三电平流器 整流侧采用直流电压外环+电流内环控制,逆变侧采用有功 无功功率外环+电流内环控制 下图依次为整流侧和逆变侧输出电压电流及有功无功图
- Rational Rose基础
- 程序员简历模板-单页单色53.docx
- 前端分析-2023071100789
- 程序员简历,个人学习整理,仅供参考
- 程序员简历模板-行业通用模板
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功