AIAug 15, 2024

Winning Snake: Design Choices in Multi-Shot ASP

arXiv:2408.08150v12 citationsh-index: 16
Originality Synthesis-oriented
AI Analysis

This work provides incremental, hands-on examples for developers and users in the answer set programming community to reuse logic program parts.

The paper tackles the problem of demonstrating multi-shot answer set programming techniques by implementing five different approaches to solve the Snake game, which involves an NP-hard Hamiltonian cycle problem, and empirically compares their performance.

Answer set programming is a well-understood and established problem-solving and knowledge representation paradigm. It has become more prominent amongst a wider audience due to its multiple applications in science and industry. The constant development of advanced programming and modeling techniques extends the toolset for developers and users regularly. This paper demonstrates different techniques to reuse logic program parts (multi-shot) by solving the arcade game snake. This game is particularly interesting because a victory can be assured by solving the underlying NP-hard problem of Hamiltonian Cycles. We will demonstrate five hands-on implementations in clingo and compare their performance in an empirical evaluation. In addition, our implementation utilizes clingraph to generate a simple yet informative image representation of the game's progress.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes