A Sokoban puzzle being solved

Sokoban (倉庫番, Sōko-ban, lit.'warehouse keeper'[1]) is a puzzle video game in which the player pushes boxes around in a warehouse, trying to get them to storage locations. The game was designed in 1981 by Hiroyuki Imabayashi, and first published in December 1982.


The warehouse is depicted as a grid of squares, each one representing either a floor section or a wall section. Some floor squares contain boxes and some are marked as storage locations. The player, often represented as a worker character, can move one square at a time horizontally or vertically onto empty floor squares, but cannot pass through walls or boxes.

To move a box, the player walks up to it and pushes it to the square beyond. Boxes cannot be pushed to squares with walls or other boxes, and they cannot be pulled. The number of boxes matches the number of storage locations. The puzzle is solved when all boxes occupy the storage locations.

Challenges and Strategy

Progressing through the game often requires meticulous planning and strategic maneuvering. A single misstep, like pushing a box into a corner or blocking others, can create unsolvable scenarios, forcing the player to backtrack or restart the puzzle. Anticipating the consequences of each push, and considering the overall layout of the puzzle are crucial to avoid these deadlocks.

Selected official releases

Year Title Country Platform Publisher Media Notes
1982 Sokoban (倉庫番) Japan NEC PC-8801 Thinking Rabbit Cassette tape
1983 Sokoban [Extra Edition] (倉庫番[番外編][2][3]) Japan NEC PC-8801 PCマガジン Type-in program
1984 Sokoban 2 (倉庫番2) Japan NEC PC-8801 Thinking Rabbit Cassette tape
1986 Namida no Sokoban Special (涙の倉庫番スペシャル) Japan Famicom Disk System ASCII Corporation Floppy
1988 Soko-Ban US IBM PC, XT, and AT Spectrum HoloByte Floppy
1989 Soko-ban Perfect (倉庫番Perfect) Japan NEC PC-9801 Thinking Rabbit Floppy
1990 Boxyboy Japan, US Turbografx-16/PC Engine NEC HuCard
1990 Shove It! ...The Warehouse Game Japan, US Sega Genesis/Mega Drive Masaya Games ROM cartridge
1991 Soko-ban Revenge (倉庫番Revenge) Japan NEC PC-9801 Thinking Rabbit Floppy
2016 Sokoban Touch (倉庫番Touch) Japan, US Android and Apple iOS Thinking Rabbit Digital distribution
2018 Sokoban Smart (倉庫番スマート) Japan Windows Thinking Rabbit Digital distribution
2019 Minna No Sokoban (みんなの倉庫番) Japan Nintendo Switch and PlayStation 4 Unbalance Corporation Digital distribution
2021 The Sokoban US Nintendo Switch and PlayStation 4 Unbalance Corporation Digital distribution


Sokoban was created in 1981 by Hiroyuki Imabayashi.[4][5] The first commercial game was published in December 1982 by Thinking Rabbit, a software house based in Takarazuka, Japan. Sokoban was a hit in Japan, selling more than 400,000 copies before being released in the United States.[6] In 1988, Sokoban was published in US by Spectrum HoloByte for the IBM PC, Commodore 64, and Apple II as Soko-Ban.[7]


Implementations of Sokoban have been written for numerous computer platforms, including almost all home computer and personal computer systems. Different versions also exist for video game consoles, mobile phones, graphing calculators, digital cameras[8] and electronic organizers.

Scientific research

Sokoban has been studied using the theory of computational complexity. The computational problem of solving Sokoban puzzles was first shown to be NP-hard.[9][10] Further work proved it is also PSPACE-complete.[11][12]

Search for a solution to a Sokoban puzzle is difficult for computers due to the many possible legal pushes at each turn (branching factor) and the possibly long sequence of moves needed to reach a solution (search tree depth).[13][14] Even small puzzles can require lengthy solutions.[15]

The Sokoban game provides a challenging testbed for developing and evaluating planning techniques. [16][17] The first documented automated solver was Rolling Stone, developed at the University of Alberta. Its core principles laid the groundwork for many newer solvers. It employed a conventional search algorithm enhanced with domain-specific knowledge.[18] Festival, utilizing its FESS algorithm, was the first automatic solver to complete all 90 puzzles in the widely used XSokoban test suite.[19][20] However, even the best automated solvers cannot solve many of the more challenging puzzles that humans can solve with time and effort.[21][22]


Several puzzles can be considered variants of the original Sokoban game in the sense that they all make use of a controllable character pushing boxes around in a maze.

See also


  1. ^ Yoshio Murase; Hitoshi Matsubara; Yuzuru Hiraga (1996). Norman Foo; Randy Goebel (eds.). Automatic Making of Sokoban Problems. Springer Science & Business Media. p. 592. ISBN 978-3-540-61532-3.
  2. ^ "今回はこのゲームを開発した THINKING RABBIT さんにお願いして, 市販品とは別に10の倉庫をつくってもらいましたので" [This time, we asked THINKING RABBIT, who developed this game, to build 10 warehouses separately from commercial products]. PCマガジン (in Japanese). August 1983. pp. 52–56.
  3. ^ "題して『倉庫番』PCマガジン番外編 (このプログラムは, PC-8801/9801 で使えます)" [Titled "Sokoban" PC Magazine Extra Edition (this program can be used with PC-8801 / 9801)]. PCマガジン (in Japanese). August 1983. pp. 52–56.
  4. ^ "Thinking Rabbit - 1983 Developer Interview".
  5. ^ "My conversation with Mr Hiroyuki Imabayashi".
  6. ^ Lafe Low (November 1988). "News Line; Made in Japan". inCider. p. 14.
  7. ^ Austin Barr; Calvin Chung; Aaron Williams (2021). Block Dude Puzzles are NP-Hard (and the Rugs Really Tie the Reductions Together) (PDF). CCCG (2021). p. 1.
  8. ^ "CHDK 1.5 User Manual". CHDK Wiki. Retrieved 2023-07-13.
  9. ^ Michael Fryers; Michael Greene (1995). "Sokoban" (PDF). Eureka (54): 25–32.
  10. ^ Dorit Dor; Uri Zwick (1999). "SOKOBAN and other motion planning problems". Computational Geometry. 13 (4): 215–228. doi:10.1016/S0925-7721(99)00017-6.
  11. ^ Joseph C. Culberson (1997). "Sokoban is PSPACE-complete" (PDF). Technical Report TR 97-02, Dept. of Computing Science, University of Alberta.
  12. ^ Robert Aubrey Hearn (2006). Games, Puzzles, and Computation (PDF) (PhD thesis). Massachusetts Institute of Technology. pp. 98–100.
  13. ^ Andreas Junghanns; Jonathan Schaeffer (2001). Sokoban: Improving the Search with Relevance Cuts (PDF). p. 5. doi:10.1016/S0304-3975(00)00080-3.
  14. ^ Yaron Shoham (2020). "FESS Draft" (PDF). p. 3.
  15. ^ David Holland; Yaron Shoham. "Theoretical analysis on Picokosmos 17". Archived from the original on 2016-06-07.
  16. ^ Andreas Junghanns; Jonathan Schaeffer (1998). Sokoban: Evaluating standard single-agent search techniques in the presence of deadlock (PDF). p. 4.
  17. ^ Timo Virkkala (2011). Solving Sokoban (PDF) (MSc thesis). University of Helsinki. p. 1.
  18. ^ Andreas Junghanns; Jonathan Schaeffer (2001). "Sokoban: Enhancing general single-agent search methods using domain knowledge". Artificial Intelligence. 129 (1–2): 219–251. doi:10.1016/S0004-3702(01)00109-6.
  19. ^ Yaron Shoham; Jonathan Shaeffer (2020). The FESS Algorithm: A Feature Based Approach to Single-Agent Search (PDF). 2020 IEEE Conference on Games (CoG). Osaka, Japan: IEEE. doi:10.1109/CoG47356.2020.9231929.
  20. ^ Yaron Shoham (2020). "FESS presentation at the CoG conference (17.5 minutes)" (video). archive.org.
  21. ^ "Let's Logic Bots Statistics" (PDF). Retrieved 19 April 2024.
  22. ^ "Sokoban Solver Statistics - Large Test Suite". Retrieved 14 April 2024.
  23. ^ Frank Takes (2008). "Sokoban: Reversed Solving" (PDF).