A* 알고리즘 보고 만들어봤더니 한 40move까지는 금방 나오는데 50move 넘어가면서부터 답 나오는데 엄청 오래걸림
https://puzzling.stackexchange.com/questions/24265/what-is-the-superflip-on-15-puzzle
이건 80move짜리 케이스인데 이런거까지 풀어내려면 대체 어떤 알고리즘을 써서 최적화해야되는건지 모르겠다
패턴 데이터베이스라는 개념이 있던데 그걸 써야하나?
아니면 맨하탄 거리를 쓰던가 혹은 맨하탄 거리 + 리니어 컨플릭트라고 해서 두개를 섞은걸 휴리스틱 스코어 매기는데 쓰던데..
참고해서 배우기 위해 IDA* 써서 만든 외국 개발자들 코드들 다운받아서 돌려봐도 위에 링크한 저 케이스만큼은 2분 지나도록 답이 안나오더라...
8-puzzle solver는 쉬운데 15-puzzle은 최적해 내는 코드 포기하고 그냥 어떻게든 풀어내는 코드를 짜보기라도 해야될듯 생각보다 심오하고 어려운 세계네요
근데 솔직히 내가 개못해서 그런거니까 여기 갤러들은 금방 만들어낼거 같다
어제부터 하고있는데, 지금까지 나온 문제중에 제일 난이도 높은거같다
근데 답이 금방 안나올 수도 있구나 ㅋㅋ 참고해야겠다
ㅈㅅ ㅠㅠ - dc App