2019第十二届“认证杯”数学建模(第二阶段)
刚开始第二阶段了吧,因为一些事情没去参加第二阶段。这里就给大家提供一些思路吧。
这道题看着像是在第一阶段上的深入,实际上方法都一样的。我们先分析一遍论文吧。
论文分析
首先第一句话的文本获取,不用多说,编程直接和第一阶段一样,随机生成(C/C++,MATLAB等等百度随机数生成,个人用的分布引擎,然后写入文档,30段随机文本就生成了)。
OK,后面的我们提取一下要求:
- 片段长度15
- 错误发生概率1/5
- 插入,替换,删失
- 每个错误只涉及一个字符
敲黑板了,“造”数据,先造出符合上面第一个要求的片段,发生次数和片段个数自己控制好。接着,让第三个要求的概率为1/5左右,涉及一个字符。这里,我们结果就出来了。
首先每个字符的错误为1/5左右,那么长度为15的片段,每个错误出现的长度为3左右。我们可以将错误分成插入错误,替换错误,删失错误分别进行处理,再进行对比,找出的相同字符串就是我们需要的字符串。
在进行对比时,我们可以引入一个“标记m”,记录两个字符片段进行对比时。当字符不同时,m++,下一个在不同m++,在此期间,我们需要进行判断m是否大于我们设定的一个数n(3左右),可以称为容错数n,若大于,我们进行下一个字符串比较,若小于继续进行这个字符串下一个字符的比较,当字符再次相同时,m=0重新记录。
至于下面说的,不知道长度怎么办?那长度未知,首先我们要进行分析,尽量的缩短长度的范围,再者对算法的遍历方法进行改进,具体方法是使用某个算法,自己选择,减少遍历次数,你们组的编程肯定知道的。
模型介绍
第一个模型(算法模型)
找到几种算法,进行分析+比较搜索效率,找到当前最优算法
在对于三种错误进行筛选时,我们需要对每种错误进行调整,使得我们的结果更加准确,假设下面的错误都发生在子串当中。我举例错误只举了一次错误,实际不止,方法相同。
1.删失错误
这时候,子串和预期答案,必定少了一个,当我们进行字符对比时,遇到删失错误的位置,我们的子串比较字符位置不变,母串比较字符向后移动一位,再进行对比,且m++,因为子串少了一位,所以子串最后一位实际没有参加对比,这一位的不同我们不计入m。
2.替换错误
发生这种错误时,子串和母串的长度是不变的,因此我们只需要记录标记m,进行判断就行。
3.插入错误
这种错误相当于,子串多了一位,这时候,在遇到发生插入错位位置的时候,我们将子串比较字符向后移动一位,m++。这种错误,以子串为主,相当于子串少了一位,因此我们可以将母串的最后一位arr[i]和子串的brr[i+1],子串相当于增加了一位进行比较,需要计入m。
把这个问题分成三个部分解决,每个“错误”筛选出的片段,总的实际上就是我们所需要的片段。也就是,已知三个集合,求这三个集合的并集,但这中间肯定存在误差,搜索的字符串比我们实际的要多,这个问题可以放到优化模型中提出。
第二个模型(优化模型)
实际上我们需要优化的地方就是,我们在分别筛选时,筛选的字符串肯定比实际的多,就算比较之后选出相同的,实际筛选出的也会多,这里优化的就是提高我们三种方法搜索准确率或者对比时如何处理。在这里如果会的话,可以加入一个筛选的模型。
注意:如果大家写不出代码,那就一定流程图写好,写清楚,算法别搞花里胡哨,能解决问题就行。
至于具体如何填充论文,还有代码,就要靠各位自己加油了。有问题的话评论留言,这几天我都会看。
后面有补充的话,我都会放到这篇博客上。
2019/5/18 14:17 更新几种错误的处理方法和第二问的未知长度的方法等
2019/5/18 17:17 更新了三种错误解决后的处理方法。(在明天会给大家说一些这篇论文中应该着重注意的地方,大家注意关注。)
觉得博客有帮助的朋友可以给博主点个赞,对建模感兴趣的朋友可以关注一下博主,你们的支持就是我最大的动力!
转载于:https://www.cnblogs.com/Mayfly-nymph/p/10884155.html
2019第十二届“认证杯”数学建模(第二阶段)相关推荐
- 2019第十六届研究生数学建模竞赛--跨越五年从本科省二到研赛国一
本作品采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可. 2019第十六届研究生数学建模竞赛--跨越五年从本科省二到研赛国一 感谢 序言 本科建模竞赛的失败经历 研究生建模竞赛的成功经历 ...
- 2019年国赛高教杯数学建模E题薄利多销分析解题全过程文档及程序
2019年国赛高教杯数学建模 E题 薄利多销分析 原题再现 "薄利多销"是通过降低单位商品的利润来增加销售数量,从而使商家获得更多盈利的一种扩大销售的策略.对于需求富有弹性的商 ...
- 2019年国赛高教杯数学建模C题机场的出租车问题解题全过程文档及程序
2019年国赛高教杯数学建模 C题 机场的出租车问题 原题再现 大多数乘客下飞机后要去市区(或周边)的目的地,出租车是主要的交通工具之一.国内多数机场都是将送客(出发)与接客(到达)通道分开的.送 ...
- 2022 年第十二届 MathorCup 高校数学建模挑战赛D题思路(移动通信网络站址规划和区域聚类问题)
目录 一.前言 二.问题背景 三.问题 四.解题思路 (1)针对问题1: (2)针对问题2: (3)针对问题3: 五.附上几个典型代码 (1)K-means算法 (2)遗传算法 (3)模拟退火算法 一 ...
- 2023年认证杯数学建模网络挑战赛B题考订文本思路分析
2023 年 "认证杯"数学中国数学建模网络挑战赛 第一阶段 B 题 考订文本 古代文本在传抄过程中,往往会出现种种错误,以至于一部书可能流传下 来多种版本.在文献学中,错误往往被 ...
- 2022小美赛认证杯数学建模完整成品
2022年第十一届"认证杯"小美赛数学中国数学建模国际赛 2022年数学中国数学建模国际赛将于2022年12月02日上午8时-2022年12月06日上午8时举行. 比赛时间:(北京 ...
- 2023认证杯数学建模挑战赛C题心脏危险完整原创论文讲解
大家好呀,从发布赛题一直到现在,总算完成了认证杯完整的成品论文. C题论文共37页,一些修改说明7页,正文26页,附录4页. 认证杯难度比起mathorcup会小一些,本题主要难度是数据量比较大,片段 ...
- 2022年小美赛“认证杯”数学建模ABCD题初步分析选题建议
2022年小美赛数学建模赛题已经发布: A题 翼龙是如何飞行的 B题 序列的遗传过程 C题 对人类活动进行分类 D题 是否应长期禁止野生动物贸易 总体来说,从赛题难度来看B>A>C&g ...
- 2023第十六届“认证杯”数学建模网络挑战赛第一阶段比赛经历分享
个人名片:
最新文章
- 安装quagga 软路由
- 天体运行轨迹_海王星轨道外发现139个新天体, 能揭开太阳系第九颗行星奥秘?...
- 文献学习(part23)--双向聚类方法综述
- mysql master线程 fork_多线程中fork的坑
- ios沙箱模式开启_iOS我眼中的沙盒机制
- 系统服务器地云盘上,系统服务器地云盘上
- 一个完整的汇编程序结构
- 2.1 Hadoop概述
- Android 高级学习心得及项目要点
- ps上的字体可以商用吗?PS怎么方便的使用免费商用字体?
- 深度学习笔记:05手算梯度下降法,详解神经网络迭代训练过程
- C++用*和空格输出一个正方形及其对角线
- worldPress数据库
- Redis基本使用|基本命令|redis事务|Jedis|持久化|订阅|集群|
- vue——双层循环嵌套
- java常见手写sql面试题_java sql常见面试题
- 前置自增加++与后置自增加++区别,前后自减同理
- 计算机集成制造系统 刊物界别,基于多传感器的高速CNC机床集成监控系统设计.pdf...
- 从Dicom的xml文件中获取结节坐标并生成mask
- Photoshop 2018 学习笔记 1.2 PS工作界面
热门文章
- 线程的同步之Synchronized在单例模式中的应用
- 软件评测-信息安全-应用安全-资源控制-用户登录限制(中)
- 海康威视连续采图设置ROI局部显示_c#
- 深入理解委托——为什么C#要引入委托
- python asyncio回调函数_最近用 Python 的 asyncio,有好多不懂。。
- celery 停止任务_celery异步任务框架
- 新手学电脑入门教程_炒股技巧大全丨炒股新手怎样才能长期稳定盈利
- mysql事务在提交后才发送给数据库执行_从一个线上问题分析binlog与内部XA事务提交过程...
- linux下glew例子,一个简单的GLSL Shader例子
- 什么是java一句话一个例子_一句话讲清楚什么是JavaEE