【计算理论】图灵机 ( 非确定性图灵机 -> 确定性图灵机 | 模仿过程示例 | 算法的数学模型 )

简介: 【计算理论】图灵机 ( 非确定性图灵机 -> 确定性图灵机 | 模仿过程示例 | 算法的数学模型 )

文章目录

一、非确定性图灵机 -> 确定性图灵机

二、确定性图灵机 模仿 非确定性图灵机 过程

三、算法的数学模型





一、非确定性图灵机 -> 确定性图灵机


给定如下非确定性图灵机 , 设计 确定性图灵机 模仿下面的 非确定性图灵机 ;

image.png



上述非确定性图灵机 的计算过程是一个 计算树 ;

image.png







二、确定性图灵机 模仿 非确定性图灵机 过程


使用 确定性图灵机 描述上述 非确定性图灵机 ;


设计的 确定性图灵机 有 3 33 个带子 , 每个带子对应着 非确定性图灵机 计算树 的一个分支 ;


image.png


第 1 11 个带子 ( 输入字符串 ) 上是 图灵机的输入字符串 , 该带子上的内容永不改变 , 不能放其它内容 ;


第 2 22 个带子 ( 模仿带子 ) 上是 模仿的计算树的一个分支的内容 ;


第 3 33 个带子 ( 地址带子 ) 上是数字编码 , 该数字编码会不停的更新 , 该编码代表了计算树中计算分支的编码 ,


下图中 第 3 33 个带子的 123 1 2 3123 含义是 ,

在深度为 1 11 的分支中 , 选择第 1 11 个分支 ,

在深度为 2 22 的分支中 , 选择第 2 22 个分支 ,

在深度为 3 33 的分支中 , 选择第 3 33 个分支 , 如下图所示的分支

image.png



第 3 33 个带子是计算分支编码 , 真实的模仿计算分支计算过程在 第 2 22 个带子上完成 ,



带子的数据变化 :


① 第 1 11 个带子放输入字符串 , 永不改变 ;


② 第 2 22 个带子根据 第 3 33 个带子选择的计算分支加载不同的计算分支对应的字符串 ;


③ 第 3 33 个带子上的数字会按照字典序的顺序 , 不停的进行更新 , 更新的过程就是宽度有限搜索的顺序 ;



通过 3 33 个带子中的确定性图灵机 , 可以模仿非确定性图灵机的计算 , 本质是找到非确定图灵机中的接受状态对应的 计算分支 ;






三、算法的数学模型


为算法提供严格的数学模型 , 除了图灵机之外 , 还有其它的 3 33 种数学模型 :


① 可计算函数 ,数学方向 ;


② Lambda 演算 , 程序语言方向 ;


③ 登记计算机 ( Register Machine ) , 计算理论方向 ;


目录
相关文章
|
2月前
|
存储 分布式计算 算法
大数据-106 Spark Graph X 计算学习 案例:1图的基本计算、2连通图算法、3寻找相同的用户
大数据-106 Spark Graph X 计算学习 案例:1图的基本计算、2连通图算法、3寻找相同的用户
72 0
|
1月前
|
算法
分享一些提高二叉树遍历算法效率的代码示例
这只是简单的示例代码,实际应用中可能还需要根据具体需求进行更多的优化和处理。你可以根据自己的需求对代码进行修改和扩展。
|
2月前
|
JSON 算法 数据可视化
测试专项笔记(一): 通过算法能力接口返回的检测结果完成相关指标的计算(目标检测)
这篇文章是关于如何通过算法接口返回的目标检测结果来计算性能指标的笔记。它涵盖了任务描述、指标分析(包括TP、FP、FN、TN、精准率和召回率),接口处理,数据集处理,以及如何使用实用工具进行文件操作和数据可视化。文章还提供了一些Python代码示例,用于处理图像文件、转换数据格式以及计算目标检测的性能指标。
76 0
测试专项笔记(一): 通过算法能力接口返回的检测结果完成相关指标的计算(目标检测)
|
2月前
|
移动开发 算法 前端开发
前端常用算法全解:特征梳理、复杂度比较、分类解读与示例展示
前端常用算法全解:特征梳理、复杂度比较、分类解读与示例展示
30 0
|
3月前
|
算法 数据可视化 数据安全/隐私保护
基于LK光流提取算法的图像序列晃动程度计算matlab仿真
该算法基于Lucas-Kanade光流方法,用于计算图像序列的晃动程度。通过计算相邻帧间的光流场并定义晃动程度指标(如RMS),可量化图像晃动。此版本适用于Matlab 2022a,提供详细中文注释与操作视频。完整代码无水印。
|
3月前
|
算法 C++
如何精确计算出一个算法的CPU运行时间?
如何精确计算出一个算法的CPU运行时间?
|
4月前
|
机器学习/深度学习 人工智能 算法
【人工智能】传统语音识别算法概述,应用场景,项目实践及案例分析,附带代码示例
传统语音识别算法是将语音信号转化为文本形式的技术,它主要基于模式识别理论和数学统计学方法。以下是传统语音识别算法的基本概述
105 2
|
4月前
|
算法 Go Python
[算法]计算斐波拉契数列
[算法]计算斐波拉契数列
|
4月前
|
机器学习/深度学习 运维 算法
深入探索机器学习中的支持向量机(SVM)算法:原理、应用与Python代码示例全面解析
【8月更文挑战第6天】在机器学习领域,支持向量机(SVM)犹如璀璨明珠。它是一种强大的监督学习算法,在分类、回归及异常检测中表现出色。SVM通过在高维空间寻找最大间隔超平面来分隔不同类别的数据,提升模型泛化能力。为处理非线性问题,引入了核函数将数据映射到高维空间。SVM在文本分类、图像识别等多个领域有广泛应用,展现出高度灵活性和适应性。
195 2
|
5月前
|
并行计算 算法 Python
Dantzig-Wolfe分解算法解释与Python代码示例
Dantzig-Wolfe分解算法解释与Python代码示例
下一篇
DataWorks