<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>The PyRat project :: Computer science</title>
    <link>https://info.cours.lecalvar.fr/sae-s6/s5/project/index.html</link>
    <description>Presentation &amp; objectives Welcome to the project page! The project will last all the semester, and will resolve around a software called PyRat.&#xA;In a few words, this software is a video game, in which you control a small rat in a maze. There are pieces of cheese at various places of the maze, that the rat wants to eat. In a first step, your goal is to help the rat eat all pieces of cheese.</description>
    <generator>Hugo</generator>
    <language>en</language>
    <atom:link href="https://info.cours.lecalvar.fr/sae-s6/s5/project/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Discover the project and the PyRat software</title>
      <link>https://info.cours.lecalvar.fr/sae-s6/s5/project/session1/index.html</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://info.cours.lecalvar.fr/sae-s6/s5/project/session1/index.html</guid>
      <description>Duration2h30 Presentation &amp; objectives In this session, you will discover the PyRat software, that will be used for the project. You will first be guided in its installation, and will then follow a short tutorial. In this tutorial, you will learn what a PyRat game is, how to start a game, and how to control a player in a game.&#xA;At the end of this session, you should have all the needed elements to start working on the project.</description>
    </item>
    <item>
      <title>Catch a single piece of cheese</title>
      <link>https://info.cours.lecalvar.fr/sae-s6/s5/project/session2/index.html</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://info.cours.lecalvar.fr/sae-s6/s5/project/session2/index.html</guid>
      <description>Duration2h30 + preparation Presentation &amp; objectives In this session, we start doing things more intelligently. We are going to learn about graphs, which are data structures that are practical to model a PyRat maze. Then, we will learn about paths on graphs, and study two algorithms that find such paths: the breadth-first search (BFS) algorithm, and the depth-first search (DFS) algorithm. These algorithms are called “traversals”, and will produce a routing table, that can be used to find paths from a cell to another.</description>
    </item>
    <item>
      <title>Catch a single piece of cheese... with mud</title>
      <link>https://info.cours.lecalvar.fr/sae-s6/s5/project/session3/index.html</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://info.cours.lecalvar.fr/sae-s6/s5/project/session3/index.html</guid>
      <description>Duration2h30 + preparation Presentation &amp; objectives In this session, we slightly increase the difficulty by introducing mud inside the maze. Two adjacent locations in the maze that are separated with mud require more than one unit of time to reach, and therefore cause the character to slow down. While the BFS algorithm seen in the previous session had the property to find the shortest path in an unweighted graph, this is not the case anymore.</description>
    </item>
    <item>
      <title>Catch multiple pieces of cheese</title>
      <link>https://info.cours.lecalvar.fr/sae-s6/s5/project/session4/index.html</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://info.cours.lecalvar.fr/sae-s6/s5/project/session4/index.html</guid>
      <description>Duration2h30 + preparation Presentation &amp; objectives In this session, we significantly increase the difficulty, by considering mazes with multiple pieces of cheese. The objective will be to catch them all, in a minimum number of turns. To do so, we will introduce a problem called the “Traveling Salesman Problem (or “Traveling Salesperson Problem”, TSP for short). We will see that this problem is very complex to solve, and that you cannot expect to do it in an acceptable time for large quantities of cheese.</description>
    </item>
    <item>
      <title>Catch multiple pieces of cheese... more efficiently</title>
      <link>https://info.cours.lecalvar.fr/sae-s6/s5/project/session5/index.html</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://info.cours.lecalvar.fr/sae-s6/s5/project/session5/index.html</guid>
      <description>Duration2h30 + preparation Presentation &amp; objectives In the previous session, you found out that catching all pieces of cheese in a minimum number of actions is a very hard problem to solve. An alternate approach is to use heuristics, i.e., approximate algorithms that will return a solution that is not optimal in general, but sufficiently close to optimal to be acceptable, and that can be computed in a low time.</description>
    </item>
    <item>
      <title>Challenge an opponent in a PyRat game</title>
      <link>https://info.cours.lecalvar.fr/sae-s6/s5/project/session6/index.html</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://info.cours.lecalvar.fr/sae-s6/s5/project/session6/index.html</guid>
      <description>Duration2h30 + preparation Presentation &amp; objectives In this session, we introduce an opponent in the maze. Your objective is to create a program that will win against it. To reach that goal, we present you a few notions of combinatorial game theory. This is just a possible direction to give you ideas, but you can choose any solution!&#xA;The notions above are covered by a few articles that you have to study before the class.</description>
    </item>
    <item>
      <title>The PyRat tournament</title>
      <link>https://info.cours.lecalvar.fr/sae-s6/s5/project/tournament/index.html</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://info.cours.lecalvar.fr/sae-s6/s5/project/tournament/index.html</guid>
      <description>Duration2h30 + preparation Presentation &amp; objectives After the final exam, there is a dedicated time slot for a PyRat tournament.&#xA;In this tournament, you will have to design a PyRat program to challenge an opponent. Through this course, you will learn how to gradually reach this objective. Then, the faster to get pieces of cheese wins the game!&#xA;This is an optional event, only made for you to have fun and challenge your friends.</description>
    </item>
  </channel>
</rss>