Sokoban

A Sokoban puzzle being solved.

Sokoban (倉庫番, sōko-ban, "warehouse keeper") is a type of puzzle video game, in which the player pushes boxes or crates around in a warehouse, trying to get them to storage locations.

Sokoban was created in 1981 by Hiroyuki Imabayashi, and published in December 1982 by Thinking Rabbit, a software house based in Takarazuka, Japan.

Rules

The game is played on a board of squares, where each square is a floor or a wall. Some floor squares contain boxes, and some floor squares are marked as storage locations.

The player is confined to the board, and may move horizontally or vertically onto empty squares (never through walls or boxes). The player can also move into a box, which pushes it into the square beyond. Boxes may not be pushed into other boxes or walls, and they cannot be pulled. The number of boxes is equal to the number of storage locations. The puzzle is solved when all boxes are at storage locations.

Selected official Sokoban releases 1982-2016

Year Title Country Platform Publisher
1982 Sokoban Japan NEC PC-8801 Thinking Rabbit
1984 Sokoban 2 Japan NEC PC-8801 Thinking Rabbit
1988 Soko-Ban US IBM-PC and compatibles Spectrum HoloByte
1989 Soko-ban Perfect Japan NEC PC-9801 Thinking Rabbit
1991 Soko-ban Revenge Japan NEC PC-9801 Thinking Rabbit
2016 Sokoban Touch Japan, US Android and Apple iOS Thinking Rabbit

In 1988 Sokoban was published in US by Spectrum HoloByte as Soko-Ban for the IBM-PC and compatible computers, Commodore 64, and Apple II series. (The game title screen text "Copyright 1984 ASCII Corp." is a reference to copyrights, not the publishing date.) A review in Computer Gaming World praised the game for being "pure and simple, very playable and mentally challenging", citing its addictive qualities.[1] It was also reviewed in Dragon giving it 4½ out of 5 stars.[2] A version of Sokoban for the Atari Jaguar was also in development but never released.[3]

Reception

Sokoban was a hit in Japan, and had sold over 400,000 units in that country by the time Spectrum HoloByte imported it to the United States.[4]

Implementations of Sokoban

Implementations of Sokoban have been written for numerous computer platforms, including almost all home computer and personal computer systems. Versions also exist for video game consoles, mobile phones, graphic calculators and digital cameras.

Scientific research on Sokoban

Sokoban can be studied using the theory of computational complexity. The problem of solving Sokoban puzzles has been proven to be NP-hard.[5] Further work showed that it was significantly more difficult than NP problems; it is PSPACE-complete.[6] This is also interesting for artificial intelligence researchers, because solving Sokoban can be compared to the automated planning that needs to be done by a robot that moves boxes in a warehouse.

Sokoban is difficult not only due to its branching factor (which is comparable to chess), but also its enormous search tree depth; some levels can be extended indefinitely, with each iteration requiring an exponentially growing number of moves and pushes.[7] Skilled human players rely mostly on heuristics; they are usually able to quickly discard futile or redundant lines of play, and recognize patterns and subgoals, drastically cutting down on the amount of search.

Some Sokoban puzzles can be solved automatically by using a single-agent search algorithm, such as IDA*, enhanced by several techniques which make use of domain-specific knowledge.[8] This is the method used by Rolling Stone,[9] a Sokoban solver developed by the University of Alberta GAMES Group. The more complex Sokoban levels are, however, out of reach even for the best automated solvers.[10]

Sokoban variants

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

Alternative tilings: In the standard game, the mazes are laid out on a square grid. Several variants apply the rules of Sokoban to mazes laid out on other tilings. Hexoban uses regular hexagons and Trioban uses equilateral triangles.

Multiple pushers: In the variants Multiban and Interlock the player can control multiple characters.

Alternative goals: Several variants adjust the requirements for completing a level. For example, in Block-o-Mania the boxes have different colours, and the goal is to push them onto squares with matching colours. Sokomind Plus implements a similar idea, with boxes and target squares uniquely numbered. In Interlock and Sokolor, the boxes also have different colours, but the goal is to move them so that similarly coloured boxes are adjacent. In CyberBox, each level has a designated exit square, and the goal is to reach that exit. In a variant called Beanstalk, the elements of the level must be pushed onto the goal in a fixed sequence.

Additional game elements: Push Crate, Sokonex, Xsok, Cyberbox and Block-o-Mania all add new elements to the basic puzzle. Examples include holes, teleports, moving blocks and one-way passages.

Character actions: In Pukoban, the character can pull boxes in addition to pushing them.

Destructible walls: The early Sokoban (1982) (NEC PC-8801) game featured levels with destructible walls. In order to solve these levels, the player had to make some of the destructible wall elements disappear by walking up to the wall and push it from a certain side.

Unwalkable targets: Some variants make empty target tiles unwalkable, only becoming walkable when occupied by a crate. This is common for Sokoban-type levels in LaserTank and Chip's Challenge.

Reverse mode: The player solves the puzzle backwards, from the end to the initial position by pulling instead of pushing boxes. Standard Sokoban puzzles can be played in reverse mode, and the reverse-mode solutions can be converted to solutions for the standard-mode puzzles. Therefore, reverse mode can also be instrumental in solving standard Sokoban puzzles.

See also

References

  1. Wagner, Roy (May 1988). "Puzzling Encounters". Computer Gaming World (47): 42–43.
  2. Lesser, Hartley; Lesser, Patricia; Lesser, Kirk (April 1988). "The Role of Computers". Dragon (132): 80–85.
  3. Dragon, Lost (July 5, 2017). "The Ultimate Jaguar Unreleased/Beta/Source/Dev Master List! - Page 5". atari.io. Retrieved 2018-09-22.
  4. Low, Lafe (November 1988). "News Line; Made in Japan". inCider (43). 14, 15.
  5. M. Fryers and M.T. Greene (1995). "Sokoban". Eureka (54).
  6. Joseph C. Culberson, Sokoban is PSPACE-complete. Technical Report TR 97-02, Dept. of Computing Science, University of Alberta, 1997. Also: https://webdocs.cs.ualberta.ca/~joe/TR/TR97-02.ps
  7. David Holland and Yaron Shoham, "Theoretical analysis on Picokosmos 17".
  8. Andreas Junghanns, Jonathan Schaeffer (2001) Sokoban: Enhancing general single-agent search methods using domain knowledge, Artificial Intelligence 129(1-2):219-251 (Special issue on heuristic search in artificial intelligence)
  9. Junghanns, Andreas; Schaeffer, Jonathan (1997). "Sokoban: A Challenging Single-Agent Search Problem" (PDF). In IJCAI Workshop on Using Games as an Experimental Testbed for AI Research. University of Alberta. pp. 27–36.
  10. "Solver Statistics - Sokoban Wiki". Retrieved 8 February 2013.
  • Official Sokoban site (in Japanese)
  • The University of Alberta Sokoban page
  • Virkkala, Timo (2011). Solving Sokoban (PDF) (Master's Thesis). University of Helsinki. Retrieved 24 September 2014.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.