Giter Site home page Giter Site logo

tiktactoe's Introduction

TIK Tac Toe

Teamprojekt im Wintersemester 2023/24 am Karlsruher Institut für Technologie (KIT)

Die App „TIK Tac Toe“ soll einen Beitrag für den sanften Einstieg in das Thema KI leisten. Schülerinnen und Schüler können mit wenigen Klicks ein regelbasiertes Expertensystem erkunden, das nach und nach das Spiel „Tic Tac Toe“ erlernt. Dabei können die Schülerinnen und Schüler die Entscheidungen des Expertensystems schrittweise nachvollziehen und nehmen durch die Auswahl einer Belohnungsstrategie selbst Einfluss auf das Lernverhalten des Systems. Sie lernen in diesem einfachen Setting das Konzept eines Brute-Force-Ansatzes sowie der Rückführung.

Das Produkt erlaubt einen Einsatz im Unterricht nach einer Heranführung durch die Lehrkraft. Wir gehen davon aus, dass den SuS die Hexapawn-Variante HER bereits bekannt ist. Im Webinterface von „TIK Tac Toe“ können die SuS den Entscheidungsbaum der KI erkunden, selbst gegen sie spielen oder zwei KIs gegeneinander trainieren lassen. Am Ende einer Lerneinheit haben die SuS das Konzept von Gewichtsfunktionen nachvollzogen und können diese als „Gedächtnis“ des Systems benennen, welches den Lernprozess abbildet.

Inhaltsverzeichnis

Infos zur Nutzung des Projektes

Das Projekt ist auf dem Server des Lehr-Lern-Labors der Fakultät für Informatik des KITs gehostet und auffindbar.

Nach dem Start des Programmes können im erscheinenden Bildschirm verschiedene (untrainierte) KIs oder menschliche Spieler ausgewählt und ein Spiel gestartet werden. Außerdem sind einige Infos zum Spielen des Spiels als "Was ist das hier?" Fenster vorzufinden. Im Menu am unteren Bildschirmrand kann zu anderen Bildschirmen gewechselt werden. Auf dem Bildschirm KIs können Statistiken einzelner KIs angezeigt werden, neue KIs erzeugt und bestehende KIs verändert oder zurückgesetzt werden. Im dritten Bildschirm (Einstellungen) finden sich Möglichkeiten den Ablauf des Spieles zu verkürzen und die Font der Website zu einem klassischeren Font abzuändern.
Nach Spielbeginn sind die Einstellungen weiterhin zu finden. Initial wird das Spielfeld und der Spielgraph angezeigt.
Nach Beenden eines Spiels können die KIs, die das Spiel gespielt haben, belohnt werden oder das Spiel ohne zu Belohnen beendet werden. Falls die Belohnungsoption gewählt wurde werden die Gewichte der KIs, welche sich geändert haben, durch eine grüne Farbe hervorgehoben.

Voraussetzungen

Um das Projekt aus dem Code zu kompilieren und auszuführen muss

installiert sein.

Empfohlenes IDE-Setup

VSCode + Volar (Vetur deaktivieren) + TypeScript Vue Plugin (Volar).

Die folgenden Befehle müssen im Unterordner project ausgeführt werden.

Projekt-Setup

npm install

Kompilieren für die Entwicklung

npm run dev

Unit Tests mit Vitest ausführen

npm run test:unit

Zusätzliche Informationen zur Testabdeckung

npm run coverage

Hosting auf Servern

Bauen für Produktion

Im Unterordner project kann

npm run build

ausgeführt werden, um das Projekt für die Produktion und das Laden auf einen Server zu bauen.

Lage der Dateien

Das gebaute Projekt, welches dann auf einen Server gelegt werden kann, liegt danach im 'dist' Ordner.

tiktactoe's People

Contributors

ludenne avatar joragon1234 avatar idlaviv avatar

Stargazers

Philipp avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.