반응형
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
| 29 | 30 | 31 |
Tags
- 커머스
- DevOps
- Playwright
- 회고
- 생성 패턴
- 디자인 패턴
- terraform
- PostgreSQL
- Rust
- 티스토리챌린지
- 지표
- amazon ecs
- AWS
- docker
- 14일 공부
- 논문 정리
- 구조 패턴
- 청첩장 모임
- 신혼 여행
- 경로 계획 알고리즘
- study
- Til
- 오블완
- 실용주의 프로그래머
- MAPF
- Go-lang
- github
- ssh
- AWS 비용 절감
- leetcode
Archives
- Today
- Total
밤 늦게까지 여는 카페
맨하튼/택시 거리(Manhattan/Taxi Distance)란? 본문
반응형
안녕하세요. 오늘은 A* 알고리즘에서 사용되는 기본적인 휴리스틱 알고리즘 중 하나인 맨하튼 거리 혹은 택시 거리에 대해서 공부하려고 합니다.
맨하튼 거리
맨하튼 거리는 두 점 간의 거리를 연결 상태(엣지)를 고려하여 측정하는 것입니다.
예를 들어볼까요?
2차원 좌표 평면계에서 (0, 0)부터 (1, 1)까지의 맨하튼 거리는 2입니다.
(0, 0)에서 (1, 1)로 갈 수 있는 최단 경로는 다음과 같기 때문입니다.
- (0, 0) -> (1, 0) -> (1, 1)
- (0, 0) -> (0, 1) -> (1, 1)
연결 상태?
여기서 맨하튼 거리를 (|x1-x2|, |y1-y2|)라고 하지 않고,
굳이 엣지라는 용어가 들어간 이유를 설명드리겠습니다.
위에서 예시로 들었던 2차원 좌표 평면계는 사실 모든 노드가 weight 1의 엣지로 4개의 노드와 연결된 그래프라고 생각할 수 있습니다.

이렇게 생각하면 맨하튼 거리를 설명할 때 체스판을 예시로 드는 것도 이해하기 쉬워집니다.
룩의 맨하튼 거리는 같은 수직선, 수평선 상에 위치하고 있는 노드끼리는 모두 길이 1의 엣지로 이어진 그래프에서의 최단 경로와 동일합니다.
그려보면 다음 그래프와 같은 형태를 띄게 됩니다.

비숍의 맨하튼 거리는 같은 대각선 상에 위치하고 있는 노드끼리는 모두 길이 1의 엣지로 이어진 그래프에서의 최단 경로와 동일합니다.
다음에도 Pathfinding 알고리즘을 공부하면서 흥미로운 휴리스틱 함수가 있다면 정리하도록 하겠습니다.
반응형
'알고리즘 > Path Finding' 카테고리의 다른 글
| Meta-agent CBS - CBS의 한계를 개선해보자! (1) (0) | 2023.01.08 |
|---|---|
| A* 알고리즘 - 경로 계획 알고리즘 공부한다면 기본이죠...? (0) | 2022.12.31 |
| FAR - Flow Annotation Replanning이 decoupled 에서는 꽤 먹어주는 것 같습니다! (2) | 2022.12.16 |
| HCA* - HA* 공부했으니 이제 Hirearchical Cooperative A* 공부해야죠! (0) | 2022.12.11 |
| Hirearchical A* - HCA 공부하는데 계속해서 언급되는 HA*를 모르겠어요 (0) | 2022.12.10 |