Latest / Coding Buddies | Tech & Dev-Mindset / Unser KI Wettbewerb - Eigene KIs in Games
Transcript
- 0:00Und dann so OK. Wie sieht das aus?
- 0:01Na ja, Mario läuft jetzt absolut wie auf der World, das schnell
- 0:06mal raus. Dein Podcast wohnt um
- 0:10Softwareentwicklung und aktueller Technews.
- 0:12Herzlich Willkommen. Was?
- 0:25Halli Hallo und herzlich Willkommen zur neuen Folge des
- 0:28Coding Bodys Podcasts. Schön, dass ihr wieder
- 0:30eingeschaltet hast. Damit sind wir alle 3 wieder
- 0:32zusammen. Meine Wenigkeit Tino, du liebe
- 0:35Zuhörerin, lieber Zuhörer und natürlich auch wieder mal an
- 0:38meiner Seite der fantastische Fabi Moin Fabi, Grüße dich Hey
- 0:42Tino Grüße dich was geht ab? Was geht denn ab?
- 0:47Was geht denn ab? Sag was geht ab?
- 0:50Neue Podcast Folge Neue Podcast Folge Genau und ich habe auch
- 0:53ein spannendes Thema mitgebracht, aber lass kurz noch
- 0:56checken ob alles startklar ist. Hast du einen Kaffee?
- 0:59Ich. Habe einen Kaffee gut.
- 1:01Ich auch. Der ist zwar nicht mehr ganz so
- 1:02viel drin, weil wir jetzt uns ein bisschen verquatscht haben
- 1:04im Vorfeld, aber es muss reichen.
- 1:06Ich denke, das wird so eine 5 Minuten folge.
- 1:10Sie ist alle entschuldigt mich kurz.
- 1:14Und ich würd sagen, deswegen lass uns keine Zeit verlieren,
- 1:17bevor der Kaffee wirklich schon alles bevor das Thema losgeht.
- 1:19Ich hab n Thema mitgebracht, ich hoffe du hast da Bock drauf, ich
- 1:22werde es mal ganz kurz erläutern.
- 1:24Und zwar haben wir letzte Woche. Unseren KI Wettbewerb gestartet.
- 1:30Dazu möchte ich kurz ausholen. Liebe zuhören lieber Zuhörer,
- 1:34falls du nicht weißt wovon ich rede.
- 1:36Wir haben ja auf Instagram einen Grundlagenkurs gemacht, um so
- 1:40den Einstieg in die Softwareentwicklung zu
- 1:42erleichtern und so die Basics richtig zu vermitteln.
- 1:45Das ganze Jahr in Java und Python.
- 1:48Und haben uns gedacht, Na ja, gut, jetzt wo der Kurs zu Ende
- 1:51ist, muss es ja oder wäre es cool, wenn es noch so ne Art
- 1:54abschlussaufgabe gibt, wo man denn das Gelernte anwenden kann
- 1:58und da haben wir fabi uns ja entschieden dafür ein Spiel zu
- 2:03entwickeln und zwar ein einfaches 4 gewinnt, weil wir
- 2:07dachten, das müsste eigentlich auch jeder so aus der Jugend
- 2:09oder Kindheit kennen, wo man so die Steine von oben reinschmeißt
- 2:13und quasi gegen einen anderen spielt und gewonnen hat, wenn 4
- 2:16in einer Reihe übereinander oder diagonal zusammenkommen,
- 2:19richtig? Das sind so die internationalen,
- 2:22europaweiten Standard regeln. So spielt man das so.
- 2:27Spielt man das? Alles andere, sind nicht die
- 2:29offiziellen Regeln und genau, und da haben wir eine
- 2:33Schnittstelle eingebaut, dass man ein Bot KI entwickeln kann,
- 2:38die quasi für einen spielt, nach einem Algorithmus, den ein Mann
- 2:42entworfen hat, und das ist die Abschlussaufgabe und das Ganze
- 2:45haben wir jetzt letzte Woche gelauncht, das heißt, wir haben.
- 2:49Den Code zur Verfügung gestellt mit dem Spiel das Ganze auf
- 2:53einem Repository hochgeladen und ja, man kann das jetzt quasi
- 2:57sich ziehen, auschecken und die KI für den Spieler entwickeln.
- 3:01Genau also da findet man auch noch genauere Informationen,
- 3:05auch zum Beispiel bei Instagram oder auch auf unserer Homepage.
- 3:09Genau www.codingbuddies.de mal kurz angemerkt genau, ist aber.
- 3:13Auch natürlich in den Shownotes dann drin.
- 3:17Genau und also der Kurs ist ja im Endeffekt sag ich jetzt mal
- 3:21eine Komposition aus Posts zu entsprechenden Themen, die wir
- 3:24ausgewählt haben für den Grundkurs genau, und wenn jetzt
- 3:27zum Beispiel jemand sagt, Hey, das ist ja irgendwie cool.
- 3:30Dann guckt doch einfach mal rein.
- 3:32Muss man allerdings natürlich jetzt mittlerweile ein bisschen
- 3:34im Feed von uns runter scrollen. Genau das ist schon ne Menge
- 3:38zusammengekommen über die letzten Monate.
- 3:42Ja zu dem Wettbewerb noch ganz kurz, der läuft bis zum 31.3.
- 3:47Also falls du jetzt, liebe Zuhörer, lieber Zuhörer, Bock
- 3:49bekommen hast, quasi eine KI für dieses Spiel zu entwickeln und
- 3:54gegen andere aus der Community anzutreten, das heißt gegen
- 3:57deren KIS, wir werden nach dem 31 03, das ist der einsendestop
- 4:02du kannst dich auf eine Plattform bei uns melden und uns
- 4:04deinen Code zukommen lassen, werden wir ein Turnier live auf
- 4:08Twitch austragen, nicht wahr, Fabi, das wird richtig geil und
- 4:12dann werden wir live quasi das Turnier.
- 4:15Durchführen und den Gewinner ermitteln.
- 4:17Genau. Also es gibt auch auf jeden Fall
- 4:19was zu gewinnen. Für alle, die sozusagen nicht
- 4:23den ersten Platz belegen, gibt es natürlich auch was zu
- 4:25gewinnen und zwar ne jede Menge Erfahrung, weil das ist ja im
- 4:28Endeffekt eigentlich so, dass Hauptaugenschlag.
- 4:32Jetzt ein bisschen wie der Trostpreis, aber das ist
- 4:35natürlich absolut der Grund dahinter.
- 4:36Da. Klingt immer total abgedroschen,
- 4:39aber im Endeffekt soll es ja wirklich dazu dienen, was zu
- 4:43lernen, weil wir sagen ja immer, Übung macht den Meister
- 4:46beziehungsweise die Meisterin, um das Ganze auch komplett zu
- 4:50machen und das ist halt wichtig. Und aus den Gründen haben wir
- 4:57uns überlegt, OK, was könnten wir denn genau machen und gerade
- 5:01solche Spiele zum Beispiel sind halt eben natürlich.
- 5:05Sage ich jetzt mal durch etwas mehr Spaß als irgendwas.
- 5:11Ganz stumpfes, Langweiliges, sozusagen immer ein bisschen
- 5:14bisschen spaßiger. Einfach auch dieses diesen
- 5:16Lerneffekt zu haben. Das heißt, natürlich soll hier
- 5:19der Spaß im Vordergrund stehen und nicht irgendwie.
- 5:24Weiß ich nicht. Die Angst, dass man vor anderen
- 5:26verliert, sondern einfach, man soll da einfach Spaß haben,
- 5:29einfach probieren, auch wenn man sich zum Beispiel sagt, bei
- 5:31Instagram hatten wir auch so eine kleine Umfrage gemacht, da
- 5:34haben auch einige gesagt, dass sie sich vielleicht noch nicht
- 5:36so richtig bereit dazu fühlen, so einen Bot zu schreiben.
- 5:41Das Ganze zielt darauf ab, dass man theoretisch mit dem Wissen
- 5:44von dem Grundkurs es schafft, einen solchen Bot zu schreiben,
- 5:48der für einen das Spiel 4 gewinnt, spielen kann.
- 5:51Und es geht im Endeffekt darum, genau eine Funktion zu
- 5:54implementieren. Und.
- 5:59Quasi Platz für. Man kann natürlich eigene
- 6:01Funktionen noch dazu schreiben, ist ja klar, aber im Großen und
- 6:05Ganzen geht es genau darum, eine Funktion zu implementieren.
- 6:07Alles drumherum ist quasi da und muss nicht gemacht werden.
- 6:11Genau und wie gesagt, auf den auf unserer Website gibt es noch
- 6:15weitere Infos dazu. Auch Hilfestellungen, wie man
- 6:18das Ganze startet, welche Funktion zu implementieren ist
- 6:22und ja wie man quasi ins Doing kommt, denn diesen Algorithmus
- 6:26zu entwerfen und was ich da nochmal ergänzen möchte oder was
- 6:29ich halt auch cool daran finde ist, es ist halt eine definierte
- 6:32Aufgabe, es ist klar, was zu tun ist.
- 6:35Man kann sich vorstellen. Was zu tun ist, also quasi, was
- 6:39das Ziel ist und was sich dabei immer ganz cool findet, ist,
- 6:43dass du ein sofortiges Feedback bekommst, weil du kannst ja,
- 6:46denn das Spiel mit deinem Bot starten und siehst ja, was deine
- 6:51Ki oder dein Bot tut und das finde ich halt irgendwie ganz
- 6:54cool. Du kriegst halt so ein Instant
- 6:55Feedback und es macht halt Spaß und dann kannst du ja auch gegen
- 6:58dich selbst spielen, also quasi gegen deinen Board und so das.
- 7:01Das macht auf jeden Fall Spaß, denn daran rumzuentwickeln und
- 7:04sich zu überlegen, wie könnte denn so eine Strategie so n
- 7:06Algorithmus aussehen? Wir haben ja auch n kleinen, wir
- 7:10haben ja auch n Client entwickelt, auch in dem
- 7:13entsprechenden Repo platziert, dass man auch die Möglichkeit
- 7:16hat. Manuell zu spielen, das heißt,
- 7:18man kann theoretisch sagen, also ich könnt mich jetzt hinstellen
- 7:21und sagen, OK, ich schreib jetzt meine eigenen, meinen eigenen
- 7:23Bot, der sozusagen dann das Spiel spielt und ich persönlich
- 7:26trete gegen ihn an und einfach rum, zum Beispiel mal zu gucken.
- 7:31Wäre es besser ich oder ich? Ich oder ich, meine KI oder ich?
- 7:36Genau. Ja, so viel mal n bisschen
- 7:39Eigenwerbung dazu. Also wie gesagt Check das gerne
- 7:42mal aus Liebe zuhören lieber Zuhörer und nehm auf jeden Fall
- 7:44dran Teil, das wird n Riesenspaß.
- 7:48Was aber so n bisschen das Thema ist, wir haben quasi diesen
- 7:52Wettbewerb und ich würde halt gern mal noch mal so n bisschen
- 7:54motivieren, wie man das Ganze angehen könnte.
- 7:57Vielleicht auch so ein 2 Gedanken Richtung
- 8:00Implementierung bringt. Vorweg würde ich aber gerne noch
- 8:04mal n bisschen in die Vergangenheit mit dir reisen,
- 8:06weil es gibt ja n Grund, warum wir uns für n Spiel entschieden
- 8:08haben. Und zwar hatten wir das haben
- 8:11wir glaub ich im Podcast auch schon mal erwähnt oder
- 8:13zumindestens in Twitch haben wir schon mal darüber gesprochen.
- 8:16Also auf Twitch quasi in der Live Session.
- 8:19Und zwar hatten wir damals im zweiten Semester ja auch eine
- 8:23Programmieraufgabe, wo wir eine KI für ein Mario Ableger
- 8:28schreiben sollten, das heißt auch quasi.
- 8:32Ein Bot, der für uns Mario steuert und hoffentlich Heiler
- 8:35durchs Level bringt. Und genau diese genannten
- 8:39Punkte, man kriegt sofort n Feedback, man sieht wie er sich
- 8:41verhält. Das waren halt damals auch
- 8:44Punkte, die ich halt total spaßig daran fand.
- 8:46Das war nicht einfach, aber es war echt ne Challenge, an der
- 8:50man gewachsen ist und man halt auch so diesen Fortschritt
- 8:53gesehen hat, so sagen wir mal die ersten 10 der bekannteste.
- 8:58Hörner hast du 2 geschafft, dann hat dein Bottom von 3 geschafft
- 9:014 und so und dann hast du gemerkt, EY, der wird wirklich
- 9:03besser. Weißt du was ich mein?
- 9:06Also das das ist halt so n cooler Progress den man da sehen
- 9:09kann und genauso könnte man ja bei unserem Wettbewerb dann
- 9:12merken Hey schau mal. Am Anfang musste ich quasi nur 4
- 9:16Züge machen, da hab ich mein Bot geschlagen und jetzt wird's
- 9:18langsam echt knackig als menschlicher Spieler diese KI zu
- 9:22besiegen, das wäre ja irgendwie auch ein cooler Progress so.
- 9:26Wie war denn das also, wenn du dich zurückversetzt und du
- 9:30kriegst jetzt genauso wie unsere Community diese Aufgabe
- 9:33vorgesetzt und denkst dir so, ich sag mal damals wir im
- 9:36zweiten Semester und Leute, die jetzt so unseren Kurs
- 9:39durchgeackert haben, das ist ja schon ein sehr ähnliches Niveau
- 9:42dann. Wie siehst du das also, wie bist
- 9:47du das angegangen, was waren deine Emotionen, deine Gefühle,
- 9:50wenn du dich da nochmal zurückversetzt, das würde mich
- 9:53mal interessieren, weil vielleicht findet sich da denn
- 9:55der eine oder andere wieder. Also ich fand es damals gar
- 9:58nicht so. Spaßig in dem Sinne, weil es
- 10:01halt eben nur ne Prüfungszulassung ging.
- 10:03Ja gut, das fällt bei uns aus. Alle anderen dürfen ganz normal
- 10:06weitermachen. Aber ich weiß auf jeden Fall,
- 10:09dass ich mir damals dachte, OK, du musst es halt machen, ne.
- 10:12Also es ist jetzt nicht so, dass man dass, dass ich mir damals
- 10:14sagt, okay ich habe diese Wahl mehr oder weniger schon klar
- 10:18habe ich die Wahl getroffen, das Studium zu machen, aber in dem
- 10:21Fall war es dann so okay wenn du durch dieses Fach willst, musst
- 10:24du eine Kleine, einen kleinen bot, eine kleine KI schreiben,
- 10:27die das für dich macht und ja, ganz am Anfang, da war ich halt
- 10:32schon, also da habe ich ziemlich in der Luft gehangen, weil ich
- 10:36einfach programmiertechnisch noch nicht so weit war einfach.
- 10:41Und wir waren ja damals auch schon so weit, dass es auch in
- 10:44Richtung Objektorientierung ging.
- 10:45Das ist ja jetzt hier noch gar nicht notwendig, dieses Wissen
- 10:48an der Stelle, das heißt, man kann es natürlich benutzen, wenn
- 10:51man es hat, aber wenn man es nicht hat, ist es nicht
- 10:53unbedingt notwendig, das ist halt an der Stelle nicht
- 10:56verkehrt. Das war zum Beispiel n Punkt,
- 10:59der mir damals bei dem KI Wettbewerb oder bei diesem Mario
- 11:04Ableger eben n bisschen im Weg stand.
- 11:08Und ich hab mich dann mühselig, sag ich jetzt mal da rein
- 11:10gequält, um dann zu gucken, OK, wie kann ich denn zum Beispiel
- 11:13springen, wenn ein Abgrund kommt oder was muss ich tun oder was
- 11:19für Möglichkeiten hab ich denn zum Beispiel um zu sehen.
- 11:23Wann der nächste Abgrund da ist oder wann irgendwie n Gegner
- 11:25kommt oder was auch immer. Ne das Waren für mich schon mal
- 11:27so die ersten Schwierigkeiten damals.
- 11:32Und da hab ich auch echt ganz schön mit zu knabbern gehabt,
- 11:36weil ich hab echt lange und viel überlegt und probiert.
- 11:41Aber genau das ist halt der Knackpunkt.
- 11:42Also man überlegt natürlich am Anfang also ich hab zum Beispiel
- 11:47einfach zu krass diesen diesen bot sozusagen overfitted weißt
- 11:51du ich also ich kann mich noch erinnern wie du meintest, so man
- 11:53kennt ja ein paar Level und dann wurden die glaube ich generiert,
- 11:57das heißt dein Mario Deine Mario Logik musste sozusagen auch mit.
- 12:03Sachen klarkommen, die eigentlich noch gar nicht, die
- 12:05man noch nicht kannte. Und ich hab dann einfach so weit
- 12:09den glaube ich überfitted, dass also Überfitted bedeutet ja im
- 12:13Endeffekt, dass ich quasi bestimmte Level genommen habe
- 12:16und mir dachte okay dann und dann muss ich dies und jenes
- 12:19tun, einfach nur um das war so der Lernprozess und habe dann
- 12:23aber gemerkt, dass ich damit gar nicht gut weiter komme, das wäre
- 12:26ja zum Beispiel bei 4 gewinnen, dass man zum Beispiel sagt okay,
- 12:28ich weiß ganz genau, was zu tun ist, wenn der Gegenspieler
- 12:32sozusagen in die erste Spalte wirft, aber ich habe gar keine
- 12:35Ahnung, was ich tun sollte, wenn er eine 2.
- 12:37Reihe wirft, weiß ich meine. Jaja.
- 12:40Also so diese Eventualitäten und hab dann quasi ja auch
- 12:44tatsächlich echt krass den Kopf zerbrochen.
- 12:46Wie könnte ich das machen? Und ich muss ganz ehrlich sagen,
- 12:51eigentlich lief es nicht gut. Die Sache an sich.
- 12:56Bis ich halt irgendwann. Ich glaub wir haben auch dann
- 12:59uns darüber unterhalten. Und ne, also ich sag mal zweites
- 13:03Semester haben wir uns ja auch schon so n bisschen
- 13:05kennengelernt, so richtig. Sind wir natürlich erst übers
- 13:09Studium zusammengewachsen als Freunde.
- 13:12Aber Fakt ist auf jeden Fall, dass wir uns ja unterhalten
- 13:16haben und. Wir ja dann auch ähnliche
- 13:20Ansätze verfolgt haben. Möchtest du vielleicht mal
- 13:22sagen, was wir da so für n Ansatz dann verfolgt haben?
- 13:26Wahrscheinlich das war ja sehr ähnlich.
- 13:28Ja. Was ich erstmal spannend finde
- 13:31ist also ist n cooles Learning was du gerade genannt hast, was
- 13:36wir vielleicht noch mal so n bisschen heraus kristallisieren
- 13:39sollten und zwar das Overfitting.
- 13:43Echt n reales Problem ist man nicht in diese Falle tappen
- 13:46darf, dass man so versucht seinen Algorithmus so spezifisch
- 13:50an Situationen anzupassen. Dass man mal, blöd gesagt, das
- 13:54erste Spiel gewinnt und danach alle verliert, weil halt diese
- 13:57Situation, sozusagen die Wiedereintritt, jetzt mal auf
- 14:00unseren Wettbewerb gemünzt oder halt bei Mario das erste Level
- 14:04läufst, du dadurch bist der Beste, der schnellste und danach
- 14:07verlierst du jedes Level und stirbt gleich ersten Abgrund
- 14:09oder so. Weißt du also Overfitting ist
- 14:12auf jeden Fall ein reales Problem bei bei so Bots und KI
- 14:15s. Was ich hatte.
- 14:19Und weil du gefragt hast, was wir am Ende gemacht haben, bevor
- 14:22wir zu unserem finalen Ansatz gekommen sind, hatte ich nämlich
- 14:25ein anderes Problem, was sich auch mal herausstechen
- 14:27herauskristallisieren möchte, ist, und zwar einfach zu
- 14:33kompliziert denken, was auch so ein bisschen dieses Overfitting
- 14:37ist, aber quasi direkt. Irgendwie versuchen, ultimativ
- 14:43komplizierten Algorithmus zu entwerfen, der übermächtig ist.
- 14:47So gefühlt. Weil das hat bei mir alles da
- 14:50gar nicht funktioniert. Ich hatte halt angefangen, so ja
- 14:55keine Ahnung, hab mal irgendwas von von Pfadfindung gehört,
- 14:58Vorausberechnen wo der beste Weg ist mit Heuristiken, wo ist die
- 15:02Wahrscheinlichkeit am größten, dass ich das Level schaffe und
- 15:05hab dann angefangen da irgendwie Algorithmen runter zu coden, die
- 15:09ich im Netz gefunden habe und das hat halt einfach überhaupt
- 15:11nicht funktioniert bis hinzu Ich bin komplett aus dem Speicher
- 15:14also der Speicher ist voll gelaufen, das halt gar nichts
- 15:16mehr ging weil ich halt riesen Maps aufgebaut habe für so einen
- 15:21Stern Algorithmus zum Beispiel. Dann bin ich halt total
- 15:25verzweifelt. Und dann?
- 15:28Ja, quasi haben wir alle drüber geredet, so mit unseren Leuten
- 15:32und wir beide und sind komplett zurückgesteppt und haben gesagt,
- 15:35ja, was mach ich denn als Spieler?
- 15:38Klar also man hat so viele Möglichkeiten, man trifft
- 15:41superschnell Entscheidungen. Wenn du jetzt live also selbst
- 15:43spielst. Aber was macht Mario eigentlich
- 15:46am Ende? Und dann haben wir gesagt, Pass
- 15:47auf, wir nehmen ganz einfach regelbasierten Ansatz mit 23
- 15:51Regeln hatte glaube ich die der Bot am Ende nur.
- 15:55Wo die erste war so nach dem Motto du sprintest erstmal, also
- 16:00egal was du machst, du läufst schön einfach nach vorne und
- 16:03gibst Gas, wo sich jetzt Leute schon denken, ey was was was
- 16:07gegnerabgründe ja. Ja, ist richtig, aber die zweite
- 16:11Regel war, du springst dauerhaft.
- 16:14Ja genau, also wenn du springen kannst, springst du genau.
- 16:17Genau. Und dann so OK.
- 16:19Wie sieht das aus? Na ja, Mario läuft jetzt absolut
- 16:22wie auf der Word, das schnell mal raus.
- 16:27Läuft halt einfach wie n Wahnsinniger los und springt die
- 16:30ganze Zeit so und damit sind wir schon durch sehr sehr viele
- 16:34Level tatsächlich gekommen. Marx sein, dass es ist halt so n
- 16:37gewisser Zufall da drin, dass du halt nicht in einen Abgrund
- 16:40fällst. Aber die Wahrscheinlichkeit war
- 16:41einfach größer, dass du nicht irgendwo reinfällst, dass du
- 16:44halt wirklich durch die Level gekommen.
- 16:45Bist das heißt, man hat sogar schon mal einen großen Progress
- 16:48gesehen, obwohl noch gar nicht so viel rein theoretisch
- 16:50passiert ist. Selbst mit diesen 2 Regeln,
- 16:53glaube ich, haben wir schon 50% der Level geschafft oder so.
- 16:57Oder 40 oder so, also schon gar nicht so wenig.
- 17:00Und dann haben wir uns gedacht, Na ja, gut, wie könnten wir das
- 17:02jetzt verbessern mit unserem regelbasierten Einsatz, also
- 17:05haben wir uns überlegt, naja, wir können ja sagen, kann ich,
- 17:08wie du ja schon meintest, kann ich überhaupt gerade springen
- 17:11oder springe ich zum Beispiel in einen Gegner rein oder lande ich
- 17:16in einem Abgrund? So, mit diesen beiden
- 17:19Ergänzungen, was am Ende wirklich nur 4 Regeln war.
- 17:24Haben wir es ja dann geschafft. Ich glaube, wir waren bei 7080%
- 17:26der Level am Ende und da ich glaube 70 oder 60 brauchte man
- 17:30für die Zulassung. Ja, sogar noch genau.
- 17:33Wir waren ja noch n gutes Stück besser.
- 17:35Witzigerweise waren wir. Glaub ich in den Top ten der
- 17:37eingereichten und ich dachte mir so was soll das gerade
- 17:40passieren? Ja, weil das war so simpel, dass
- 17:43ich, also ich glaub das waren 20 Zeilen Code oder so am Ende.
- 17:47Oder? 30 maximal also das aufwändigste
- 17:50war eigentlich das Auslesen des Levels, um zu wissen, wo ist ein
- 17:53Gegner, wo ist ein Abgrund, so nach dem Motto.
- 17:55Ich hatte 50, aber ich hatte sehr viel.
- 17:59Kommentare das kann nicht funktionieren, das funktioniert.
- 18:01Oh mein Gott, es funktioniert und das ist halt so ein
- 18:05klassisches Beispiel, wissen wir nicht diesen Punkt anbringe,
- 18:08dass es manchmal besser ist, gar nicht so kompliziert zu denken,
- 18:11sondern erst mal zum Beispiel auch mit so einem regelbasierten
- 18:14Ansatz anzufangen. Weißt du, was ich lustig finde?
- 18:16Also es ist ja zum Beispiel, ich hab mein erster Ansatz war also
- 18:20ganz am Anfang und das war halt viel zu kompliziert zu sagen,
- 18:23wann muss ich springen und am Ende sind wir ja quasi, haben
- 18:27wir das ja quasi sozusagen invertiert, um zu sagen, ich
- 18:30springe immer und kann und gucke, wann darf ich nicht
- 18:32springen. So.
- 18:33Genau, weil man nämlich sozusagen, damit man genau
- 18:35verhindert hat, dass man, wenn man springt, in den Abgrund
- 18:38reinspringt, anstatt zu sagen, ich springe immer, und wenn da
- 18:40ein Abgrund kommt, dann springe ich kurz nicht warte und springe
- 18:43dann. Also dann, da landet zwischen
- 18:45halt ne sowas hatten wir denn drin?
- 18:47Genau. Und das das war halt interessant
- 18:49und da, das ist ja, das ist ja also das, was ich meine, ist es,
- 18:54manchmal hilft es einfach auch noch mal, sich komplett zu
- 18:57überlegen. OK, vielleicht ist der erste
- 18:59Ansatz vielleicht nicht genau der Richtige, vielleicht muss
- 19:01ich noch mal umdenken, zum Beispiel kann man ja
- 19:04beispielsweise als Erstes bei einem, wenn ich jetzt mal ganz
- 19:08kurz das, also ein kleines Beispiel bringe für den 4
- 19:13gewinnt Wettbewerb, man könnte sich ja beispielsweise
- 19:15hinstellen und sagen okay. Als erstes könnte ja nicht die
- 19:19Frage sein, wie gewinne ich, sondern zum Beispiel, wie kann
- 19:22ich verhindern, dass jemand anders gewinnt.
- 19:24Als erstes Mal. Das wäre ja zum Beispiel auch
- 19:26eine Möglichkeit, um dann halt iterativ sozusagen zu gucken,
- 19:31okay welche Strategie verbessere ich, setze ich oben drauf oder
- 19:36was auch immer. Na also nur mal so als kleines
- 19:38Beispiel in Raum geworfen. Ja, gutes Beispiel.
- 19:42Sehr gutes Beispiel. Weil das ist ja auch eigentlich
- 19:45der, der was dann am Ende Spaß macht, dass man sieht, okay der,
- 19:49der Bot wird. Besser, ich krieg halt wirklich
- 19:52mit wenig Zeilen Code und mit mit 1, also in
- 19:55Anführungsstrichen einfacher Programmierung wie zum Beispiel
- 19:59so ein 2 Impfbedingung. Es hin, Entscheidungen zu
- 20:05treffen, die zu einem guten Bot führen und das fand ich, war so
- 20:09der aha Moment zu der damaligen Zeit und deswegen Liebe zuhören,
- 20:14liebe Zuhörer, wollen wir dir das gerne mal mitgeben und auch
- 20:16so als Motivation dann quasi an unserem Wettbewerb teilzunehmen,
- 20:20weil ich meine klar am Ende ist das ein Wettbewerb, das war es
- 20:23damals bei uns auch und es gab Kommilitonen die einfach schon
- 20:28absolut krasse Algorithmen entworfen haben, also es hat
- 20:32auch jemand geschafft. So eines a Sterns umzusetzen,
- 20:35indem er einfach so Speicheroptimiert das ganze
- 20:38gemacht hat und wahrscheinlich die Heuristik besser war, dass
- 20:41er wirklich den Pfad berechnen konnte.
- 20:45Und halt dann keine Ahnung 9095% aller Level geschafft hat.
- 20:50Also da gab es halt wirklich wenige Situationen, nur noch die
- 20:54dafür gesorgt haben, dass der Bot das nicht schafft.
- 20:56Ja. Aber das ist ja genau der Punkt.
- 20:59Ich fand es in dem Moment halt nicht schlimm, dass ich mir
- 21:01dachte, oh Scheiße, jetzt hab ich nicht den ersten gemacht,
- 21:04sondern für mich war es einfach. Unglaublich motivierend, dass
- 21:08ich mir dachte, OK, pass auf, ich hab meine Prüfungszulassung,
- 21:11das heißt, ich habe quasi diese Aufgabe erfüllt, damit habe ich
- 21:15am Anfang gar nicht gerechnet und ich habe auf jeden Fall
- 21:19super viel dabei gelernt. Und das das war halt, das war
- 21:22halt auf jeden Fall cool, weil es ging ja auch im Endeffekt
- 21:24darum, sich, also man hat ja Gedanken, die, wobei denen man
- 21:29sagt, OK, ich möchte jetzt gern, dass das und das vielleicht
- 21:31passiert, vielleicht in den und den Situationen, und dann muss
- 21:35man das ganze ja irgendwie algorithmisch in Code gießen und
- 21:38genau das finde ich, ist eine der.
- 21:42Schlüssel. Punkte, die man quasi überwinden
- 21:47muss, die man lernen muss. Am Anfang, wenn man in die
- 21:50Softwareentwicklung, in das Programmieren einsteigt, das
- 21:53finde ich, ist, weil wenn man erstmal über diesen Punkt sage
- 21:57ich mal, zu einem gewissen Grad hinweggekommen ist.
- 22:01Dann dann dann hat sich so ein Knoten gelöst und dann
- 22:03funktioniert alles andere noch ein bisschen besser, aber dafür
- 22:06bedarf es halt eben Übung. Und genau aus diesem Mario
- 22:11Ableger, den wir den wir damals hatten und dadurch, dass halt
- 22:15gerade solche Spiele halt auch ein bisschen mehr Spaß machen
- 22:19als irgendwas anderes, Langweiliges, nenne ich es jetzt
- 22:22einfach mal. Ist das natürlich irgendwie ne
- 22:24gute Art und Weise das zu machen.
- 22:26Und selbst wenn man diese Folge nach dem 30.
- 22:29März hört. Hat man immer noch die
- 22:32Möglichkeit, sich das trotzdem noch mal zu nehmen?
- 22:35Genau dann ist der Wettbewerb zwar sehr wahrscheinlich rum
- 22:38oder die Einreichungsfrist abgelaufen, aber wir werden ja
- 22:42das Spiel auch online lassen, so dass man sich das trotzdem
- 22:45angucken kann und für sich implementieren.
- 22:47Kann. Und vielleicht sind noch einige
- 22:49Bots dazugekommen, gegen die man spielen kann.
- 22:52Das kann sein ja, memo. Selbst der Gewinner bot wird
- 22:56natürlich mit eingereicht. Dann ja, wenn die Person das
- 22:59erlaubt, natürlich dann ne, aber das wär natürlich cool, weil
- 23:01dann kann man immer sehen, hätte ich den Sieger des Turniers
- 23:03geschlagen. Das ist ne coole Idee.
- 23:05Fabi gefällt mir gut. Genau jetzt haben wir ja schon
- 23:08so n bisschen über Mario gequatscht.
- 23:10Also unser Mario damals, der hieß ja n bisschen anders und so
- 23:15verschiedene Ansätze, dass wir n sehr einfachen Ansatz gewählt
- 23:18haben und sehr gut damit gefahren sind, dass andere.
- 23:22Ja, denn doch halt schon, sag ich mal komplexere Algorithmen
- 23:25verwendet haben. Lass uns doch jetzt mal
- 23:29basierend auf unseren Wettbewerb mal so verschiedene Ansätze.
- 23:34Beschreiben also, was ist so für?
- 23:37Na ja, also nicht direkte Strategien, sondern so Arten an
- 23:42Ansätze gibt. Ich hoffe du weißt was ich
- 23:43meine, ich würd einfach mal mit n Beispiel anfangen, wir hatten
- 23:47ja jetzt zum Beispiel. Gesagt, dass wir so Regelbasiert
- 23:52ein Bot geschrieben haben. Das ist für mich so, sagen wir
- 23:55mal fast so ne zweite Stufe, man könnte ja noch einfacher
- 23:59anfangen. Und zum Beispiel ne Art Skript
- 24:04schreiben. Also ich hab jetzt meine
- 24:05Funktion, die ich implementieren soll und sage dann halt sowas,
- 24:09beispielsweise im ersten Zug nimmst du bitte.
- 24:13Das erste Feld, da wirfst du deine Münze rein, im zweiten Zug
- 24:16wirfst du sie dann noch mal rein und so weiter ne, also dass du
- 24:20halt immer das gleiche machst. Also n statischer Ablauf, der
- 24:23quasi. Wirklich n fest codierter Ablauf
- 24:26und also der auf keiner. Anderen Input quasi achtet.
- 24:31Ja. So, das ist doch super easy.
- 24:34Kannst ja einfach sagen, ich hab mir überlegt die 4 Felder, das
- 24:38sind meine ersten. 4 Züge oder zum Beispiel ne einfache Art
- 24:43davon wäre ja beispielsweise eine ein Bot ein Skript, besser
- 24:47gesagt sozusagen. Wenn wir das jetzt so nennen
- 24:49wollen oder Scriptlike zu sagen, ich werfe immer in die vierte
- 24:54Zeile Zeile spalte, weil das. Ganze haben wir ja auch schon
- 24:59mal. Wir haben ja 2 Beispiel K is
- 25:01abgelegt. Die wir so mitgegeben haben.
- 25:05Und da ist gibt's ja die sogenannte Phil KI, und die
- 25:09wirft ja immer einfach in dieselbe Spalte, das ist ja
- 25:11genau das, was wir meinen, das ist ein fester Ablauf, so und
- 25:15interessanterweise, die andere KI ist ja auch ganz witzig, die
- 25:18ist einfach Zufall, basiert, das heißt ja, die Random KI wählt
- 25:23einfach zufällig aus, als wenn ein Spieler sich denkt, ist mir
- 25:26eigentlich egal, was jetzt passiert, ich mach mal erste och
- 25:28mal vierte und so weiter. Und interessanterweise, oder das
- 25:33wird vielleicht viel auch nicht überraschen, gewinnt die Phil KI
- 25:35eigentlich ziemlich gut gegen die Random KI.
- 25:38Ja, weil der Zufall ist ja nicht immer scharf zu verhindern, dass
- 25:41da 4 übereinander liegen haben, das ist halt, das ist halt schon
- 25:46cooles Zeichen dafür, dass man eventuell gegen quasi Ki s schon
- 25:52gewinnen kann mit so einem einfachen.
- 25:53Ablauf also. Das wäre.
- 25:55So für mich der unterste trivialste Ansatz.
- 25:59Genau, also prinzipiell kann man ja an der Stelle noch mal ganz
- 26:02kurz so reinwerfen. Das natürlich.
- 26:06Es ist natürlich schwierig, wir hatten ja auch zum Beispiel
- 26:08schon mal gehört, ja gut, aber ist ja jetzt nicht immer dann
- 26:13gleich eine KI, weil KI als künstliche Intelligenz ist
- 26:18natürlich heute im Volksmund mittlerweile.
- 26:23Umfasst das was anderes, weil man das Verständnis über dieses
- 26:26Thema ist natürlich ein anderes, muss man mal gucken, was man
- 26:30jetzt sozusagen als Ki betraftet Prinzessin prinzipiell in der
- 26:34Information. Ist ja die künstliche
- 26:36Intelligenz ein Themen, ein Bereich, was sehr, sehr viele
- 26:41Unterbereiche behandelt. Ne ja, also zum Beispiel gibt es
- 26:45ja auch keine Ahnung sowas wie Machine Learning ist ja ein
- 26:48Unterbereich von. Künstlicher Intelligenz genauso
- 26:52ist zum Beispiel eine Support. Vector Machine ist ja eine ein
- 26:55Modell, was quasi ich sag mal Entscheidungen Datenpunkte teilt
- 27:00ne sowas wie keine Ahnung ich sag jetzt einfach mal damit man
- 27:04sich es vorstellen kann rote Punkte von blauen Punkten
- 27:06trennt, also eine Linie zieht und sagt da werden diese beiden
- 27:10Mengen geteilt. Um das ganz, ganz, ganz grob
- 27:15anzureißen, was ich meine ist, das ist ja auch ein einfach eine
- 27:20Art von Reglement, nach denen diese Daten geteilt werden.
- 27:23Also nachdem quasi eine Entscheidung getroffen wird und
- 27:27eine Support Vector Machine ist deutlich statischer als zum
- 27:31Beispiel ein evolutionärer Algorithmus.
- 27:33Also was ich meine, es gibt verschiedene Modelle,
- 27:37verschiedene Ansätze, die aber im groben und ganzen.
- 27:42Dynamischer statischer sind nach komplexeren oder einfacheren
- 27:46Regeln handeln, aber am Ende unter den Oberbegriff künstliche
- 27:49Intelligenz fallen. Ja, deswegen ist es halt.
- 27:54Was ich meine, ist ja, was ich meine.
- 27:56Es war kurz n kleiner Ausflug in die verschiedenen Themen.
- 27:59Ja, aber genau hast du natürlich absolut.
- 28:01Recht nur, weil man natürlich sich jetzt hinstellen könnte und
- 28:03sagen könnte, na ja gut, wenn du jetzt random irgendwas
- 28:05reinwirfst ist das ne Mars rand Funktion die irgendwie also ne
- 28:11Spalte von 1 bis 7 auswählt. Das ist ja keine künstliche
- 28:15Intelligenz in dem Sinne also. Man muss natürlich an dem Punkt
- 28:19auch sagen, wir reden hier über Bots.
- 28:24In Spielen und da in der Welt. Wenn du jetzt nicht so in dem
- 28:29absolut wissenschaftlichen Bereich unterwegs bist, sag ich
- 28:32mal, ist KI und bot oft Synonym, das mögen jetzt vielleicht viele
- 28:38nicht cool finden und sich denken, hey nee, das ist wie du
- 28:40ja schon meintest, alles richtig ist.
- 28:43Okay es gibt Teilbereiche und Maschinelles Lernen und alles,
- 28:47aber was wir hier meinen in dem Punkt, ich versuche auch oft
- 28:51Bots zu sagen, manchmal rutscht mir dann auch KI raus, weil aus
- 28:54Spielen kennt man das so, es gibt keine.
- 28:56Einfach KI Mittel und KI hart wie damals in alten Spielen.
- 29:02Genau, aber im Prinzip hast du recht.
- 29:04Es gibt halt so zum Beispiel, wie wir gesagt haben, so
- 29:06regelbasierte Ansätze, das zähl ich jetzt auch irgendwo als KI
- 29:10dazu, weil ne Entscheidung getroffen wird, aber so n so n
- 29:14einfaches Maß random schwierig, hast du recht.
- 29:17Nur das, was noch mal ein bisschen trennen, weil das ja
- 29:19quasi da schon mal so ein bisschen haben wir auch schon
- 29:22mal drüber gesprochen. Und nur, dass man jetzt quasi
- 29:26vielleicht dem einen oder anderen vielleicht ein bisschen
- 29:28Wind aus den Segeln nimmt. Aber es ist natürlich durchaus
- 29:31möglich zu sagen, OK, der eine reicht jetzt vielleicht.
- 29:35Ne Random ki, ein Random bot was auch immer und eine andere
- 29:40Person sagt sich zum Beispiel ja gut, aber ich schreibe jetzt
- 29:43wirklich eine ein Algorithmus der anhand von Spielen lernt ist
- 29:49ja genauso möglich. Demzufolge haben wir gesagt du.
- 29:52Kannst ja auch ein maschinelle Ansätze verfolgen.
- 29:54Du kannst auch gerne mit neuronalen Netzen arbeiten oder
- 29:58mit Heuristiken und selbst dir Training Daten geben, woran du
- 30:03deinen Algorithmus anlernst und dann Spiel alles okay.
- 30:06Aber das ist so ein bisschen vorweggreifend lass uns mal noch
- 30:09mal ganz unten anfangen und dann vielleicht so iterativ.
- 30:13Diese Komplexitätslevel hochschrauben also wie gesagt,
- 30:17es gibt so einfache Skripte, dann regelbasierte Ansätze.
- 30:20Regelbasierte Ansätze hatten wir ja gerade gesagt, so wenn dann
- 30:24Strukturen unser Bot damals war einfach sind.
- 30:27Aneinanderreihung von IF Bedingung und daran wurde die
- 30:30Entscheidung getroffen. Das heißt du hast quasi in der
- 30:33IF Bedingung schon deinen Zustand gehabt und dann
- 30:36entschieden jetzt spring jetzt laufen und so.
- 30:39Weiter genau dann gibt es ja zum Beispiel auch noch sowas wie
- 30:41Entscheidungsbäume. Beispielsweise sind ja auch
- 30:43Möglichkeiten, dass du sozusagen eine Art, das ist ja auch
- 30:47irgendwie in gewisser Weise so eine Art, wenn dann.
- 30:52Überprüfung bloß, dass man vielleicht noch eher sagt, dass
- 30:54diese wenn dann regeln nicht irgendwie völlig unabhängig
- 30:57voneinander agieren, sondern tatsächlich aufeinander
- 31:00aufbauen. Das kann man sich immer.
- 31:02Vorstellen. So verschachtelt.
- 31:03Sind genau, dass du so gedanklich so einen Knotenpunkt
- 31:05hast, der dir sagt, wo eine Entscheidung zu treffen ist und
- 31:08nach einer entsprechenden Entscheidung hast du wieder
- 31:11Möglichkeiten, die du dann treffen kannst.
- 31:14Also sagen wir mal 2 bis noch mehr Möglichkeiten wo du sagst
- 31:17okay ne Fall x geht jetzt quasi links lang, Fall Y geht durch in
- 31:22der Mitte lang und Fall rechts führt dann die Aktion auf der
- 31:25rechten Seite außer nach dem Motto.
- 31:29Also das sind halt so mögliche. Dass man sagt, man verschachtelt
- 31:32das Ganze. Man hat dann im Endeffekt
- 31:33entscheidungsbäume, die einem dann sagen, OK ne, keine Ahnung,
- 31:37das Spielfeld sieht gerade so und so aus, also mach ich dann
- 31:40in dem Fall dies. Ne zum Beispiel findest du 3
- 31:43verschiedene. Steine irgendwo auf dem
- 31:46Spielfeld und musst jetzt ne Entscheidung daran treffen,
- 31:48unter dieser Bedingung, dass 3 Steine nebeneinander liegen.
- 31:52Was du was du tust. Genau, du schmeißt das Spielfeld
- 31:55um, rennst weg. Genau du, genau du gibst auf.
- 32:00Nee, also das ist eigentlich ganz cool cool beschrieben
- 32:03gewesen, das finde ich gut, also im Prinzip, dass du
- 32:06verschiedene. Metriken oder oder Situationen
- 32:11hast. Die du dann quasi miteinander
- 32:15verknüpfst und dann sozusagen in deinem Baum von ganz oben nach
- 32:19ganz unten läufst. Also ich hoffe, alle haben so
- 32:21so, so diese Baumstruktur im Kopf, wenn nicht, können wir da
- 32:24auch gerne mal was posten. Schreibt uns einfach, wenn euch
- 32:25das interessiert und du halt quasi sagst, ja habe ich.
- 32:31Hat der Gegner 3 Steine nebeneinander, was du gerade
- 32:34meintest? Ja dann vielleicht kannst du
- 32:38schon direkt eine Entscheidung treffen.
- 32:39Naja, da muss ich da in die vierte Stelle werfen, sonst habe
- 32:41ich direkt verloren, aber es kann ja auch sein, Nein hat er
- 32:44nicht, habe ich 3 Steine irgendwo kann ich das Spiel
- 32:47gewinnen, so nach dem Motto, obwohl das wäre sogar besser als
- 32:49erste Entscheidung statt zu verhindern, dass der Gegner
- 32:52gewinnt, also drehen wir das gedanklich mal um gucke ich
- 32:55erstmal habe ich 3 Steine so ja dann habe ich ja gewonnen, dann
- 32:58muss ich den da reinwerfen, danach prüfe ich ob der Gegner
- 33:00das hat und so kann ich ja quasi.
- 33:03Einen richtigen Baum aufspannen, um so die richtige Entscheidung
- 33:06hoffentlich zu treffen. Am Ende so, das ist so.
- 33:10Im Prinzip zum regelbasierten Ansatz noch mal so ne Stufe
- 33:13drauf, bisschen komplexer. Find ich auch gut.
- 33:17Also entscheidungsbäume waren weiß ich gar nicht wie es
- 33:20mittlerweile ist, aber früher auf jeden Fall auch in Spielen
- 33:23sehr beliebt als künstliche Intelligenz für Bots.
- 33:27Das ging glaube ich, auch bei so.
- 33:29Schach beim Schachspiel zum Beispiel ging das, Glaube ich,
- 33:32auch mit Entscheidungsbäumen los.
- 33:34Ja, genau, weil du versuchst ja den bestmöglichen Zug quasi zu
- 33:37ermitteln sozusagen. Genau, und da sind ja den zig
- 33:42Sachen rausgekommen. Dann gab es irgendwann mit Max
- 33:44Bäume und alle möglichen Ansätze, das ist ja dann
- 33:46wirklich, das sind ja dann schon komplexere Algorithmen, die man
- 33:50quasi implementieren könnte, um damit das Spiel zu spielen oder
- 33:53im Prinzip den bestmöglichen Zug zu schätzen, zu ermitteln, und
- 33:59da wird es dann kommen wir jetzt halt auf eine Ebene, wo es halt
- 34:01denn schon wirklich komplexer wird, und wer darauf Bock hat,
- 34:05kann das auch gerne machen und wir freuen uns auch auf super
- 34:07kreative Lösungen, aber sagen wir mal, ich würde jetzt hier
- 34:11mal so ein Strich ziehen erstmal.
- 34:13Gedanklich auch für dich Liebe zuhören, liebe Zuhörer,
- 34:16angenommen du hast wirklich keine Vorerfahrung und hast
- 34:19unseren Grundlagenkurs gemacht. Bis hier kommst du auf jeden
- 34:23Fall. Ja, also n Skript schreiben, auf
- 34:26jeden Fall regelbasierten Ansatz, auf jeden Fall auch.
- 34:29Ja, es waren ja so if Bedingungen waren ja if
- 34:31Konstrukte waren ja Teil des Kurses und.
- 34:35Damit kannst du halt auch schon ne wirklich gute KI schreiben,
- 34:37keine Frage. Richtig?
- 34:40Ja, auf jeden Fall also. Und es gibt ja immer noch die
- 34:42Möglichkeit, sich auszutauschen auf diversen Plattformen, ne mit
- 34:46uns, mit der Community und das ist ist ja quasi, soll ja auch
- 34:49ein bisschen. Motivieren und.
- 34:54Hoffentlich ist das natürlich auch für die Leute, die du
- 34:57gerade beschrieben hast, Tino. Soll weil dann, wenn man
- 35:02sozusagen neue Sachen ausprobieren muss, sozusagen an
- 35:05seine Grenzen kommt, dann merkt man halt auch, OK, das ist
- 35:08natürlich der Bereich, in dem ich jetzt auch mich
- 35:10weiterentwickel. Genau.
- 35:16Ja. Genau, ganz.
- 35:19Hast du noch was? Ja, ganz kurz noch, wenn man
- 35:21noch mal über diesen Strich, den du gerade gezogen hast, mal
- 35:23gedanklich n bisschen weiter rüber gehen möchte und sagen
- 35:25möchte, OK, wir kommen jetzt vielleicht wirklich n bisschen
- 35:27mehr in den Bereich KI, dass man zum Beispiel sagt, OK, so n
- 35:31Entscheidungsbaum ist ja natürlich, trotzdem hat n festes
- 35:34Reglement auf bestimmten sag ich jetzt mal Bedingungen
- 35:39Verhältnissen. Zuständen, die gerade da sind
- 35:43und theoretisch noch mal n bisschen sozusagen den den
- 35:46Vergleich zu ziehen. Angenommen man schreibt einen
- 35:50Algorithmus. Der guckt.
- 35:53OK, mein. Einer KI mein mein Gegner bot
- 36:00eröffnet oft zum Beispiel mit einem bestimmten, mit einer
- 36:04bestimmten Zugabfolge, die oft relativ schnell dazu führt, dass
- 36:083 zum Beispiel nee und 3 Steine nebeneinander liegen.
- 36:11Dann könnte man ja in dem Fall schon mal sagen, okay, daraus
- 36:14habe ich jetzt gelernt, also dieser Algorithmus könnte jetzt
- 36:17sagen, daraus habe ich gelernt, die Wahrscheinlichkeit, dass das
- 36:19wieder eintrifft, ist sehr hoch, also setze ich meinen Stein
- 36:22schon mal an die Stelle, wo ich erwarte erfahrungsgemäß, dass ZB
- 36:27dieser Stein an dieser Stelle gesetzt wurde, um sozusagen.
- 36:31Den gegnerischen Bot schon mal ein bisschen aus der Reserve zu
- 36:33locken, das wäre auf jeden Fall schon Ansatz, der dann sozusagen
- 36:37adaptiv auf bestimmte Situationen eingeht.
- 36:40Ja, das ist ja hart im Bereich maschinelles Lernen, dass du
- 36:45halt sagst, okay. Ich habe, also ich trainiere
- 36:47quasi mein Bot, das heißt, ich spiele beispielsweise gegen ihn
- 36:53und er berechnet quasi den Ausgang der Spiele und.
- 36:58Bewertet die also im Prinzip. Er wird am Anfang wahrscheinlich
- 37:02sehr, sehr komische Züge machen, wo dir denkst, OK, das war jetzt
- 37:06nicht so clever, weil jetzt gewinn ich, du hast das nicht
- 37:08geblockt, mein Angriff hier sage ich mal ne dann wird er also
- 37:13dann wird der Algorithmus sagen wir es mal so quasi
- 37:16dementsprechend ja auch diesen finalen Zug bewerten und ihn
- 37:19nächstes mal nicht machen in dieser Situation, dann wird er
- 37:22halt abgestuft und so, dass andere Züge quasi höher bewertet
- 37:27sind um das mal hoffentlich. Bildhaft darzustellen und dann
- 37:31halt andere Züge ausgewählt. Und wenn ich du das jetzt über
- 37:34sehr viele Iterationen machst, dann wird sich halt der
- 37:37Rauskristallisieren, dass der Bot eine Strategie hat, womit er
- 37:41viele Spiele für sich entscheiden kann.
- 37:44Also ist halt auch wieder die Frage auch wieder Stichwort
- 37:47Overfitting wenn er immer gegen dich spielt und du hast so eine
- 37:50eigene Art zu spielen, dann wird er irgendwann gegen dich perfekt
- 37:53spielen, aber vielleicht gegen andere nicht mehr, das ist halt
- 37:56dann auch wieder ein ganz anderes Thema, aber.
- 37:59Interessant an diesen Ansätzen ist halt dieser dieser
- 38:01Trainingsfaktor, also dass du so Trainingsdaten hast.
- 38:04Also zum Beispiel du bist sein, sein Sparringpartner sozusagen
- 38:08ne und spielst halt gegen ihn und schickst ihn dann ins
- 38:11Turnier und sagst so und jetzt. Bot Schlag sie alle.
- 38:17Das genau, und da sind halt auch ganz coole Ansätze, da gibt es
- 38:21ja auch sehr, sehr verschiedene. Ich finde auch so evolutionäre
- 38:25Algorithmen interessant, können wir ganz kurz mal anschneiden,
- 38:28das. Im Prinzip ein ähnlicher Ansatz,
- 38:32dass du sagst, du hast Heuristiken und du du Simulierst
- 38:36oder imitierst du die diese Evolution der Natur sozusagen
- 38:40also wie der Mensch sich ja auch angepasst hat an seine Umgebung
- 38:44und optimiert hat dahingehen würde, denn der bot auch
- 38:47versuchen sich seinen Gegebenheiten anzupassen und
- 38:51stellt sich halt quasi nach jedem Spiel die Frage er war das
- 38:54jetzt irgendwie cool was ich gemacht habe oder war das eher
- 38:57nicht so cool? Und dann adaptierte sich halt
- 38:59auch darauf. Das ist halt auch ganz, ganz
- 39:02cooler Ansatz. Also da gibt.
- 39:03Es auch Tausende gefühlt. Halt genau.
- 39:05Ich wollte gerade sagen, es gibt auf jeden Fall super viel, was
- 39:08man machen kann, was man aber natürlich nicht machen muss.
- 39:11Wichtig ist natürlich, und das steht hier auf jeden Fall im
- 39:14Vordergrund. Dass man einfach also auch du,
- 39:18liebe Zuhörerin, lieber Zuhörer, wenn du dir sagst, ich möchte da
- 39:21gerne mitmachen und ich weiß noch nicht, ob ich so weit bin
- 39:25oder nicht. Wir sagen, du bist so weit, wir
- 39:29sagen, mach einfach mit und guck, wie weit du kommst.
- 39:31Tausch dich mit uns, Tausch dich mit der Community aus und
- 39:34Versuch dein Bot für dieses Spiel zu schreiben und mach beim
- 39:38Wettbewerb mit. Du kannst nur Erfahrungen
- 39:41dadurch sammeln und das ist auch sehr wertvoll.
- 39:44Genau. Und alle anderen macht auch mit.
- 39:50Ja, macht auch mit, indem zeigt ihr uns die besten Algorithmen,
- 39:53die ihr drauf habt. Genau auf jeden Fall hoffen wir,
- 39:57dass wir dann ein cooles Turnier dann live bei Twitch zeigen
- 40:00können. Genau und in dem Sinne würde ich
- 40:04sagen, haben wir das Ganze eigentlich ja mal ein bisschen
- 40:07angeschnitten diskutiert, was meinst du, Tino ja.
- 40:12Ich hoffe, wir konnten es auch gut motivieren, daran
- 40:13teilzunehmen, weil es halt wirklich echt eine coole Sache.
- 40:16Ist genau und wenn dich liebe, zuhören, Liebe zuhören
- 40:20interessiert. Zum Beispiel auch im Podcast mal
- 40:23den ein oder anderen Algorithmus, wie zum Beispiel
- 40:26den evolutionären Algorithmus, also diese Art und Weise, wieso
- 40:31etwas funktioniert, mal im Podcast in der Folge behandeln
- 40:34sollen, wenn. Gesagt, wenn dich das
- 40:37interessiert, dann schreibt uns gerne auf der Podcast Mail.
- 40:40Die ist in den Showload Shownotes verlinkt oder auch bei
- 40:44Instagram. Da zählen wir einfach auf euer
- 40:48Feedback oder auf dein Feedback. Das ist auf.
- 40:51Jeden Fall mal ne deepdive Folge machen.
- 40:52Genau also. Alles, was euch dahingehend
- 40:55interessiert, gebt. Feedback schreibt uns genau und
- 41:01in dem Sinne würde ich auch sagen, das war es für diese
- 41:04Folge einen schönen Tag noch und bis zum nächsten Mal.
- 41:07Deine Coding Buddies gemeinsam besser.
- 41:18Was?