휴리스틱2 [인공지능원론] 3. 게임트리 📍1. 게임 프로그램✔️ 게임의 조건 1️⃣ 두 명의 경기자경기자들이 연합하는 경우는 다루지 않음 2️⃣ 제로썸 게임한 경기자의 승리는 다른 경기자의 패배. 협동적인 승리는 없음(e.g. 바둑, 체스) 3️⃣ 순차적 게임차례대로 수를 두는 게임만을 대상으로 함 ☑️Tic-Tac-Toe의 게임 트리 - 2인용 게임 - 두 경기자 MAX와 MIN - 항상 MAX가 먼저 수를 둔다고 가정 ✔️ Tic-Tac-Toe의 게임 트리의 크기 - 게임 보드는 3×3 크기 - 한 곳에 수를 놓으면 다른 사람이 놓을 수 있는 곳은 하나가 줄어듦➡️ 9×8×7×...×1 = 9! = 362,880하지만 대칭이나 반사를 제외하면 서로 다른 상태는 5478개뿐 📍2. 미니맥스 알고리즘 ✔️ 상대방이 항상 최선의 수를 .. 2025. 4. 14. [인공지능원론] 2. 탐색(Search) - (2) 📍1. BFS와 DFS 8-퍼즐 프로그램✔️ 게임 보드 표현class State: def __init__(self, board, goal, depth=0): self.board = board self.depth = depth self.goal = goal # i1과 i2를 교환하여서 새로운 상태를 반환한다. def get_new_board(self, i1, i2, depth): new_board = self.board[:] new_board[i1], new_board[i2] = new_board[i2], new_board[i1] return State(new_board, self.goal, depth) # 자식 노드를 확장하여서 리스트에 저장하여서 반환한다.. 2025. 4. 14. 이전 1 다음