UC Berkeley CS188 Intro to AI/[Pacman Project 1] Search 17

[Search_8] Suboptimal Search (1)

※ 이 글은 "UC Berkeley CS188 Intro to AI"의 "Project 1: Search"를 해결하는 과정을 정리한 글입니다. Suboptimal Search A* 탐색 알고리즘과 좋은 휴리스틱 함수를 사용했음에도 불구하고 때때로 모든 점을 지날 수 있는 최적의 경로를 찾는 것이 어려울 때가 있습니다. 이러한 경우에도 합리적인 좋은 경로를 빠르게 찾아야 합니다. 이번 과제에서는 팩맨이 항상 가장 가까운 점을 탐욕스럽게 먹게끔 코드를 구현해야 합니다. searchAgents.py 파일 안에 ClosestDotSearchAgent는 구현되어 있지만 가장 가까운 점으로 가는 길을 찾는 중요한 함수가 빠져있습니다. searchAgents.py 파일안에 있는 findPathToClosestDot ..

[Search_7] Eating All The Dots (1)

※ 이 글은 "UC Berkeley CS188 Intro to AI"의 "Project 1: Search"를 해결하는 과정을 정리한 글입니다. Eating All The Dots 이번에는 가능한 가장 적게 움직이면서 팩맨이 모든 음식을 먹을 수 있도록 만드는 어려운 난이도의 탐색 문제를 풀어야 합니다. 이를 위해서는 searchAgents.py 파일 안에 있는 FoodSearchProblem과 같이 음식을 먹을 수 있도록 하는 새로운 탐색 문제의 정의가 필요합니다. 가장 간단한 해결 방법은 모든 음식을 먹는 길을 정의하는 것입니다. 이번 과제에서는 유령이나 파워 알약 등을 고려하지 않고 오직 벽, 음식 그리고 팩맨의 위치 정보만 고려합니다. 만약 이전에 해결했었던 탐색 문제에서의 탐색 알고리즘을 정확하게..

[Search_6] Corners Problem: Heuristic (1)

※ 이 글은 "UC Berkeley CS188 Intro to AI"의 "Project 1: Search"를 해결하는 과정을 정리한 글입니다. Corners Problem: Heuristic 이번 문제는 A* 탐색에서 구현한 코드가 필요하기 때문에, 이번 문제를 풀기 전에 A* 탐색 문제를 먼저 수행하여야 합니다. cornerHerustic의 CornersProblem을 위해 단순하지 않으면서 일관적인 휴리스틱을 구현하십시오. - python pacman.py -l mediumCorners -p AStarCornersAgent -z 0.5 위의 AStarCornersAgent는 아래의 명령어의 단축 명령어이다. - python pacman.py -l mediumCorners -p SearchAgent -..

[Search_5] Finding All the Corners (1)

※ 이 글은 "UC Berkeley CS188 Intro to AI"의 "Project 1: Search"를 해결하는 과정을 정리한 글입니다. Finding All the Corners A* 탐색 알고리즘의 진정한 힘은 좀 더 도전적인 탐색 문제를 통하여 명확하게 드러날 것입니다. 이제 새로운 문제를 만들고 새로운 문제에 적용하기 위한 휴리스틱을 구상해야 할 시간입니다. corner mazes는 각 코너마다 4개의 점이 있습니다. 새로운 탐색 문제는 미로에서 모든 코너들을 지날 수 있는 최단 경로를 찾는 것입니다. tinyCorners와 같은 몇몇의 미로에서 확인할 수 있듯이, 가장 짧은 길은 항상 가장 가까운 음식으로 가는 길이 아닐 수 있음을 명심해야 할 것입니다. 참고로, tinyCorners에서 ..

[Search_4] A* search (1)

※ 이 글은 "UC Berkeley CS188 Intro to AI"의 "Project 1: Search"를 해결하는 과정을 정리한 글입니다. A* search search.py 파일 안에 있는 비어있는 aStarSearch 함수에 A* 탐색 알고리즘을 구현하십시오. A* 탐색 알고리즘은 휴리스틱 함수를 인수로 갖고 있습니다. 휴리스틱은 2가지 인수(탐색 문제에서의 state와 자기 자신에 관한 정보)를 갖고 있습니다. search.py 파일 안에 있는 nullHeuristic 휴리스틱 함수는 간단하게 구현한 예제입니다. 구현이 완료된 A* 탐색 알고리즘은 Manhattan Distance 휴리스틱을 사용하여 미로에서 길을 찾을 수도 있습니다.(searchAgents.py 에 이미 manhattanHeu..

반응형