前言

本书的Python代码旨在演示第二版《计算agent的基础》人工智能中的一些算法,其中包含并解释了所有代码。我们遵循了以下原则:

  • 代码应该简单并且尽可能接近伪代码。我们选择了可读性而不是效率:我们尽可能地保持渐近复杂性(除非在某些情况下,更高效的代码是一个练习),但没有优化常量因素。
  • 代码应该可以工作,但它不包括所有可能的功能。缺失的部分可以用作练习。
  • 我们广泛使用列表理解、集合和字典。我们尽量不使用那些不明显的库是否合适的库。这是一种学生无需在库中进行广泛搜索就可以编写的代码。
  • 它是为Python 3.3及以上版本设计的。(不是Python 2)。你也可以使用最新的版本。我们使用一个简单的方法来跟踪代码,使用一个方法display,它类似于print,但包含一个整数display级别。然后,用户可以设置对应对象(或类)的最大display级别,从而控制print的细节量。我们尽量避免在代码中添加太多的跟踪语句。display的使用是为了使算法的未来图形显示成为可能。

目录

  • Python for Artificial Intelligence(基于Python的人工智能)
  • Agents and Control(Agents和控制)
  • Searching for Solutions(搜索解决方法)
  • Reasoning with Constraints(推理与约束)
  • Propositions and Inference(命题和推理)
  • Planning with Certainty(确定性规划)
  • Supervised Machine Learning(有监督机器学习)
  • Reasoning with Uncertainty(不确定性推理)
  • Planning with Uncertainty(不确定规划)
  • Learning with Uncertainty(不确定学习)
  • Multiagent Systems(多agent系统)
  • Reinforcement Learning(强化学习)
  • Relational Learning(关系学习)

作者介绍

David Poole,加拿大不列颠哥伦比亚大学计算机科学教授,计算智能实验室主任。2014-2015年,他是牛津大学Leverhulme Trust客座教授。他还是加拿大人工智能学会(CAIAC)2013年终身成就奖获得者,是国际人工智能促进协会(AAAI)和加拿大人工智能学会(CAIAC)Fellow。   

Alan Mackworth,加拿大不列颠哥伦比亚大学计算机科学教授。他的研究兴趣是基于约束的人工智能及其应用,被称为约束满足、机器人足球、混合系统和基于约束的Agent等研究领域的先驱。他是国际人工智能联合会议(IJCAI)公司的总裁和理事,以及IJCAI执行委员会主席;同时还担任许多编委会和程序委员会委员。他是加拿大计算机智能研究会(CSCSI)主席,还担任国际人工智能促进协会(AAAI)主席。荣获的奖励包括:ITAC/NSERC杰出学术奖.Killam研究奖,《人工智能》杂志经典论文奖,CSCSI杰出服务奖,AAAI杰出服务奖,CAIAC终身成就奖等。他是AAAI和CAIAC的Fellow,加拿大前沿科学研究院和加拿大皇家学院院士。

成为VIP会员查看完整内容
0
63

相关内容

电子书指“电子书籍”,即数字化的出版物。

这本受欢迎的教科书的第一版,当代人工智能,提供了一个学生友好的人工智能介绍。这一版完全修订和扩大更新,人工智能: 介绍机器学习,第二版,保留相同的可访问性和解决问题的方法,同时提供新的材料和方法。

该书分为五个部分,重点介绍了人工智能中最有用的技术。书的第一部分涵盖了基于逻辑的方法,而第二部分着重于基于概率的方法。第三部分是涌现智能的特点,探讨了基于群体智能的进化计算和方法。接下来的最新部分将提供神经网络和深度学习的详细概述。书的最后一部分着重于自然语言的理解。

适合本科生和刚毕业的研究生,本课程测试教材为学生和其他读者提供关键的人工智能方法和算法,以解决具有挑战性的问题,涉及系统的智能行为在专门领域,如医疗和软件诊断,金融决策,语音和文本识别,遗传分析等。

https://www.routledge.com/Artificial-Intelligence-With-an-Introduction-to-Machine-Learning-Second/Neapolitan-Jiang/p/book/9781138502383

成为VIP会员查看完整内容
0
77

强化学习是现在人工智能领域里面最活跃的研究领域之一,它是一种用于学习的计算方法,其中会有一个代理在与复杂的不确定环境交互时试图最大化其所收到的奖励。现在,如果你是一个强化学习的初学者,由 Richard Sutton 和 Andrew Barto 合著的《Reinforcement Learning : An Introduction》可能就是你的最佳选择。这本书提供了关于强化学习的简单明了的关键思想和算法的解释。他们讨论了该领域的知识基础的历史延伸到了最新的发展的应用。

本书全文共分三部分,17章内容

  • 第一部分:列表(Tabular)解决法,第一章描述了强化学习问题具体案例的解决方案,第二章描述了贯穿全书的一般问题制定——有限马尔科夫决策过程,其主要思想包括贝尔曼方程(Bellman equation)和价值函数,第三、四、五章介绍了解决有限马尔科夫决策问题的三类基本方法:动态编程,蒙特卡洛方法、时序差分学习。三者各有其优缺点,第六、七章介绍了上述三类方法如何结合在一起进而达到最佳效果。第六章中介绍了可使用适合度轨迹(eligibility traces)把蒙特卡洛方法和时序差分学习的优势整合起来。第七章中表明时序差分学习可与模型学习和规划方法(比如动态编程)结合起来,获得一个解决列表强化学习问题的完整而统一的方案。

  • 第二部分:近似求解法,从某种程度上讲只需要将强化学习方法和已有的泛化方法结合起来。泛化方法通常称为函数逼近,从理论上看,在这些领域中研究过的任何方法都可以用作强化学习算法中的函数逼近器,虽然实际上有些方法比起其它更加适用于强化学习。在强化学习中使用函数逼近涉及一些在传统的监督学习中不常出现的新问题,比如非稳定性(nonstationarity)、引导(bootstrapping)和目标延迟(delayed targets)。这部分的五章中先后介绍这些以及其它问题。首先集中讨论在线(on-policy)训练,而在第九章中的预测案例其策略是给定的,只有其价值函数是近似的,在第十章中的控制案例中最优策略的一个近似已经找到。第十一章讨论函数逼近的离线(off-policy)学习的困难。第十二章将介绍和分析适合度轨迹(eligibility traces)的算法机制,它能在多个案例中显著优化多步强化学习方法的计算特性。这一部分的最后一章将探索一种不同的控制、策略梯度的方法,它能直接逼近最优策略且完全不需要设定近似值函数(虽然如果使用了一个逼近价值函数,效率会高得多)。

  • 第三部分:深层次研究,这部分把眼光放到第一、二部分中介绍标准的强化学习思想之外,简单地概述它们和心理学以及神经科学的关系,讨论一个强化学习应用的采样过程,和一些未来的强化学习研究的活跃前沿。

成为VIP会员查看完整内容
0
43

Perkovic对使用Python编程的介绍:作为应用程序开发的重点,第二版不仅仅是对编程的介绍。这是一本包罗万象的计算机科学入门书,采用了“在正确的时间使用正确的工具”的教学方法,并侧重于应用程序开发。该方法是实践和问题导向的,与实践问题和解决方案出现在整个文本。文本是命令式的,但并不回避在适当的时候尽早讨论对象。关于用户定义类和面向对象编程的讨论将在后面的课文中出现,当学生有更多的背景知识和概念时,可以激发他们的学习动机。章节包括问题解决技术和经典算法的介绍,问题解决和编程以及将核心技能应用于应用程序开发的方法。本版本还包括在更广泛的领域中提供的示例和实践问题。另一章的案例研究是独家威利E-Text,为学生提供实际应用的概念和工具,涵盖在章节中。

成为VIP会员查看完整内容
0
30

强化一词来源于实验心理学中对动物学习的研究,它指的是某一事件的发生,与某一反应之间有恰当的关系,而这一事件往往会增加该反应在相同情况下再次发生的可能性。虽然心理学家没有使用“强化学习”这个术语,但它已经被人工智能和工程领域的理论家广泛采用,用来指代基于这一强化原理的学习任务和算法。最简单的强化学习方法使用的是一个常识,即如果一个行为之后出现了一个令人满意的状态,或者一个状态的改善,那么产生该行为的倾向就会得到加强。强化学习的概念在工程领域已经存在了几十年(如Mendel和McClaren 1970),在人工智能领域也已经存在了几十年(Minsky 1954, 1961;撒母耳1959;图灵1950)。然而,直到最近,强化学习方法的发展和应用才在这些领域占据了大量的研究人员。激发这种兴趣的是两个基本的挑战:1) 设计能够在复杂动态环境中在不确定性下运行的自主机器人代理,2) 为非常大规模的动态决策问题找到有用的近似解。

成为VIP会员查看完整内容
0
80

Python是世界上最流行的编程语言之一,人们从不同的背景成为Python程序员。有些人受过正规的计算机科学教育。其他人则将Python学习作为一种爱好。还有一些人在专业环境中使用Python,但他们的主要工作不是做软件开发人员。这本中级书中的问题将帮助经验丰富的程序员在学习语言的某些高级功能的同时,从他们的CS教育中重新了解自己的想法。自学成才的程序员将通过学习所选语言(例如Python)中的经典问题来加速CS教育。本书涵盖了各种各样的问题解决技术,以至于每个人都有真正的收获。

这本书不是对Python的介绍。相反,这本书假设您已经是一名中级或高级的Python程序员。尽管这本书需要Python3.7,但我们并不认为它能够精通最新版本的Python的每一个方面。事实上,这本书的内容是建立在这样一个假设上的:它将作为学习材料,帮助读者达到这样的掌握。另一方面,这本书不适合完全不熟悉Python的读者。

目录

介绍

  1. 小问题

    • 斐波那契序列

    • 简单的压缩

    • 牢不可破的加密

    • 计算圆周率

    • 汉诺塔

    • 实际应用

    • 练习

  2. 搜索问题

    • DNA搜索

    • 迷宫求解

    • 传教士和野人问题

    • 实际应用

    • 练习

  3. 约束满足问题

    • 构建约束-满足问题框架

    • 澳大利亚的地图着色问题

    • 八皇后问题

    • 单词搜索

    • SEND+MORE=MONEY

    • 电路板布局

    • 实际应用

    • 练习

  4. 图论问题

    • 地图作为图

    • 构建图框架

    • 最短路径查找

    • 最小化网络建设成本

    • 求加权图中的最短路径

    • 实际应用

    • 练习

  5. 遗传算法

    • 生物背景

    • 一种通用遗传算法

    • 一个天真的测试

    • SEND+MORE=MONEY revisited

    • 优化列表压缩

    • 遗传算法的挑战

    • 实际应用

    • 练习

  6. k-means聚类

    • 预备工作

    • k-means聚类算法

    • 按年龄和经度对州长进行聚类

    • 按长度聚集迈克尔·杰克逊的专辑

    • K-means聚类的问题和扩展

    • 实际应用

    • 练习

  7. 相当简单的神经网络

    • 生物学基础?

    • 人工神经网络

    • 预备工作

    • 构建网络

    • 分类问题

    • 加速神经网络

    • 神经网络问题和扩展

    • 实际应用

    • 练习

  8. 对抗搜索

    • 基本棋盘游戏组件
      
    • 井字游戏

    • 四子棋

    • 除了α-β剪枝之外的极大极小改进

    • 实际应用

    • 练习

  9. 其他问题

    • 背包问题

    • 旅行推销员问题

    • 电话号码助记符

    • 练习

附录A 词汇表

附录B 更多资源

附录C 类型提示简介

成为VIP会员查看完整内容
0
24

课程名称: Introduction to Articial Intelligence

课程简介:

本课程主要讲述了人工智能相关知识,包括基本理论、练习和项目。

课程部分大纲:

  • 人工智能导论
  • 智能体
    • 教程:Python入门
  • 通过搜索来解决问题
    • 练习1:通过搜索来解决问题
    • 项目1:搜索算法
  • 约束满足问题
    • 练习2:约束满足问题
  • 游戏对抗性搜索
    • 练习3:游戏对抗性搜索
  • 表示不确定知识
    • 练习4:不确定性下的推理(第1部分)
  • 贝叶斯网络中的推论
    • 练习5:不确定性下的推理(第二部分)
  • 随时间推移的推理(第1部分)
  • 随时间推移的推理(第2部分)

讲师介绍:

Gilles Louppe是比利时列日大学人工智能和深度学习的副教授。他曾是纽约大学物理系和数据科学中心的博士后助理,与欧洲核子研究中心的阿特拉斯实验关系密切。他的研究处于机器学习、人工智能和物理科学的交叉点上,他目前的研究兴趣包括使用和设计新的机器学习算法,以新的和变革性的方式处理来自基础科学的数据驱动的问题。

下载索引:链接:https://pan.baidu.com/s/1aUGwQx3YUWLit3RfKNNDNw;提取码:c8lc

成为VIP会员查看完整内容
0
59

前言: 目标:本课程旨在让学生对人工智能的基本概念和实践有一个坚实的(通常是有点理论性的)基础。这门课程在第一学期主要涉及符号化的人工智能,有时也被称为优秀的老式人工智能(GofAI),并在第二学期提供统计方法的基础。事实上,一个完整的基于机器学习的AI应该有专业课程,并且需要比我们在这门课程中更多的数学基础。

课程内容

目标: 使学生对人工智能领域的基本概念和实践有一个坚实的基础。该课程将基于Russell/Norvig的书《人工智能》:现代方法[RN09]

Artificial Intelligence I(第一部分): 介绍人工智能作为一个研究领域,讨论作为人工智能统一概念范式的理性代理,并涵盖问题解决、搜索、约束传播、逻辑、知识表示和规划。

Artificial Intelligence II(第二部分): 更倾向于让学生接触基于统计的人工智能的基础知识:我们从不确定性下的推理开始,用贝叶斯网络建立基础,并将其扩展到理性决策理论。在此基础上,我们介绍了机器学习的基础知识。

成为VIP会员查看完整内容
0
73

这是Peter Norvig(1992)写的《人工智能编程范式:通用Lisp中的案例研究》一书的开放源代码存储库。

目录

  • 人工智能编程范例
    • 前事
    • 前言
  • 第一部分:常见Lisp简介
    • 1 Lisp简介
    • 2 一个简单的Lisp程序
    • 3 Lisp概述
  • 第二部分:早期的AI程序
    • 4 GPS:一般问题求解器
    • 5 Eliza:与机器对话
    • 6 建筑软件工具
    • 7 学生:解决代数词问题
    • 8 符号数学:简化程序
  • 第三部分:工具和技术
    • 9 效率问题
    • 10 低效率问题
    • 11 逻辑编程
    • 12 编译逻辑程序
    • 13 面向对象编程
    • 14 知识表示与推理
  • 第四部分:高级AI程序
    • 15 具有规范形式的符号数学
    • 16 专家系统
    • 17 通过约束满意度标注线图
    • 18 搜索和奥赛罗游戏
    • 19 自然语言导论
    • 20 统一语法
    • 21 英语语法
  • 第五部分:其余的Lisp
    • 22 方案:罕见的Lisp
    • 23 编译Lisp
    • 24 ANSI通用Lisp
    • 25 故障排除
成为VIP会员查看完整内容
PAIP-part2.pdf
PAIP-part1.pdf
0
15
小贴士
相关VIP内容
相关论文
A Survey on Edge Intelligence
Dianlei Xu,Tong Li,Yong Li,Xiang Su,Sasu Tarkoma,Pan Hui
9+阅读 · 3月26日
Heterogeneous Relational Reasoning in Knowledge Graphs with Reinforcement Learning
Mandana Saebi,Steven Krieg,Chuxu Zhang,Meng Jiang,Nitesh Chawla
4+阅读 · 3月12日
Curriculum Learning for Reinforcement Learning Domains: A Framework and Survey
Sanmit Narvekar,Bei Peng,Matteo Leonetti,Jivko Sinapov,Matthew E. Taylor,Peter Stone
10+阅读 · 3月10日
The Measure of Intelligence
François Chollet
3+阅读 · 2019年11月5日
Meta-World: A Benchmark and Evaluation for Multi-Task and Meta Reinforcement Learning
Tianhe Yu,Deirdre Quillen,Zhanpeng He,Ryan Julian,Karol Hausman,Chelsea Finn,Sergey Levine
16+阅读 · 2019年10月24日
Marc Everett Johnson
3+阅读 · 2018年12月18日
Deep Reinforcement Learning: An Overview
Yuxi Li
8+阅读 · 2018年11月26日
Ashvin Nair,Vitchyr Pong,Murtaza Dalal,Shikhar Bahl,Steven Lin,Sergey Levine
8+阅读 · 2018年7月12日
Benjamin Recht
3+阅读 · 2018年6月25日
Ruotian Luo,Brian Price,Scott Cohen,Gregory Shakhnarovich
6+阅读 · 2018年3月12日
Top