Skip to content
Tuana Durmayüksel edited this page Jan 22, 2025 · 11 revisions

Welcome to the Schnapsen Wiki for Project Intelligent Systems!

This Wiki serves as the central repository for all information, resources, and guidance related to the Schnapsen project in the Project Intelligent Systems course. Here, you'll find essential materials to help you navigate through the course, from setting up the platform to building and evaluating intelligent agents.

The Wiki is divided into two primary sections:

  1. The first part focuses on the individual coding assignment, where you'll implement the logic for a deterministic heuristic bot.
  2. The second part guides you in creating your own bot and exploring research questions, experiment design, and methodologies.

If you encounter any challenges, this Wiki is here to help you find solutions. For unresolved issues, feel free to reach out to one of the course's TAs.


Getting Started

To begin, it's essential to develop a solid understanding of the Schnapsen game, as all course tasks are built around it. If you haven’t taken the Intelligent Systems course or need a refresher on the rules, please visit the following resource to learn the game's rules:
Schnapsen Game Rules


First Part: Individual Coding Assignment

It’s time to dive into coding! The Individual Coding Assignment is designed to help you familiarize yourself with the platform and strengthen your programming skills. In this assignment, you’ll implement the logic for a deterministic heuristic bot to play the Schnapsen card game.

The detailed instructions for this assignment are available on Canvas, and each student will receive their own personalized guidelines. This section provides step-by-step explanations and links to useful resources:

Step-by-Step Guide:

  1. Getting Started with the Schnapsen Platform
    Refer to the page Getting Started with the Schnapsen Platform to set up your environment.

  2. Verify your environment setup
    Run the following command to ensure your environment is correctly activated. This will check and verify the expected output against the actual result, helping you confirm if your implementation is correct.
    Remember to replace <student number> with your actual 7-digit student number:

    python src/schnapsen_assignment/student/check_implementation.py check --id <student number>
  3. Download your individual stub code

    • Download your individual stub code based on your student number.
    • Ensure the file name remains bot.py.
    • Place the file into the src/schnapsen_assignment/student/ folder within your Integrated Development Environment (IDE).
  4. Implement the missing parts of the stub code

    • If you encounter issues, refer to the following resources for guidance:

Second Part: Project (Creating a Bot and Experiment Design)

In the second part of the course, you will develop your own bot and formulate a research question to guide your experiments. This section of the Wiki will serve as a comprehensive guide, from brainstorming research questions to designing and conducting experiments.

Step-by-Step Guide:

  1. Come up with a good research question.
    Refer to the page Research Question to understand the required complexity and see examples.

  2. Start the implementation step.
    Begin by cloning the platform from the Schnapsen GitHub Page, just as we did in the individual assignment. If you encounter issues, refer to the page Getting Started with the Schnapsen Platform for instructions on how to clone the GitHub repository. Remember that this is a different repository, so update the URL accordingly. Also for more details go to the page Getting Started with the Enviroment

  3. Develop your own bot according to your research question.
    To learn how to create and play with a new bot, visit the page How to create a new bot and play with it?. Additionally, explore the examples and resources in the src/schnapsen/bots directory to gain insights and guidance on building your bot effectively.

  4. Implement the bot

    • If you encounter issues, refer to the following resources for guidance:
  5. The report Your research report should focus on formulating a clear and concise research question, conducting thorough research to answer it, and presenting your findings in a well-structured manner. The majority of your effort should be dedicated to designing and implementing experiments, as well as documenting your research process and results effectively. For detailed instructions and formatting requirements, refer to the Report Guidelines page.


Troubleshooting

If you encounter any issues, check the Troubleshooting section of the Wiki for solutions to common challenges, such as ensuring the correct Python version and environment setup: