×
1 选择 EITC/EITCA 证书
2 学习并参加在线考试
3 获得 IT 技能认证

在欧洲 IT 认证框架下,从世界任何地方完全在线确认您的 IT 技能和能力。

EITCA学院

欧洲IT认证机构数字技能认证标准,旨在支持数字社会发展

通过您的用户名或电子邮件地址登录到您的帐户

创建一个帐户 登记忘记密码?

忘记您的资料?

AAH,等待,我记得现在!

创建一个帐户

已经有一个帐户?
欧洲信息技术认证学院-检验您的专业数字技能
  • 注册
  • 登录
  • 信息

EITCA学院

EITCA学院

欧洲信息技术认证学会-EITCI ASBL

认证机构

EITCI研究所

欧盟布鲁塞尔

管理欧洲IT认证(EITC)标准以支持IT专业知识和数字社会

  • 证书
    • EITCA学术界
      • EITCA学术目录<
      • EITCA/CG计算机图形
      • EITCA/IS信息安全
      • EITCA/BI商业信息
      • EITCA/KC关键竞争力
      • EITCA/EG电子政务
      • EITCA/WD Web开发
      • EITCA/AI人工智慧
    • EITC证书
      • EITC证书目录<
      • 计算机图形证书
      • 网站设计证书
      • 3D设计证书
      • 办公IT证书
      • 比特币区块链证书
      • WORDPRESS证书
      • 云平台证书NEW
    • EITC证书
      • 互联网证书
      • 密码证书
      • 商业IT证书
      • 电信证书
      • 编程证书
      • 数码肖像证书
      • 网站开发证书
      • 深层学习证书NEW
    • 证书
      • 欧盟公共行政
      • 师生
      • IT安全专家
      • 图形设计师和艺术家
      • 商人和经理
      • 区块链开发者
      • 网络开发者
      • 云AI专家NEW
  • 精选
  • 补贴
  • 如何制造我的皮具
  •   IT ID
  • 关于我们
  • 联系我们
  • 我的订单
    您当前的订单为空。
EITCIINSTITUTE
CERTIFIED

EITC/IS/CCTF 计算复杂性理论基础

by 艾德明 / 周一03 2021五月 / 发表于 未分类
现状
没有注册
价格
€110.00
开始吧
报名参加此认证

EITC/IS/CCTF 计算复杂性理论基础是关于计算机科学基础理论方面的欧洲 IT 认证计划,这也是互联网中广泛使用的经典非对称公钥密码学的基础。

EITC/IS/CCTF 计算复杂性理论基础课程涵盖计算机科学基础的理论知识和基于确定性和非确定性有限状态机、常规语言、上下文无关语法和语言理论、自动机理论、图灵等基本概念的计算模型机器、问题的可判定性、递归、逻辑和算法的复杂性,用于以下结构内的基本安全应用程序,包括全面的视频教学内容,作为本 EITC 认证的参考。

算法的计算复杂度是操作它所需的资源量。 时间和内存资源受到特别关注。 问题的复杂性被定义为解决问题的最佳算法的复杂性。 算法分析是研究明确给定算法的复杂性,而计算复杂性理论是研究使用最知名算法的问题解决方案的复杂性。 这两个领域是交织在一起的,因为算法的复杂性始终是它所解决问题复杂性的上限。 此外,在构建高效算法时,经常需要将某个算法的复杂性与要解决的问题的复杂性进行比较。 在大多数情况下,关于问题难度的唯一可用信息是它低于最有效的已知技术的复杂性。 因此,算法分析和复杂性理论之间存在很多重叠。

复杂性理论不仅在作为计算机科学基础的计算模型基础中发挥重要作用,而且在现代网络,尤其是互联网中广泛传播的经典非对称密码学(所谓的公钥密码学)的基础中也发挥着重要作用。 公钥加密基于某些非对称数学问题的计算难度,例如将大数分解为其素因数(该操作是复杂性理论分类中的一个难题,因为没有已知的有效经典算法可以解决它随着问题的输入大小的增加而以多项式而不是指数方式缩放资源,这与乘以已知素数以给出原始大数的非常简单的反向操作形成对比)。 在公钥密码体系结构中使用这种不对称性(通过定义公钥之间的计算不对称关系,可以很容易地从私钥计算出来,而私钥不能很容易地从公钥计算出来,一个人可以公开公布公钥并允许其他通信方使用它对数据进行非对称加密,然后只能使用耦合的私钥解密,第三方无法通过计算获得,从而使通信安全)。

计算复杂性理论主要是基于计算机科学和算法先驱的成就而发展起来的,例如艾伦·图灵,他的工作对破解纳粹德国的 Enigma 密码至关重要,后者在盟国赢得第二次世界大战的过程中发挥了深远的作用。 旨在设计和自动化分析数据(主要是加密通信)的计算过程以发现隐藏信息的密码分析被用来破坏密码系统并获取通常具有战略军事重要性的加密通信内容。 密码分析也催化了第一台现代计算机的发展(最初应用于密码破译的战略目标)。 英国巨像(被认为是第一台现代电子和程序计算机)之前是波兰“炸弹”,这是一种由玛丽安·雷耶夫斯基设计的电子计算设备,用于帮助破解 Enigma 密码,并由波兰情报部门连同在 1939 年波兰被德国入侵后缴获的德国 Enigma 加密机。艾伦·图灵在此设备的基础上开发了更先进的设备,成功破解了德国的加密通信,后来被发展成现代计算机。

因为运行算法所需的资源量随输入的大小而变化,所以复杂度通常表示为函数 f(n),其中 n 是输入大小,f(n) 是最坏情况复杂度(所有大小为 n 的输入所需的最大资源量)或平均案例复杂度(大小为 n 的所有输入的资源量的平均值)。 在大小为 n 的输入上所需的基本操作的数量通常表示为时间复杂度,其中基本操作被认为在特定计算机上花费恒定的时间,并且当在不同的机器上运行时仅以恒定因子变化。 算法对大小为 n 的输入所需的内存量称为空间复杂度。

时间是最常被考虑的资源。 当术语“复杂性”不带限定词使用时,通常是指时间的复杂性。

传统的时间单位(秒、分钟等)在复杂性理论中没有采用,因为它们过于依赖所选的计算机和技术的进步。 例如,今天的计算机可以比 1960 年代的计算机更快地执行算法,然而,这是由于计算机硬件的技术突破,而不是算法的固有质量。 复杂性理论的目标是量化算法的内在时间需求,或算法对任何计算机施加的基本时间限制。 这是通过计算在计算过程中执行了多少基本操作来完成的。 这些过程通常被称为步骤,因为它们被认为在特定机器上花费恒定的时间(即,它们不受输入量的影响)。

另一个关键资源是执行算法所需的计算机内存量。

另一个经常使用的资源是算术运算的数量。 在这种情况下,使用术语“算术复杂性”。 如果计算期间出现的数字的二进制表示大小的上限已知,则时间复杂度通常是算术复杂度乘以常数因子的乘积。

计算过程中使用的整数的大小不受许多方法的限制,假设算术运算需要固定的时间是不现实的。 因此,时间复杂度(也称为位复杂度)可能会明显高于算术复杂度。 例如,对于标准技术(高斯消元法),计算 nn 个整数矩阵的行列式的算术难度是 O(n^3)。 由于在计算过程中系数的大小可能会呈指数增长,因此相同方法的位复杂度是 n 的指数。 如果将这些技术与多模运算结合使用,则位复杂度可以降低到 O(n^4)。

位复杂度在形式上是指运行算法所需的位操作数。 在大多数计算范例中,它等于时间复杂度直到一个常数因子。 计算机所需的机器字操作数与位复杂度成正比。 对于现实的计算模型,时间复杂度和比特复杂度因此是相同的。

在排序和搜索中经常考虑的资源是条目比较的数量。 如果数据排列得当,这是时间复杂度的一个很好的指标。

在所有潜在输入上,计算算法中的步骤数是不可能的。 因为输入的复杂度随其大小而增加,它通常表示为输入大小 n(以位为单位)的函数,因此复杂度是 n 的函数。 然而,对于相同大小的输入,算法的复杂性可能会有很大差异。 因此,经常使用各种复杂性函数。

最坏情况复杂度是所有​​大小为 n 的输入的所有复杂度的总和,而平均情况复杂度是所有​​大小为 n 的输入的所有复杂度的总和(这是有道理的,因为给定大小的可能输入的数量是有限)。 当使用术语“复杂度”而没有进一步定义时,考虑了最坏情况的时间复杂度。

众所周知,最坏情况和平均情况的复杂性很难正确计算。 此外,这些精确值几乎没有实际应用,因为机器或计算范式的任何变化都会稍微改变复杂性。 此外,对于较小的 n 值,资源使用并不重要,因此对于较小的 n,易于实现通常比低复杂性更有吸引力。

由于这些原因,大多数注意力都集中在高 n 的复杂性行为上,即当 n 接近无穷大时它的渐近行为。 因此,通常使用大 O 表示法来表示复杂性。

计算模型

计算模型的选择(包括指定在单位时间内执行的基本操作)对于确定复杂性至关重要。 当计算范例没有具体描述时,这有时被称为多带图灵机。

确定性计算模型是机器的后续状态和要执行的操作完全由先前状态定义的模型。 递归函数、λ演算和图灵机是最早的确定性模型。 随机存取机器(也称为 RAM 机器)是模拟现实世界计算机的流行范例。

当计算模型未定义时,通常假定为多带图灵机。 在多磁带图灵机上,大多数算法的时间复杂度与 RAM 机器上的相同,尽管可能需要相当多地关注数据在内存中的存储方式才能实现这种等效性。

可以在非确定性计算模型(例如非确定性图灵机)中的某些计算步骤中做出各种选择。 在复杂性理论中,同时考虑所有可行的选项,非确定性时间复杂度是始终做出最佳选择所需的时间量。 换句话说,计算是在所需数量的(相同的)处理器上同时完成的,非确定性计算时间是第一个处理器完成计算所花费的时间。 这种并行性可以通过在运行专门的量子算法时使用叠加的纠缠态来用于量子计算,例如 Shor 的微小整数分解。

即使这样的计算模型目前不可行,但它具有理论意义,特别是对于 P = NP 问题,该问题询问使用“多项式时间”和“非确定性多项式时间”产生的复杂度类别是否为最小上界限是一样的。 在确定性计算机上,模拟 NP 算法需要“指数时间”。 如果一项任务可以在非确定性系统上以多项式时间解决,则它属于 NP 难度类。 如果一个问题在 NP 中并且并不比任何其他 NP 问题更容易,则称它是 NP 完全的。 背包问题、旅行商问题和布尔可满足性问题都是 NP 完全组合问题。 最著名的算法对所有这些问题都具有指数复杂性。 如果这些问题中的任何一个都可以在确定性机器上在多项式时间内解决,那么所有 NP 问题也可以在多项式时间内解决,并且 P = NP 将成立。 截至 2017 年,人们普遍假设 P NP,这意味着 NP 问题的最坏情况从根本上难以解决,即在给定有趣的输入长度的情况下,所花费的时间远远超过任何可行的时间跨度(数十年)。

并行和分布式计算

并行和分布式计算涉及在同时运行的多个处理器之间划分处理。 各种模型之间的根本区别在于处理器之间发送数据的方法。 在并行计算中,处理器之间的数据传输通常非常快,而在分布式计算中,处理器之间的数据传输是通过网络完成的,因此速度要慢得多。

在 N 个处理器上的计算至少需要 N 个商在单个处理器上花费的时间。 实际上,由于某些子任务无法并行化,并且某些处理器可能需要等待另一个处理器的结果,因此永远无法达到这种理论上的理想界限。

因此,关键的复杂性问题是开发算法,以使计算时间与处理器数量的乘积尽可能接近在单个处理器上执行相同计算所需的时间。

量子计算

量子计算机是具有基于量子力学的计算模型的计算机。 Church-Turing 论点适用于量子计算机,这意味着量子计算机可以解决的任何问题也可以由图灵机解决。 然而,一些任务理论上可以使用量子计算机而不是时间复杂度显着降低的经典计算机来解决。 目前,这只是理论上的,因为没有人知道如何开发实用的量子计算机。

创建量子复杂性理论是为了研究量子计算机可以解决的不同类型的问题。 它用于后量子密码学,这是创建能够抵抗量子计算机攻击的密码协议的过程。

问题的复杂性(下限)

可能解决问题的算法的复杂性(包括未被发现的技术)的下确界就是问题的复杂性。 因此,问题的复杂性等于解决它的任何算法的复杂性。

因此,任何以大 O 表示法给出的复杂度都代表了算法和伴随问题的复杂度。

另一方面,获得问题复杂性的非平凡下限通常很困难,而且这样做的策略很少。

为了解决大多数问题,必须读取所有输入数据,这需要与数据量成正比的时间。 结果,这些问题至少具有线性复杂度,或者,在大欧米茄符号中,复杂度为 Ω(n)。

一些问题,例如计算机代数和计算代数几何中的问题,有非常大的解决方案。 因为必须写入输出,所以复杂性受输出的最大大小的限制。

排序算法所需的比较次数具有 Ω(nlogn) 的非线性下限。 因此,最好的排序算法是最有效的,因为它们的复杂度是 O(nlogn)。 事实上有 n! 组织 n 个事物的方法导致了这个下限。 因为每次比较都会划分这个 n 的集合! 订单分成两部分,区分所有订单所需的 N 比较次数必须是 2N > n!,根据斯特林公式,这意味着 O(nlogn)。

将一个问题简化为另一个问题是获得降低复杂性约束的常用策略。

算法开发

评估算法的复杂性是设计过程的一个重要元素,因为它提供了有关预期性能的有用信息。

一个常见的误解是,由于摩尔定律预测现代计算机能力的指数增长,评估算法的复杂性将变得不那么重要。 这是不正确的,因为增加的功率允许处理大量数据(大数据)。 例如,当按字母顺序对数百个条目的列表进行排序时,任何算法都应该在不到一秒的时间内运行良好,例如一本书的参考书目。 另一方面,对于一百万个条目(例如,一个大城市的电话号码),需要 O(n2) 比较的基本算法必须执行一万亿次比较,以 10 的速度需要三个小时每秒百万次比较。 另一方面,快速排序和合并排序只需要 nlogn 比较(前者的平均复杂度,后者的最坏情况复杂度)。 对于 n = 30,000,000,这会产生大约 1,000,000 次比较,如果每秒进行 3 万次比较,这将只需要 10 秒。

因此,评估复杂性可以允许在实施之前消除许多低效的算法。 这也可以用于微调复杂的算法,而无需测试所有可能的变体。 对复杂性的研究允许通过确定复杂算法中最昂贵的步骤来集中精力提高实现的效率。

要详细了解认证课程,您可以扩展和分析下表。

EITC/IS/CCTF 计算复杂性理论基础认证课程以视频形式引用开放获取教学材料。 学习过程分为逐步结构(课程 -> 课程 -> 主题),涵盖相关课程部分。 还提供与领域专家的无限咨询。
有关认证程序检查的详细信息 运行流程.

初级辅助课程阅读材料

S. Arora, B. Barak,计算复杂性:一种现代方法
https://theory.cs.princeton.edu/complexity/book.pdf

辅助性课程阅读材料

O. Goldreich,复杂性理论导论:
https://www.wisdom.weizmann.ac.il/~oded/cc99.html

离散数学的支持性课程阅读材料

J. Aspnes,离散数学注释:
https://www.cs.yale.edu/homes/aspnes/classes/202/notes.pdf

关于图论的辅助课程阅读材料

R. Diestel,图论:
https://diestel-graph-theory.com/

认证计划课程

展开全部
介绍 1主题
扩大
课程内容
0%完成 0/1步骤
理论介绍
有限状态机 6主题
扩大
课程内容
0%完成 0/6步骤
有限状态机简介
有限状态机的例子
常规语言操作
非确定性有限状态机简介
非确定性有限状态机的形式定义
确定性和非确定性FSM的等价性
常规语言 5主题
扩大
课程内容
0%完成 0/5步骤
关闭正常运营
常用表达
正则表达式和正则语言的对等
抽取普通语言的引理
常规语言摘要
上下文无关文法和语言 4主题
扩大
课程内容
0%完成 0/4步骤
上下文无关文法和语言简介
上下文无关文法示例
多种上下文无关语言
关于上下文无关语言的事实
上下文相关语言 3主题
扩大
课程内容
0%完成 0/3步骤
乔姆斯基范式
乔姆斯基层次结构和上下文相关语言
节能灯的抽油烟
下推自动机 3主题
扩大
课程内容
0%完成 0/3步骤
PDA:下推式自动机
CFG和PDA的等效性
CFG和PDA等效的结论
图灵机 9主题
扩大
课程内容
0%完成 0/9步骤
图灵机简介
图灵机示例
TM和相关语言类别的定义
教会转向论题
图灵机编程技术
多带图灵机
图灵机中的不确定性
图灵机作为问题解决者
普查员
可判定性 17主题
扩大
课程内容
0%完成 0/17步骤
可判定性和可判定问题
对于DFA而言,尚有更多问题
有关上下文无关语言的问题
通用图灵机
无限–可数而不可数
图灵无法识别的语言
暂停问题的不确定性
图灵无法识别的语言
可还原性–一种证明不确定性的技术
停止问题-通过还原来证明
TM 接受任何字符串吗?
可计算功能
图灵机的等效性
减少一种语言到另一种
邮政对应问题
PCP的不确定性
线性绑定自动机
递归 5主题
扩大
课程内容
0%完成 0/5步骤
自行打印的程序
写自己说明的图灵机
递归定理
递归定理的结果
不动点定理
逻辑 4主题
扩大
课程内容
0%完成 0/4步骤
一阶谓词逻辑–概述
真相,意义和证明
真实陈述和可证明陈述
戈德尔的不完全性定理
复杂 8主题
扩大
课程内容
0%完成 0/8步骤
时间复杂度和big-O表示法
计算算法的运行时间
不同计算模型的时间复杂度
时间复杂度等级P和NP
NP的定义和多项式可验证性
NP完全性
证明SAT是NP完整的
空间复杂度等级
EITC/IS/CCTF 计算复杂性理论基础
  • 分享

关于我们 艾德明

首页 » 我的账号

认证中心

程序首页 展开全部
介绍
1主题
理论介绍
有限状态机
6主题
有限状态机简介
有限状态机的例子
常规语言操作
非确定性有限状态机简介
非确定性有限状态机的形式定义
确定性和非确定性FSM的等价性
常规语言
5主题
关闭正常运营
常用表达
正则表达式和正则语言的对等
抽取普通语言的引理
常规语言摘要
上下文无关文法和语言
4主题
上下文无关文法和语言简介
上下文无关文法示例
多种上下文无关语言
关于上下文无关语言的事实
上下文相关语言
3主题
乔姆斯基范式
乔姆斯基层次结构和上下文相关语言
节能灯的抽油烟
下推自动机
3主题
PDA:下推式自动机
CFG和PDA的等效性
CFG和PDA等效的结论
图灵机
9主题
图灵机简介
图灵机示例
TM和相关语言类别的定义
教会转向论题
图灵机编程技术
多带图灵机
图灵机中的不确定性
图灵机作为问题解决者
普查员
可判定性
17主题
可判定性和可判定问题
对于DFA而言,尚有更多问题
有关上下文无关语言的问题
通用图灵机
无限–可数而不可数
图灵无法识别的语言
暂停问题的不确定性
图灵无法识别的语言
可还原性–一种证明不确定性的技术
停止问题-通过还原来证明
TM 接受任何字符串吗?
可计算功能
图灵机的等效性
减少一种语言到另一种
邮政对应问题
PCP的不确定性
线性绑定自动机
递归
5主题
自行打印的程序
写自己说明的图灵机
递归定理
递归定理的结果
不动点定理
逻辑
4主题
一阶谓词逻辑–概述
真相,意义和证明
真实陈述和可证明陈述
戈德尔的不完全性定理
复杂
8主题
时间复杂度和big-O表示法
计算算法的运行时间
不同计算模型的时间复杂度
时间复杂度等级P和NP
NP的定义和多项式可验证性
NP完全性
证明SAT是NP完整的
空间复杂度等级
EITC/IS/CCTF 计算复杂性理论基础

用户菜单

  • 我的账号
  • 我的预订

证书类别

  • EITC认证 (105)
  • EITCA认证 (9)

你在找什么?

  • 介绍
  • 如何运作的?
  • EITCA学院
  • EITCI DSJC 补贴
  • 完整的 EITC 目录
  • 您的订单
  • 特色
  •   IT ID
  • 关于我们
  • 联系

EITCA 学院的资格 80% EITCI DSJC 补贴支持

80% 的 EITCA 学院费用由以下机构补贴 9/6/2023

    EITCA学院行政办公室

    欧洲 IT 认证机构
    布鲁塞尔,比利时,欧盟

    EITC/EITCA 认证机构
    监管欧洲IT认证标准
    访问 联系表格 或致电 +32 25887351

    EITCI 的推文
    信息安全政策 | DSRRM 和 GDPR 政策 | 数据保护政策 | 加工活动记录 | HSE政策 | 反腐败政策 | 现代奴隶制政策

    更改您的语言偏好

    自动翻译成您的语言

    使用条款 | 隐私政策
    关注@EITCI
    EITCA学院
    • EITCA社交媒体学院
    EITCA学院


    ©2008-2023  欧洲 IT 认证机构
    布鲁塞尔,比利时,欧盟

    回到顶部
    与支持人员聊天
    与支持人员聊天
    问题,疑问,问题? 我们是来帮你的!
    结束聊天
    连接...
    你有任何问题吗?
    你有任何问题吗?
    :
    :
    :
    发送
    你有任何问题吗?
    :
    :
    开始聊天
    聊天会话已结束。 谢谢!
    请评价您获得的支持。
    好 坏