Przejdź do treści
Home Blog Projekty O mnie

AI na osiedlu: automatyzuję grę w podchody

🏃 AI na osiedlu: automatyzuję grę w podchody

Za mną kolejny weekend i kolejne natchnienie do tworzenia aplikacji. Tym razem padło na aplikację do gry w podchody.

🔎 Problemy

Jakiś czas temu przeszedłem się po osiedlu i zrobiłem zdjęcia różnych charakterystycznych miejsc. Wydrukowałem je i przygotowałem z nich grę w podchody dla dzieci. Gra cieszy się sporym zainteresowaniem na dzielni, ale jej organizacja wymaga stosunkowo dużo pracy i stwarza kilka problemów:

  1. Muszę rozplanować trasę, a nie jest to proste, bo zależy mi, aby dzieciaki jak najwięcej biegały. Punkty powinny więc prowadzić od jednego końca osiedla do drugiego.
  2. Muszę się sporo nabiegać. Skoro punkty są rozrzucone po skrajnych częściach osiedla, podczas ich rozkładania muszę odwiedzić każde z tych miejsc.
  3. Kilka zdjęć i punktów jest bardzo podobnych - na przykład kilka klatek oznaczonych numerem „1” - więc nie zawsze pamiętam, gdzie dokładnie rozłożyć dany punkt.
Klatka 1 - pierwsza lokalizacjaKlatka 1 - druga lokalizacja
Pierwsza klatka oznaczona numerem 1Druga klatka oznaczona numerem 1
  1. Dzieci szybko kończą grę, bo mają w sobie nieskończone pokłady energii i w błyskawicznym tempie biegają od punktu do punktu.

🛠️ Rozwiązanie

Z pomocą przyszedł mi nowy model od OpenAI - GPT-5.6 Sol. W jedno popołudnie stworzyliśmy aplikację, która rozwiązuje wszystkie te problemy.

1. 📷 Wgrywanie zdjęć

Aplikacja pozwala wgrać zdjęcia, które zrobiłem na osiedlu.

Ekran wgrywania zdjęć punktów

2. 📍 Rozmieszczanie punktów na mapie

Na podstawie metadanych zdjęć (współrzędnych GPS) aplikacja rozmieszcza punkty na mapie OpenStreetMap.

Punkty rozmieszczone na mapie

3. 🏃 Trasa dla dzieci

Aplikacja losuje wybraną liczbę zdjęć, a potem układa z nich trasę dla dzieci. W trybie „dużo biegania” stara się maksymalizować dystans między kolejnymi punktami, więc zamiast kółka po osiedlu powstaje zygzak/gwiazda.

Ekran generowania nowej trasy

Trasa dla dzieci na mapie

4. 🗺️ Trasa dla organizatora

Osobno wyznaczana jest optymalna trasa dla osoby chowającej punkty - tak, aby podczas ich rozkładania pokonała jak najkrótszy dystans.

Trasa dla osoby chowającej punkty

5. 🖨️ Materiały do druku

Karteczki z punktami przygotowane do drukuPlan gry dla organizatora
Karteczki z punktami przygotowane do drukuPlan gry dla organizatora

Aplikacja tworzy PDF z karteczkami do schowania oraz mapą dla organizatora.

6. 🧩 Zagadki

Do każdego punktu może zostać dodana zagadka, która ma nieco spowolnić dzieciaki i wydłużyć czas gry.

Zagadka wygenerowana dla jednego z punktów

🔗 Aplikacja

Niby nic wielkiego, ale dla gry z 14 punktami aplikacja wygenerowała trasę o długości 1,02 km dla dzieciaków i nieco ponad 200 metrów dla mnie. Wcześniej musiałem biegać po całym osiedlu, bo nie chciało mi się planować optymalnej kolejności rozkładania punktów.

Aplikację znajdziecie na GitHubie. Jej kod został w 100% wygenerowany przez AI. Podczas jej tworzenia używałem raczej prostych promptów, bo sam do końca nie wiedziałem, czego chcę. W doprecyzowaniu wymagań pomógł mi skill grilling.