정태영

you select coord( 5, 8 )

     0  1  2  3  4  5  6  7  8  9 10
10:
 9:
 8:                 X  X
 7:              X     O     X
 6:           X  O  O  O  O  X
 5:           X  X  X  O     O
 4:              X  O  O  O  X  O
 3:                 X  X
 2:                    O
 1:
 0:

computer select coord( 10, 3 )
Computer Win!!
> bt
show stack stats…
black: (5,5) white: (6,5)
black: (5,3) white: (5,6)
black: (4,4) white: (7,4)
black: (4,7) white: (6,4)
black: (4,5) white: (4,6)
black: (3,5) white: (6,2)
black: (6,3) white: (6,6)
black: (3,6) white: (7,6)
black: (8,6) white: (6,7)
black: (6,8) white: (5,4)
black: (8,7) white: (9,4)
black: (8,4) white: (8,5)
black: (5,8) white: (10,3)
>

히힛 결국 졌습니다… 이걸로 대강 heuristic 은 완성했다 치고;;; 이제 UI 작업으로 넘어가도 되지 않을까 싶군요…

예전에 검색해서 찾은 오목 프로그램과 대전을 시켜볼려고 했더니… 바보같은 수를 두길래 DEBUG 플래그를 키고… leaf node 에서의 heuristic 과 바둑판 상태를 비교해보는 노가다를 해본 결과!! (1.3G 짜리 텍스트 파일을 봐야만 했어요 흑흑) 대각선 방향 중 하나를 두 번 체크하게 되는 버그를 발견했습니다… 그 버그를 잡고 나니 좀 더 똑똑하게 두는 듯 하군요…

또한 의미있는 자리가 더 이상 없을 경우… 최적이라고 판단되는 자리를 못찾게 되므로 에러가 발생할 듯 싶어 뗌빵용 코드도 넣었습니다… 이젠 정말 잘 두는군요… :)

UI 부분은 우선 winapi 로 만들고 있긴 한데 … 아직 소스트리에 추가하지는 않고 있습니다… 바둑판을 그리는 것과 마우스 클릭이벤트가 발생하면 어떤 좌표를 클릭한 것일지를 추정해 내는 부분 정도까지 만들어뒀는데 winapi 를 사용해서 무언가를 만드는 건 첨이긴 하지만… php-gd / gtk 등으로 비슷한 작업들을 많이 해봤기 때문에 쉽게쉽게 넘어가고 있는 듯 합니다…

한 일주일 정도 술을 줄이고 천천히 작업하고 나면… 윈도우용 GUI 버젼이 나올 수 있을 거 같은데… “어떤어떤 작업을 할 게 있는데 어디까지 했다…” 정도를 관리해주는 툴이 있으면 좋을 거 같다는 생각이 살살 밀려오는군요…

정태영

토요일인데 불러주는 사람도 없고… 방학한 지 한 달이 다 되가는데 뭔가 시작은 해야되겠다 싶어서 오목 코드를 정리하고 있습니다.

시험 기간인데다가 마감 3 일 전에 시작해서 날림으로 만든 코드라 역시 대빵 지저분합니다… 네이밍도 별로 맘에 안들고 해서 게임 룰과 관련된 함수들은 다 omok_blahblah 형식으로 바꿨고… 일부 몇 가지 함수를 재작성 하고 있습니다… (누가 이겼는지 체크하는 함수와… 어떤 상태에서의 평가값을 리턴하는 함수를 다시 깔끔하게 만드는게 최우선 목표입니다.)

UI / game rule 을 거의 분리했다고 생각하긴 하는데… 역시나 저 아님 못알아볼 지도 모르겠군요 -_- 몇 가지 DEFINE 값을 안넣어준게 있고… 테스트 없이 마구잡이로 고친 담에 commit 해 놓은 상태라 컴파일도 안될 듯 싶군요.. 하..하하..하하하

뭐 하튼 관심있으신 분은 http://svn.unfix.net 에서 five-in-row 를 클릭하시고 구경을 하시면 되겠습니다… 그나저나 UI 를 console / gtk+ 등으로 선택가능하게 만드려면 역시나 autotool 을 익혀야 할 지도 모르겠군요… winapi 나 MFC 로 포팅하는게 첫번째 과제이기는 하지만요…

하튼 방학 끝나기 전에 얼렁 완성을 하고 이걸로 졸업할 수 있단 얘기를 듣고 나면 -_-;; 라이센스를 정해서 오픈소스로 풀던지 할까 싶습니다.. 하하..하하핫..