• Games -- Trees, Minimax, Pruning

    进入新的一章, 我们从单智能体环境(智能体与一个被动的世界互动)进入到多智能体的对抗性搜索 (Adversarial Search) 环境中。在这里,环境中存在其他智能体(对手),它们会主动采取行动来阻挠我方目标的实现。 当存在一个理性对手时,一个智能体不能再简单地寻找一条通往目标的路径。它必须假设对手也会采取最优的行动来对抗自己。因此,智能体的策略必须是:在所有可能的对手回应中,选...
  • Search -- Local Search

    局部搜索 (Local Search)概述 与前几讲(如A*搜索)不同,局部搜索算法解决的是另一类问题。在之前的搜索中,我们不仅关心是否能到达目标,还关心如何到达,即找到一条完整的路径 。 然而,在很多问题中,我们只关心最终的解决方案状态,而不关心到达该状态的具体步骤 。 局部搜索 (Local Search) 就是为这类问题设计的。它不维护从起点开始的路径,而是从一个完整的、可...
  • Search -- Informed Search - A* and Heuristics

    无信息搜索(如UCS)虽然能保证找到最优解,但它像是在黑暗中摸索,会向所有方向均匀扩展,效率低下。如果我们能给智能体一些关于“目标大概在哪个方向”的提示,搜索就能变得更高效。这种提示就是启发式 (Heuristics)。 启发式 (Heuristics) 启发式是一个函数 h(n),它接收一个状态 n 作为输入,输出一个对“从状态 n 到达目标的剩余成本”的估计值。 启发式的来源...
  • Search -- State Spaces, Uninformed Search

    为了让一个理性的规划智能体能够行动,我们首先需要一种数学化的方式来描述它所处的环境 。搜索问题 (Search Problem) 的核心就是:给定智能体当前的状态,如何以最优的方式找到一条路径,到达满足其目标的新状态 。 搜索问题的形式化定义 一个搜索问题由以下六个核心要素构成 : 状态空间 (State Space):在一个特定世界中所有可能状态的集合 。 行动集合 (A...
  • Intro to AI, Rational Agents

    第一章笔记是该课程的开篇介绍, 核心是定义什么是智能体 (Agent) 以及智能体所处的环境 (Environment) 智能体 (Agents) AI的中心问题是创建一个理性的智能体 (rational agent) 。理性智能体是一个拥有目标或偏好,并试图执行一系列行动以期在这些目标下获得最佳(或最优)期望结果的实体 。 智能体的“理性”并非指无所不知或完美,而是在其知识...
  • 双指针

    什么是双指针法?(What is the Two-Pointers Technique?) 双指针(Two Pointers)是一种算法设计思想,它通过在数据结构(通常是数组或链表)上维护两个指针,并让它们以一定的规则移动,从而协同完成任务。 这里的“指针”并非 C/C++ 中的内存地址指针,而更多是指索引 (index) 或迭代器 (iterator),用来标记数据序列中的...
  • 知识图谱

    知识图谱 知识图谱是一种用图(Graph)结构来建模和存储现实世界中实体(Entity)、概念(Concept)及其之间复杂关系的知识库。它的核心目标是将互联网上非结构化的海量信息(如文本、图片)转化为结构化的知识,从而让机器能够像人类一样去理解和运用这些知识。 这个概念在2012年被谷歌(Google)正式提出并应用于其搜索引擎,极大地优化了搜索结果的质量和用户的体验,使得搜索不再是简...
  • About Shell

    什么是 Shell Shell 是一个命令行解释器,它为用户提供了一个向操作系统内核发送请求以便运行程序的界面系统级程序。 什么是 Shell 脚本/.sh 文件 .sh 文件,全称为 Shell 脚本文件 (Shell Script File),是一种为 Shell 编写的脚本程序。它的核心作用是将一系列需要执行的 Shell 命令按照顺序预先写在一个文件里,然后让 Shell...
  • 隐私保护

    常见的隐私保护技术 差分隐私(Differential Privacy, DP) 差分隐私是一种保护个人数据隐私的技术,它通过在数据中添加噪声来保护个人隐私。差分隐私技术可以有效地保护个人数据隐私,同时保证数据分析的准确性。 其核心思想可以用一个非常直观的方式来理解:在一个数据集中,无论是否包含某个特定个体的数据,对该数据集进行查询分析的结果都应该是极其相似的。 换句话说,如果一个...
11718192021