@Czaker123: AI też nie uczy się na swoich błędach w rozumieniu ludzkim. AI na obecnym rozwoju technologii odnajduje tylko te prawidłowości i uczy się tylko tych umiejętności do których została zaprojektowana.
Nagranie pokazuje, że AI nie nauczyła się celowo omijać zagrożenia tylko metodą prób i błędów we właściwym momencie skręcać w bezpiecznym kierunku. Tak nauczoną AI dla nowej planszy będziesz musiał uczyć od nowa... a przy okazji oduczy się poprzedniej planszy,
@MiKeyCo: podstawowy problem, że to AI nie ma pojęcia co robi. Ma zajść jak najdalej i nic nie wie o przeszkodach. Po prostu puszczamy pijanych ślepców we mgle i się jaramy, że któryś przypadkiem ominął studzienkę kanalizacyjną i mur, ale wpadł pod autobus, a następny zachwiał się akurat tak, że go nie rozjechało...
- Po pierwsze rozwiązanie jest deterministyczne - punkt startowy i pozycje startowe kropek są zawsze takie same. Szczerze - wystarczy zwirtualizować model, wyznaczyć wszystkie możliwe ścieżki i pozostawić ścieżki zapewniające sukces. To nie jest problem machinlearningowy. Jeśli pozycja startów była by losowa - to już lepiej.
- Po drugie - w tym problemie AI ma informację tylko o przebytej ścieżce i rezultacie. Człowiek widzi cały problem - kształt labiryntu, pozycje
@RandomizeUsr0: Tu nie chodzi o "po mojemu". Pole trójkąta też da się policzyć licząc dwie całki. Tylko po co, skoro jest na to wzór.
Ale już pokazanie, że całkując można policzyć pole pod fragmentem paraboli - o, to już wygląda wartościowo.
A jeśli już mówimy o poprawności - w algorytmach genetycznych jest krok krzyżowania i mutacji, także pozostawia się część populacji a nie jednego osobnika.
Uszanowanie dla garstki mireczków, którzy zauważyli, że nie jest to żadna sztuczna inteligencja tylko niezbyt optymalne wyszukiwanie zwycięskiej sekwencji ruchów w deterministycznych warunkach.
Dla AI największym problemem jest dostarczenie danych w odpowiedniej formie. Tutaj wygląda, że autor dostarczył tylko linię czasową, kolizję ze ścianą i kolizję z ruchomym obiektem. Sieć została potraktowana jako pamięć ruchu względem czasu. Logicznie podchodząc dane dla sieci powinny zawierać tylko informacje o otoczeniu względem "bohatera", np kierunek do celu, względną pozycję przeciwników ale na pewno nie linię czasową albo pozycję bezwzględną bo to powoduje uczenie się "na pamięć".
To nie jest sztuczna inteligencja, tylko heurystyka do wyszukiwania min/max w warunkach, gdzie takie operacje byłyby dużo bardziej kosztowne obliczeniowo.
heurystyka do wyszukiwania min/max w warunkach, gdzie takie operacje byłyby dużo bardziej kosztowne obliczeniowo.
@kleofas2: A nawet i nie to. Spokojnie można wyznaczyć siatkę ścieżek, usunąć punkty kolizyjne z przeszkodą i wybrać najkrótszą ścieżkę. Byłoby to mniej kosztowne i szybsze.
@mateusza: Jeśli dobrze zrozumiałem, program autora dostaje na wejściu obraz, na wyjściu pisze ruchy gracza, a warunkiem stopu jest wygrana lub przegrana. Wydaje mi się, że heurystyka może być mniej kosztowna, niż analiza obrazu, w celu uzyskania użytecznego modelu terenu i ruchomych przeszkód.
Chociaż w takich "prymitywnych" warunkach (kwadraty i prostokątne pola xd) może faktycznie masz rację.
Algorytm po prostu uczy się ruchów na pamięć. "W tej sekundzie do gory, potem do dołu" itp. Niech ustawi losową pozycję startową tych kropek. Za pomocą tego algorytmu i po milionie pokoleń by nie przeszedł.
Gra na tyle prosta, że faktycznie można by wyszkolić sztuczną inteligencje, żeby ją przechodziła bez mrugniecia, ale sposób nauki na tyle debilny, że można to porównać do przechodzenia tej gry używająć Auto-hotkey'a. Zakop.
Chcecie sztuczną inteligencje w grach? Obczajcie OpenAi w Dota2. Najlepsi gracze, żeby ją pokonać zaczeli ją naśladować w pewnych kwestiach.
Póki co ta inteligencja jest na poziomie 4 latka ( ͡°͜ʖ͡°) Biorąc pod uwagę że to była PIERWSZA plansza w tej grze szału nie robi jak musiało minąć 50 generacji tej IQ. Wątpię czy końcowe lvle by była w stanie zrobić ( ͡°͜ʖ͡°)
@sad_pepe: 50 generacji to jest niesamowite tempo uczenia w świecie SI. Zwykle zajmuje to w zależności od złożoności problemu od setek do milionów iteracji.
Komentarze (114)
najlepsze
@HalEmmerich: prostym algorytmem optymalizacyjnym.
Nagranie pokazuje, że AI nie nauczyła się celowo omijać zagrożenia tylko metodą prób i błędów we właściwym momencie skręcać w bezpiecznym kierunku. Tak nauczoną AI dla nowej planszy będziesz musiał uczyć od nowa... a przy okazji oduczy się poprzedniej planszy,
- Po pierwsze rozwiązanie jest deterministyczne - punkt startowy i pozycje startowe kropek są zawsze takie same. Szczerze - wystarczy zwirtualizować model, wyznaczyć wszystkie możliwe ścieżki i pozostawić ścieżki zapewniające sukces. To nie jest problem machinlearningowy. Jeśli pozycja startów była by losowa - to już lepiej.
- Po drugie - w tym problemie AI ma informację tylko o przebytej ścieżce i rezultacie. Człowiek widzi cały problem - kształt labiryntu, pozycje
Ale już pokazanie, że całkując można policzyć pole pod fragmentem paraboli - o, to już wygląda wartościowo.
A jeśli już mówimy o poprawności - w algorytmach genetycznych jest krok krzyżowania i mutacji, także pozostawia się część populacji a nie jednego osobnika.
To jest fajne i atrakcyjnie wizualne,
@LM317T @Sierpik21 @MiKeyCo @kleofas2 @gregor40 @knobik @graf_zero i inni
Można się rozejść.
@kleofas2: A nawet i nie to. Spokojnie można wyznaczyć siatkę ścieżek, usunąć punkty kolizyjne z przeszkodą i wybrać najkrótszą ścieżkę. Byłoby to mniej kosztowne i szybsze.
Chociaż w takich "prymitywnych" warunkach (kwadraty i prostokątne pola xd) może faktycznie masz rację.
Niech ustawi losową pozycję startową tych kropek. Za pomocą tego algorytmu i po milionie pokoleń by nie przeszedł.
Chcecie sztuczną inteligencje w grach? Obczajcie OpenAi w Dota2. Najlepsi gracze, żeby ją pokonać zaczeli ją naśladować w pewnych kwestiach.
@sad_pepe: 50 generacji to jest niesamowite tempo uczenia w świecie SI. Zwykle zajmuje to w zależności od złożoności problemu od setek do milionów iteracji.