Sokoban

Bách khoa toàn thư mở Wikipedia
Bước tới điều hướng Bước tới tìm kiếm
Một lời giải đố Sokoban.
Một bài đố trong Sokoban YASC. Có 15 khối vuông cần được đẩy về đích.

Sokoban (倉庫番 (Thương Khố Phiên) Sōkoban?)trò chơi dạng câu đố trong đó người chơi phải đẩy một số khối vuông vượt qua chướng ngại vật để đến đích.

Cách chơi[sửa | sửa mã nguồn]

Trò chơi có dạng bảng ô vuông. Có một số khối vuông được đẩy đến đích (số ô đích đúng bằng số khối vuông). Chỉ có thể đẩy từng khối vuông một, và không thể kéo, cũng như không thể đẩy một dãy hai hay nhiều khối.

Khối vuông bị dính tường nếu như nó bị đẩy sát vào tường mà hai bên tường đều là góc. Vì không thể kéo khối lại được nên coi như khối này bị mất, nó không thể được đưa đến đích trừ phi đích nằm đúng trên cạnh tường đó. Dính tường là một trường hợp cần tránh khi chơi.

Trên máy tính[sửa | sửa mã nguồn]

Sokoban YASC (Yet Another Sokoban Clone)[1] là một bản phần mềm nguồn mở của trò chơi này, chạy trên Windows. YASC có nhiều tính năng cho người chơi như: lưu lại ván đang chơi giữa chừng, hoãn lại các nước đi sai, thông báo khi không có đường đi, v.v...

Nghiên cứu khoa học[sửa | sửa mã nguồn]

Sokoban có thể nghiên cứu bằng Lý thuyết độ phức tạp tính toán. Bài toán giải trò chơi Sokoban puzzles lúc đầu được chứng minh là NP-khó.[1][2] Sau nhiều nghiên cứu, bài toán được cho là cực khó so với các bài toán NP khác; nó là PSPACE-đầy đủ.[3] Điều này có lợi cho nghiên cứu trí tuệ nhân tạo (AI) bởi giải bài toán Sokoban có thể được xem như là việc tự động lập kế hoạch được yêu cầu bởi robot tự hoạt động.

Sokoban khó giải không chỉ vì hệ số rẽ nhánh của nó lớn, mà còn vì độ sâu của cây tìm kiếm của nó. Một số loại màn chơi có thể được mở rộng vô hạn, với mỗi bước lặp tăng trưởng theo cấp số nhân cho mỗi bước đẩy và kéo.[4] Người chơi có kinh nghiệm dựa chủ yếu vào kỹ thuật tìm kiếm và thường nhanh chóng loại một lượng lớn các nước đi thừa hay nước đi sai lầm bằng việc phát hiện ra quy luật và đích phụ, do đó giảm lượng tìm kiếm đi một cách đáng kể.

Các biến thể khác[sửa | sửa mã nguồn]

Một số trò chơi khác được hình thành trên ý tưởng của Sokoban. Chẳng hạn Chip's Challenge, trong đó các khối có thể đẩy đến vị trí đích là nơi cần bắc cầu hoặc phá bom. Ngoài ra, chướng ngại vật trên đường đi còn có thể là những động vật cần phải tránh.

Tham khảo[sửa | sửa mã nguồn]

  1. ^ M. Fryers; M. T. Greene (1995). “Sokoban”. Eureka (54).
  2. ^ Dor, Dorit; Zwick, Uri (1999). “SOKOBAN and other motion planning problems”. Computational Geometry. 13 (4): 215–228. doi:10.1016/S0925-7721(99)00017-6. ISSN 0925-7721.
  3. ^ Joseph C. Culberson, Sokoban is PSPACE-complete (PS). Technical Report TR 97-02, Dept. of Computing Science, University of Alberta, 1997.
  4. ^ David Holland and Yaron Shoham, "Theoretical analysis on Picokosmos 17".