赵才荣 E-mail:zhaocairong@tongji.edu.cn 同济大学,电子与信息工程学院,智信馆410室 《人工智能原理》课程 第三章 通过搜索进行问题求解 有信息搜索 赵才荣 E-mail:zhaocairong@tongji.edu.cn 同济大学,电子与信息工程学院,智信馆410室 理性的Agent是人工智能方法的核心 通过对Agent从感知外部环境,到实施行动,并最后对外部环境施加影响的全过程,把AI中相互分离的主要领域,如问题求解,知识与推理,合乎逻辑 的行动,不确定知识与推理,学习以及通信、感知与行动等统一在智能Agent这一框架下,形成了一个相互联系的整体。
Review: Uninformed search strategies Problem formulation Breadth-first Uniform-cost Depth-first Depth-limited Iterative deepening Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Outline Best-first search Greedy best-first search A* search Heuristics Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Best-first search Idea: use an evaluation function f(n) for each node estimate of "desirability" Expand most desirable unexpanded node Implementation: Order the nodes in fringe in decreasing order of desirability Special cases: greedy best-first search A* search Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Best-first search 基本思想 启发式函数(heuristic function ) 创建一个评价函数 f(n) 度量下一步所有可能的步骤 选择一个最好的步骤进行扩展 启发式函数(heuristic function ) h(n) = 从节点n到目标节点的估计耗散值 Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Example 上海市精品课程 人工智能原理 Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Greedy best-first search Evaluation function f(n) = h(n) (heuristic) e.g., hSLD(n) = straight-line distance from n to Bucharest Greedy best-first search expands the node that appears to be closest to goal Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Greedy best-first search example Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Greedy best-first search example Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Greedy best-first search example Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Greedy best-first search example Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Greedy best-first search example Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Properties of greedy best-first search Complete? No – can get stuck in loops, e.g., Iasi Neamt Iasi Neamt Time? O(bm), but a good heuristic can give dramatic improvement Space? O(bm) -- keeps all nodes in memory Optimal? No Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
A* search Idea: avoid expanding paths that are expensive Evaluation function f(n) = g(n) + h(n) g(n) = cost so far to reach n h(n) = estimated cost from n to goal f(n) = estimated total cost of path through n to goal Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
A* search example 上海市精品课程 人工智能原理 Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
A* search example 上海市精品课程 人工智能原理 Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
A* search example 上海市精品课程 人工智能原理 Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
A* search example 上海市精品课程 人工智能原理 Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
A* search example 上海市精品课程 人工智能原理 Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
A* search example 上海市精品课程 人工智能原理 Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Admissible heuristics A heuristic h(n) is admissible if for every node n, h(n) ≤ h*(n), where h*(n) is the true cost to reach the goal state from n. An admissible heuristic never overestimates the cost to reach the goal, i.e., it is optimistic Example: hSLD(n) (never overestimates the actual road distance) Theorem: If h(n) is admissible, A* using TREE-SEARCH is optimal Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Optimality of A* (proof1) Suppose some suboptimal goal G2 has been generated and is in the fringe. Let n be an unexpanded node in the fringe such that n is on a shortest path to an optimal goal G. f(G2) = g(G2) since h(G2) = 0 f(G) = g(G) since h(G) = 0 g(G2) > g(G) since G2 is suboptimal f(G2) > f(G) from above Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Optimality of A* (proof2) Suppose some suboptimal goal G2 has been generated and is in the fringe. Let n be an unexpanded node in the fringe such that n is on a shortest path to an optimal goal G. f(G2) > f(G) from above h(n) ≤ h^*(n) since h is admissible g(n) + h(n) ≤ g(n) + h*(n) f(n) ≤ f(G) Hence f(G2) > f(n), and A* will never select G2 for expansion Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Consistent Heuristics A heuristic is consistent if for every node n, every successor n' of n generated by any action a, then h(n) ≤ c(n,a,n') + h(n') If h is consistent, we have f(n') = g(n') + h(n') = g(n) + c(n,a,n') + h(n') ≥ g(n) + h(n) i.e., f(n) is non-decreasing along any path. Theorem: If h(n) is consistent, A* using GRAPH-SEARCH is optimal Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Optimality of A* A* expands nodes in order of increasing f value Gradually adds "f-contours" of nodes Contour i has all nodes with f=fi, where fi < fi+1 A*扩展所有 f(n) < C*的节点 A*扩展部分f(n)=C*的节点 A*不扩展f(n)>C*的节点 Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Properties of A* Complete? Yes (unless there are infinitely many nodes with f ≤ f(G) ) Time? Exponential Space? Keeps all nodes in memory Optimal? Yes Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Heuristic Function Admissible heuristics E.g., for the 8-puzzle: h1(n) = number of misplaced tiles h2(n) = total Manhattan distance (i.e., no. of squares from desired location of each tile) h1(S) = ? h2(S) = ? Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Admissible heuristics E.g., for the 8-puzzle: h1(n) = number of misplaced tiles h2(n) = total Manhattan distance (i.e., no. of squares from desired location of each tile) h1(S) = ? 8 h2(S) = ? 3+1+2+2+2+3+3+2 = 18 Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
A*算法应用举例 例八数码难题。 S0 f=6 g*=1h*=3 f=6 f=6 g*=2 h*=2 f=6 f=4 2 8 3 1 4 7 6 5 S0 h*=4 f=4 2 8 3 1 4 7 6 5 2 3 1 8 4 1 6 4 7 5 f=6 g*=1h*=3 f=6 f=6 f=4 2 3 1 8 4 7 6 5 g*=2 h*=2 f=6 f=4 例八数码难题。 f(n)=d(n)+P(n) d(n) 深度 P(n)与目标距离 显然满足 P(n)≤ h*(n) 即f*=g*+h* 1 2 3 8 4 7 6 5 g*=3 h*=1 f=4 1 2 3 8 4 7 6 5 7 8 4 6 5 g*=4 h*=0 f=4 f=6 Sg 八数码难题h(n)=P(n)的搜索树 上海市精品课程 人工智能原理 29
A*算法应用举例 例八数码难题。 S0 f=4 g*=1h*=3 f=5 f=5 f=5 f=6 g*=2 h*=2 f=6 f=4 2 8 3 1 4 7 6 5 S0 h*=3 f=3 2 8 3 1 4 7 6 5 2 3 1 8 4 1 6 4 7 5 f=4 g*=1h*=3 f=5 f=5 f=4 8 3 2 1 4 7 6 5 2 8 3 7 1 4 6 5 f=5 f=6 2 3 1 8 4 7 6 5 g*=2 h*=2 f=6 f=4 例八数码难题。 f(n)=d(n)+P(n) d(n) 深度 P(n)不在位棋子数 显然满足 P(n)≤ h*(n) 即f*=g*+h* 1 2 3 8 4 7 6 5 g*=3 h*=1 f=4 1 2 3 8 4 7 6 5 7 8 4 6 5 g*=4 h*=0 f=4 f=6 Sg 八数码难题h(n)=P(n)的搜索树 上海市精品课程 人工智能原理 30
Dominance If h2(n) ≥ h1(n) for all n (both admissible) then h2 dominates h1 ===》 h2 is better for search Typical search costs (average number of nodes expanded): d=12 IDS = 3,644,035 nodes (ITERATIVE-DEEPENING-SEARCH) A*(h1) = 227 nodes A*(h2) = 73 nodes d=24 IDS = too many nodes A*(h1) = 39,135 nodes A*(h2) = 1,641 nodes Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
上海市精品课程 人工智能原理 Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Heuristics from Relaxed Problems A problem with fewer restrictions on the actions is called a relaxed problem The cost of an optimal solution to a relaxed problem is an admissible heuristic for the original problem If the rules of the 8-puzzle are relaxed so that a tile can move anywhere, then h1(n) gives the shortest solution If the rules are relaxed so that a tile can move to any adjacent square, then h2(n) gives the shortest solution Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Heuristics from subproblems Let h3(n) be the cost of getting a subset of tiles (say, 1,2,3,4) into their correct positions Can precompute and save the exact solution cost for every possible subproblem instance – pattern database Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Review : search strategies Uninformed: Use only information available in the problem formulation Breadth-first Uniform-cost Depth-first Depth-limited Iterative deepening Informed: Use heuristics to guide the search Best first: Greedy search – queue first nodes that maximize heuristic “desirability” based on estimated path cost from current node to goal; A* search – queue first nodes that maximize sum of path cost so far and estimated path cost to goal. Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Exercise: Search Algorithms The following figure shows a portion of a partially expanded search tree. Each arc between nodes is labeled with the cost of the corresponding operator, and the leaves are labeled with the value of the heuristic function, h. Which node (use the node’s letter) will be expanded next by each of the following search algorithms? (a) Depth-first search (b) Breadth-first search (c) Uniform-cost search (d) Greedy search (e) A* search 5 D A C 4 19 6 3 h=15 B F G E h=8 h=12 h=10 h=18 H Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Depth-first search Node queue: initialization # state depth path cost parent # 1 A 0 0 -- Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Depth-first search Node queue: add successors to queue front; empty queue from top # state depth path cost parent # 2 B 1 3 1 3 C 1 19 1 4 D 1 5 1 1 A 0 0 -- Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Depth-first search Node queue: add successors to queue front; empty queue from top # state depth path cost parent # 5 E 2 7 2 6 F 2 8 2 7 G 2 8 2 8 H 2 9 2 2 B 1 3 1 3 C 1 19 1 4 D 1 5 1 1 A 0 0 -- Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Depth-first search Node queue: add successors to queue front; empty queue from top # state depth path cost parent # 5 E 2 7 2 6 F 2 8 2 7 G 2 8 2 8 H 2 9 2 2 B 1 3 1 3 C 1 19 1 4 D 1 5 1 1 A 0 0 -- Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Exercise: Search Algorithms The following figure shows a portion of a partially expanded search tree. Each arc between nodes is labeled with the cost of the corresponding operator, and the leaves are labeled with the value of the heuristic function, h. Which node (use the node’s letter) will be expanded next by each of the following search algorithms? (a) Depth-first search (b) Breadth-first search (c) Uniform-cost search (d) Greedy search (e) A* search 5 D A C 4 19 6 3 h=15 B F G E h=8 h=12 h=10 h=18 H Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Breadth-first search Node queue: initialization # state depth path cost parent # 1 A 0 0 -- 上海市精品课程 人工智能原理
Breadth-first search Node queue: add successors to queue end; empty queue from top # state depth path cost parent # 1 A 0 0 -- 2 B 1 3 1 3 C 1 19 1 4 D 1 5 1 上海市精品课程 人工智能原理
Breadth-first search Node queue: add successors to queue end; empty queue from top # state depth path cost parent # 1 A 0 0 -- 2 B 1 3 1 3 C 1 19 1 4 D 1 5 1 5 E 2 7 2 6 F 2 8 2 7 G 2 8 2 8 H 2 9 2 上海市精品课程 人工智能原理
Breadth-first search Node queue: add successors to queue end; empty queue from top # state depth path cost parent # 1 A 0 0 -- 2 B 1 3 1 3 C 1 19 1 4 D 1 5 1 5 E 2 7 2 6 F 2 8 2 7 G 2 8 2 8 H 2 9 2 上海市精品课程 人工智能原理
Exercise: Search Algorithms The following figure shows a portion of a partially expanded search tree. Each arc between nodes is labeled with the cost of the corresponding operator, and the leaves are labeled with the value of the heuristic function, h. Which node (use the node’s letter) will be expanded next by each of the following search algorithms? (a) Depth-first search (b) Breadth-first search (c) Uniform-cost search (d) Greedy search (e) A* search 5 D A C 4 19 6 3 h=15 B F G E h=8 h=12 h=10 h=18 H Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Uniform-cost search Node queue: initialization # state depth path cost parent # 1 A 0 0 -- 上海市精品课程 人工智能原理
Uniform-cost search Node queue: add successors to queue so that entire queue is sorted by path cost so far; empty queue from top # state depth path cost parent # 1 A 0 0 -- 2 B 1 3 1 3 D 1 5 1 4 C 1 19 1 上海市精品课程 人工智能原理
Uniform-cost search Node queue: add successors to queue so that entire queue is sorted by path cost so far; empty queue from top # state depth path cost parent # 1 A 0 0 -- 2 B 1 3 1 3 D 1 5 1 5 E 2 7 2 6 F 2 8 2 7 G 2 8 2 8 H 2 9 2 4 C 1 19 1 上海市精品课程 人工智能原理
Uniform-cost search Node queue: add successors to queue so that entire queue is sorted by path cost so far; empty queue from top # state depth path cost parent # 1 A 0 0 -- 2 B 1 3 1 3 D 1 5 1 5 E 2 7 2 6 F 2 8 2 7 G 2 8 2 8 H 2 9 2 4 C 1 19 1 上海市精品课程 人工智能原理
Exercise: Search Algorithms The following figure shows a portion of a partially expanded search tree. Each arc between nodes is labeled with the cost of the corresponding operator, and the leaves are labeled with the value of the heuristic function, h. Which node (use the node’s letter) will be expanded next by each of the following search algorithms? (a) Depth-first search (b) Breadth-first search (c) Uniform-cost search (d) Greedy search (e) A* search 5 D A C 4 19 6 3 h=15 B F G E h=8 h=12 h=10 h=18 H Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
Greedy search Node queue: initialization # state depth path cost total parent # cost to goal cost 1 A 0 0 20 20 -- 上海市精品课程 人工智能原理
Greedy search Node queue: Add successors to queue, sorted by cost to goal. # state depth path cost total parent # cost to goal cost 1 A 0 0 20 20 -- 2 B 1 3 14 17 1 3 D 1 5 15 20 1 4 C 1 19 18 37 1 Sort key 上海市精品课程 人工智能原理
Greedy search Node queue: Add successors to queue, sorted by cost to goal. # state depth path cost total parent # cost to goal cost 1 A 0 0 20 20 -- 2 B 1 3 14 17 1 5 G 2 8 8 16 2 7 E 2 7 10 17 2 6 H 2 9 10 19 2 8 F 2 8 12 20 2 3 D 1 5 15 20 1 4 C 1 19 18 37 1 上海市精品课程 人工智能原理
Greedy search Node queue: Add successors to queue, sorted by cost to goal. # state depth path cost total parent # cost to goal cost 1 A 0 0 20 20 -- 2 B 1 3 14 17 1 5 G 2 8 8 16 2 7 E 2 7 10 17 2 6 H 2 9 10 19 2 8 F 2 8 12 20 2 3 D 1 5 15 20 1 4 C 1 19 18 37 1 上海市精品课程 人工智能原理
Exercise: Search Algorithms The following figure shows a portion of a partially expanded search tree. Each arc between nodes is labeled with the cost of the corresponding operator, and the leaves are labeled with the value of the heuristic function, h. Which node (use the node’s letter) will be expanded next by each of the following search algorithms? (a) Depth-first search (b) Breadth-first search (c) Uniform-cost search (d) Greedy search (e) A* search 5 D A C 4 19 6 3 h=15 B F G E h=8 h=12 h=10 h=18 H Agent 通过传感器感知环境并通过执行器对所处环境产生影响的实体。 智能体,顾名思义:就是具有智能的实体,英文名是Agent。 智能体是 人工智能 领域中一个很重要的概念。任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。 例子: 人类智能体(简单分析一下智能体的工作机理);机器人智能体。 一般地,一个Agent在指定时间是否为理性取决于以下四条: 1)定义了成功程度的性能度量; 2)Agent迄今所感知到的全体, 即感知序列(percept sequence); 3)Agent对环境的了解; 4)Agent所能实施的行动。 上海市精品课程 人工智能原理
A* search Node queue: initialization # state depth path cost total parent # cost to goal cost 1 A 0 0 20 20 -- 上海市精品课程 人工智能原理
A* search Node queue: Add successors to queue, sorted by total cost. # state depth path cost total parent # cost to goal cost 1 A 0 0 20 20 -- 2 B 1 3 14 17 1 3 D 1 5 15 20 1 4 C 1 19 18 37 1 Sort key 上海市精品课程 人工智能原理
A* search Node queue: Add successors to queue front, sorted by total cost. # state depth path cost total parent # cost to goal cost 1 A 0 0 20 20 -- 2 B 1 3 14 17 1 5 G 2 8 8 16 2 6 E 2 7 10 17 2 7 H 2 9 10 19 2 3 D 1 5 15 20 1 8 F 2 8 12 20 2 4 C 1 19 18 37 1 上海市精品课程 人工智能原理
A* search Node queue: Add successors to queue front, sorted by total cost. # state depth path cost total parent # cost to goal cost 1 A 0 0 20 20 -- 2 B 1 3 14 17 1 5 G 2 8 8 16 2 6 E 2 7 10 17 2 7 H 2 9 10 19 2 3 D 1 5 15 20 1 8 F 2 8 12 20 2 4 C 1 19 18 37 1 上海市精品课程 人工智能原理
实验一 求解Hanoi塔问题(不能用迭代方法求解),A星搜索求解八数码问题 要求:1,动态演示求解过程 2,PPT展示设计思想 和实验效果(10分钟) 3,提交一份实验报告 上海市精品课程 人工智能原理
Thank you