Informed search algorithms (接收資訊的搜尋演算法)

Slides:



Advertisements
Similar presentations
Exercise 1 EECS, Peking University Exercise in Query Processing.
Advertisements

Course 1 演算法: 效率、分析與量級 Algorithms: Efficiency, Analysis, and Order
人工智能原理 第2章 搜索技术 (上).
師資培育中心外埠教育參觀.
武进区三河口中学欢迎您.
Performance Evaluation
1. 理想的路由算法 有关路由选择协议的几个基本概念 算法必须是正确的和完整的。 算法在计算上应简单。
Chap. 4 Techniques of Circuit Analysis
Leftmost Longest Regular Expression Matching in Reconfigurable Logic
Minimum Spanning Trees
Linear Programming: Introduction and Duality
Large-Scale Malware Indexing Using Function-Call Graphs
Chap4 Tree.
Step up to make a difference
计算机问题求解 – 论题 算法的效率 2018年03月14日.
不動產估價.
Chap5 Graph.
Chapter 4 歸納(Induction)與遞迴(Recursion)
微積分網路教學課程 應用統計學系 周 章.
計算方法設計與分析 Design and Analysis of Algorithms 唐傳義
Chap5 Graph.
樹狀結構 陳怡芬 2018/11/16 北一女中資訊專題研究.
Chapter 6 Graph Chang Chi-Chung
第二章 共轴球面系统的物像关系 Chapter 2: Object-image relations of coaxial spheric system.
The Greedy Method.
圖論 (Graph Theory) B 電機四 大鳥 B 電機四 酋長 B 電機四 炫大
我祝願你足夠 背景音樂-星空下的小喇叭【電影:亂世忠魂】 AUTO.
第4章 网络互联与广域网 4.1 网络互联概述 4.2 网络互联设备 4.3 广域网 4.4 ISDN 4.5 DDN
Graph 2 Michael Tsai 2012/5/1 連載: 學生上課睡覺姿勢大全
Simulated Annealing 報告者:李怡緯 OPLAB in NTUIM.
主讲人: 吕敏 { } Spring 2016,USTC 算法基础 主讲人: 吕敏 { } Spring 2016,USTC.
Solving problems by searching 利用搜尋法解決問題
子博弈完美Nash均衡 我们知道,一个博弈可以有多于一个的Nash均衡。在某些情况下,我们可以按照“子博弈完美”的要求,把不符合这个要求的均衡去掉。 扩展型博弈G的一部分g叫做一个子博弈,如果g包含某个节点和它所有的后继点,并且一个G的信息集或者和g不相交,或者整个含于g。 一个Nash均衡称为子博弈完美的,如果它在每.
ZEEV ZEITIN Delft University of Technology, Netherlands
Path Finding 靜宜大學資工系 蔡奇偉 副教授.
樹 2 Michael Tsai 2013/3/26.
Dynamic Games of Incomplete Information -- Chapter 4
感謝同學們在加分題建議. 我會好好研讀+反省~
B+ Tree.
Chapter 5 Recursion.
计算机问题求解 – 论题3-2 - 贪心算法 2018年09月18日.
Mechanics Exercise Class Ⅰ
Respect cannot be demanded, it must be earned
3.5 Region Filling Region Filling is a process of “coloring in” a definite image area or region. 2019/4/19.
中国科学技术大学计算机系 陈香兰 2013Fall 第七讲 存储器管理 中国科学技术大学计算机系 陈香兰 2013Fall.
VRP工具or-tools调研 王羚宇
True friendship is like sound health;
计算机问题求解 – 论题 算法方法 2016年11月28日.
蕭志明 老師 Algorithm(演算法) Ext:6779
講師:郭育倫 第2章 效能分析 講師:郭育倫
Distance Vector vs Link State
Course 8 回溯、分枝與限制 Backtracking, Branch-and-Bound
Efficient Query Relaxation for Complex Relationship Search on Graph Data 李舒馨
最短通路问题.
唐常杰 四川大学计算机学院 计算机科学技术系
赵才荣 同济大学,电子与信息工程学院,智信馆410室
SLIQ:一种快速可伸缩分类器 Manish Mehta, Rakesh Agrawal, Jorma Rissanen IBM Almaden Research Center, 1996 报告人:郭新涛
2012 程式設計比賽 Openfind 天使帝國 v2.0 (蓋亞的紋章).
Distance Vector vs Link State Routing Protocols
補充 數值方法 數值方法.
Hospitality English 酒店商务英语 讲师:罗云利 工商与公共管理学院.
Advanced Competitive Programming
簡單迴歸分析與相關分析 莊文忠 副教授 世新大學行政管理學系 計量分析一(莊文忠副教授) 2019/8/3.
定语从句(4).
國立中正大學資工系系主任 數位學習中心主任
Respect cannot be demanded, it must be earned
JAVA 程式設計與資料結構 第十七章 Tree.
Attn: Ms Michelle Chan (Event Management) Dir. Tel: (852) /
JAVA 程式設計與資料結構 第二十一章 Graph.
Hybrid fractal zerotree wavelet image coding
Presentation transcript:

Informed search algorithms (接收資訊的搜尋演算法)

Outline Best-first search (最佳優先搜尋法) Greedy best-first search (貪婪最佳優先搜尋) A* search

Review(複習): Tree search A search strategy is defined by picking the order of node expansion (搜尋策略為挑選節點展開的順序)

Review: Uninformed search strategies(無接收資訊的搜尋策略) (無接收資訊的的搜尋策略僅使用問題本身定義的可用資訊) Breadth-first search Uniform-cost search Depth-first search Depth-limited search Iterative deepening search

Best-first search(最佳優先搜尋) Idea: use an evaluation function f(n) for each node 想法:對每個節點使用一個評估函數 estimate of "desirability" 有利條件的評估 展開最有利之未展開節點 Implementation:實作 Order the nodes in fringe in decreasing order of desirability 依據有利條件的評估值由大而小排列待展開的節點順序 Special cases (特別的例子) greedy best-first search A* search

增加各個城鎮到Bucharest的直線距離之資訊

Greedy best-first search Evaluation function評估函數 f(n) = h(n) (heuristic啟發式) 從n狀態到目標狀態的花費 e.g., hSLD(n) = straight-line distance from n to Bucharest(到Bucharest的直線距離) (貪婪最佳優先搜尋法展開似乎最接近目標的節點)

Greedy best-first search example

Greedy best-first search example

Greedy best-first search example

Greedy best-first search example

Properties of greedy best-first search(貪婪最佳優先搜尋法的特質) Complete? No – can get stuck in loops(可能遭遇迴圈), e.g., Iasi  Neamt  Iasi  Neamt  (m is the maximum depth of the search space)但一個好的啟發式可以產生極大的改善 Space? O(bm) -- keeps all nodes in memory Optimal? No, why? (如何改進貪婪最佳優先搜尋法)

A* search (想法:避免展開已知較大花費的路徑) Evaluation function(評估函數) f(n) = g(n) + h(n) g(n) = cost so far to reach n (到n點的已知花費) h(n) = estimated cost from n to goal(評估從n點到目標還需要的花費, 啟發式) (評估經由n 到目標所需的總花費)

A* search example

A* search example

A* search example

A* search example

A* search example

A* search example

Admissible heuristics (可採納的啟發式) (簡言之:低估) An admissible heuristic never overestimates the cost to reach the goal, i.e., it is optimistic 直線距離不會超過實際的距離

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

Properties of A* Complete? Yes (指數成長) Space? Keeps all nodes in memory Optimal? Yes Optimally efficient No other optimal algorithm is guaranteed to expand fewer nodes than A* (沒有其他的最佳解演算法能保證展開較A*少的節點數)

Memory-bounded heuristic search IDA* (Iterative-deepening A*) RBFS (Recursive best-first search) MA* (Memory-bounded A*) SMA* (Simplified MA*)

IDA* The main difference (與ID method比較主要差別) Cutoff using f-cost rather than the depth 使用花費取代深度來加深展開層數

RBFS (Recursive best-first search) Its structure is similar to that of a recursive depth-first search, it keeps track of the f-value of the best alternative path available from any ancestor of the current node.(其結構與RDFS相似, 但他記錄其他路徑的最佳f-value) If the current node exceeds this limit, the recursion unwinds back to the alternative path. (如果目前的展開節點花費已超過紀錄的限制, 則轉換到另一個路徑展開) 用途: 節省記憶體的使用

Example of RBFS Arad Sibiu Timisoara Zerind Arad Fagaras Oradea ∞ Arad 366 447 Sibiu Timisoara Zerind 449 393 447 415 Arad Fagaras Oradea Rimmicu 413 646 415 526 Craiova Pitesti Sibiu 526 417 553

Example of RBFS (cont.) Arad Sibiu Timisoara Zerind Arad Fagaras ∞ Arad 366 447 Sibiu Timisoara Zerind 449 393 447 417 Arad Fagaras Oradea Rimmicu 417 646 415 526 Sibiu Bucharest 450 591

Example of RBFS (cont.) Arad Sibiu Timisoara Zerind Arad Fagaras ∞ Arad 366 447 Sibiu Timisoara Zerind 449 393 447 447 Arad Fagaras Oradea Rimmicu 417 646 450 526 447 Craiova Pitesti Sibiu 526 417 553 Bucharest Craiova Rimmicu 418 615 607

SMA* Proceeds just like A* (處理過程像A*) Expanding the best leaf until memory is full (持續展開最佳的節點直到記憶體已經用完) Drops the worst leaf node (with highest f-value) 丟掉最糟的節點資料 Backs up the value of the forgotten node to its parent (將丟掉節點的花費值記在他們的父節點內)

隨堂作業 在地圖的問題中, 直線距離作為啟發函數可以達到很好的效果, 那在8 puzzles 的問題中, 你會如何定啟發函數(沒有標準答案, 盡量發揮…)