# 체스엔진을 처음부터 만들어 보기

> Clean Markdown view of GeekNews topic #6915. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=6915](https://news.hada.io/topic?id=6915)
- GeekNews Markdown: [https://news.hada.io/topic/6915.md](https://news.hada.io/topic/6915.md)
- Type: news
- Author: [xguru](https://news.hada.io/@xguru)
- Published: 2022-07-06T09:37:42+09:00
- Updated: 2022-07-06T09:37:42+09:00
- Original source: [chessengines.org](https://www.chessengines.org/)
- Points: 25
- Comments: 1

## Topic Body

- Chess.js(이동 및 검증) 와 Chessboard.js(시각화) 를 이용   
1. 랜덤 이동하기 : Chess.js가 이동 가능한 모든 수를 배열로 주면, 거기서 랜덤 선택   
2. 상대말을 잡는 수만 골라서 그중에서 선택하기(없으면 랜덤)  
3. 체스 끝나고 생성되는 PGN(Portable Game Notation)으로 성능 평가하기 (Chess.com 같은데서 제공)  
4. FEN(Forsyth-Edwards Notation) 이해하기  
5. minimization-maximization 알고리듬 이해 및 구현하기   
6. Horizon Issue 해결하기 : "quiescence search"  
7. "alpha-beta pruning" 으로 빠르게 만들기   
8. "iterative deepening"   
9. transposition/hashing table 만들기

## Comments



### Comment 11135

- Author: xguru
- Created: 2022-07-06T09:37:48+09:00
- Points: 1

[Chess Programming Wiki](https://www.chessprogramming.org/Main_Page)
