• 제목/요약/키워드: Sudoku solving

검색결과 7건 처리시간 0.034초

Sudoku 퍼즐의 구속조건만족문제 해법 (Solving Sudoku as Constraint Satisfaction Problem)

  • 이승원;최호진
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2006년도 추계학술발표대회
    • /
    • pp.55-58
    • /
    • 2006
  • This paper presents solving the Sudoku puzzle as a constraint satisfaction problem (CSP). After introducing the rules and characteristics of the puzzle, we formulate the puzzle as a CSP and develop various methods of solving the problem. Blind search, minimum remaining value (MRV) heuristic, and some advanced methods are investigated, and their algorithms are implemented in this undergraduate project. The performance comparisons of these methods are discussed in the paper.

  • PDF

유전 알고리즘을 이용한 스도쿠 퍼즐 생성 및 풀이 방법 (Applying Genetic Algorithm To Randomly Creating And Solving A Sudoku Puzzle)

  • 황윤찬
    • EDISON SW 활용 경진대회 논문집
    • /
    • 제4회(2015년)
    • /
    • pp.521-526
    • /
    • 2015
  • A Sudoku puzzle is a kind of magic square puzzle which requires a non-repeated series of numbers from 1 to 9 in each 9 rows and 9 columns. Furthermore it contains total of 9 small three-by-three matrices, which need non-repeated numbers from 1 to 9 as well. Therefore the total number of possible cases of Sudoku puzzle is finite, even though that of creating nine-by-nine square is exponentially great. Accordingly a certain set of way is need not only for solving the puzzle, but also creating a new one. In this study, the method for creating a Sudoku puzzle applying genetic algorithm is suggested and will be demonstrated. Also, it will be shown that a Sudoku puzzle can be solved by genetic algorithm.

  • PDF

스도쿠 풀이에서 욕심쟁이 기법과 가지치기를 이용한 완전이진트리 생성 기법 (A Method to Expand a Complete Binary Tree using Greedy Method and Pruning in Sudoku Problems)

  • 김태석;김종수
    • 한국멀티미디어학회논문지
    • /
    • 제20권4호
    • /
    • pp.696-703
    • /
    • 2017
  • In this paper, we show how to design based on solving Sudoku problem that is one of the NP-complete problems like Go. We show how to use greedy method which can minimize depth based on tree expansion and how to apply heuristic algorithm for pruning unnecessary branches. As a result of measuring the performance of the proposed method for solving of Sudoku problems, this method can reduce the number of function call required for solving compared with the method of heuristic algorithm or recursive method, also this method is able to reduce the 46~64 depth rather than simply expanding the tree and is able to pruning unnecessary branches. Therefore, we could see that it can reduce the number of leaf nodes required for the calculation to 6 to 34.

SAT 처리기를 위한 수도쿠 퍼즐의 최적화된 인코딩 (Optimized Encoding of Sudoku Puzzle for SAT Solvers)

  • 권기현
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제34권7호
    • /
    • pp.616-624
    • /
    • 2007
  • SAT을 이용해서 수도쿠 퍼즐을 풀기 위해서는 수도쿠를 SAT 처리기의 표준 입력 언어인 CNF 논리식으로 인코딩 해야 한다. 기존에 제시된 인코딩 알고리즘으로 크기가 큰 수도쿠를 인코딩하면 현재 SAT 처리기의 처리 수준을 넘을 정도로 많은 논리식이 생성된다. 본 논문에서는 크기가 큰 수도쿠를 다루기 위해서 수도쿠의 고정 셀을 이용하여 최적화된 CNF 논리식을 생성하는 방법을 제시한다. 고정 셀에 배정된 숫자는 불변이기 때문에 이를 이용해서 일부 변수의 값을 인코딩 단계에서 미리 결정할 수 있고, 이들 변수의 값을 이용해서 SAT 처리에 영향을 주지 않는 절과 리터럴을 인코딩 단계에서 제거할 수 있다. 다양한 크기의 수도쿠 퍼즐에 적용한 결과 기존 인코딩 알고리즘에 비해서 우수한 성능을 보였다.

유전 알고리즘을 이용한 스도쿠 퍼즐 생성 및 풀이 방법

  • 황윤찬
    • 한국CDE학회지
    • /
    • 제21권2호
    • /
    • pp.69-74
    • /
    • 2015
  • A Sudoku puzzle is a kind of magic square puzzle which requires a non-repeated series of numbers from 1 to 9 in each 9 rows and 9 columns. Furthermore it contains total of 9 small three-by-three matrices, which need non-repeated numbers from 1 to 9 as well. Therefore the total number of possible cases of Sudoku puzzle is finite, even though that of creating nine-by-nine square is exponentially great. Accordingly a certain set of way is need not only for solving the puzzle, but also creating a new one. In this study, the method for creating a Sudoku puzzle applying genetic algorithm is suggested and will be demonstrated. Also, it will be shown that a Sudoku puzzle can be solved by genetic algorithm.

  • PDF

수도쿠 퍼즐을 통해서 살펴본 SAT에서 전처리 효과 (Effect on Preprocessing in SAT with Sudoku Puzzle)

  • 권기현
    • 한국IT서비스학회지
    • /
    • 제7권2호
    • /
    • pp.127-135
    • /
    • 2008
  • The concept of preprocessing is widely used in various computer science area such as compiler and software engineering for the purpose of macro processing and optimization. In addition, preprocessing is also used in SAT solvers in order to eliminate redundant literals and clauses to speed up its solving time before searching the state space. However, there is an unexpected run-time error such as stack-overflow during this step, in case the size of a given set of clauses is huge which impedes SAT solvers. In this case, the preprocessing should be applied at the encoding time to optimize its size. In this paper this idea is applied to several Sudoku problems. As a result, significant improvements are obtained with respect to the number of variables and clauses as well as the solving time compared to the previous works.

수도쿠 풀이를 위한 새로운 SAT 인코딩 (A New SAT Encoding for Solving Sudoku)

  • 박준길;최진영
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2007년도 한국컴퓨터종합학술대회논문집 Vol.34 No.1 (B)
    • /
    • pp.487-492
    • /
    • 2007
  • 수도쿠를 푸는 것은 오락으로서 뿐 아니라 컴퓨터 계산 문제로서도 흥미롭다. 수도쿠는 minimal과 extended 인코딩을 통해 SAT로 변환되고, 탐색이 아닌 추론기술의 반복 적용을 통해 다항시간에 해를 찾을 수 있다. minimal과 extended 인코딩은 직관적이지만 고차 수도쿠($16\times16$ 이상)를 풀기에 충분하지 못하다. 이 논문에서는 extended 인코딩을 개선한 블록 인코딩을 제안한다. 블록 인코딩을 $16\times16$$25\times25$ 퍼즐 집합에 적용 했을 때 extended 인코딩에 비해 추론기술에 따라 1%에서 12% 더 많은 수의 퍼즐을 푸는 것을 실험을 통하여 보인다.

  • PDF