Mario Kart było podstawą mojego dzieciństwa – moi przyjaciele i ja spędzaliśmy godziny po szkole jako Mario, Luigi i inne postacie z uniwersum Nintendo, ścigając się po kreskówkowych torach i rzucając w siebie rozpikselowanymi bananami. Jedną z rzeczy, która zawsze niepokoiła naszą małą grupę niedoszłych speedsterów, było pytanie, która postać jest najlepsza. Niektórzy przysięgali na szybkiego Yoshiego, inni twierdzili, że wielki, ciężki Bowser jest najlepszą opcją. Wtedy było tylko osiem opcji do wyboru; szybko do przodu do obecnej iteracji franczyzy Mario Kart i pytanie jest jeszcze bardziej skomplikowane, ponieważ można wybrać różne gokarty i opony, aby przejść z charakterem. Mój refleks w Mario Kart nie jest taki jak kiedyś, ale jestem lepszy w nauce o danych niż byłem jako czwartoklasista, więc w tym poście użyję danych, aby w końcu odpowiedzieć na pytanie „Kto jest najlepszą postacią w Mario Kart?”
To podchwytliwe pytanie, ponieważ istnieje mnóstwo potencjalnych konfiguracji postać / gokart / opona teraz i wszystkie one mają bardzo różne statystyki w wielu atrybutach. Ogólnie rzecz biorąc, nie jest możliwe, aby zoptymalizować wiele wymiarów jednocześnie, jednak niektóre konfiguracje są niezaprzeczalnie gorsze od innych. Pytanie dla aspirującego mistrza Mario Kart brzmi obecnie: „Jak mogę wybrać postać / gokarta / kombinację opon, która jest w pewnym sensie optymalna, nawet jeśli nie ma jednej „najlepszej” opcji?”. Aby odpowiedzieć na to pytanie, zwracamy się do jednego z rodaków Mario, dziewiętnastowiecznego włoskiego ekonomisty Vilfredo Pareto, który wprowadził pojęcie efektywności Pareto i związanej z nią granicy Pareto.
Koncepcja efektywności Pareto ma zastosowanie do sytuacji, w których istnieje skończona pula zasobów i wiele konkurujących wyników, które zależą od tego, jak te zasoby są przydzielane. Pareto efektywne” alokacje są te, w których nie jest możliwe, aby poprawić jeden wynik bez pogorszenia innego wyniku. Jest to łatwiejsze do wyjaśnienia za pomocą obrazu (dzięki uprzejmości Wikipedii).
Każde kółko to potencjalna alokacja zasobów, co w naszym przypadku oznacza rozkład punktów statystyk na różne atrybuty, takie jak waga, prowadzenie i trakcja (postacie w Mario Kart mają mniej więcej taką samą liczbę punktów statystyk, a różnią się jedynie ich rozkładem). Pozycja każdego koła reprezentuje wynik tego przydziału na dwóch konkurujących ze sobą wymiarach, na przykład prędkości i przyspieszenia. Alokacje w kolorze czerwonym leżą na granicy Pareto: dla każdej z tych alokacji, poprawa jednego wyniku wymaga zmniejszenia drugiego. Alokacje w kolorze szarym nie są Pareto-efektywne, ponieważ można poprawić oba wyniki przy innej alokacji zasobów. Prędkość i przyspieszenie to dwa najważniejsze atrybuty w Mario Kart, więc celem tej analizy jest zidentyfikowanie konfiguracji postać / gokart / opona, które leżą na granicy Pareto dla prędkości i przyspieszenia.
Eksploracyjna analiza danych
Zaczniemy od zbadania statystyk każdej postaci, gokarta i opony niezależnie, używając danych zebranych przez fanów. Jedną z cech charakterystycznych Mario Kart jest to, że choć istnieje kilkadziesiąt postaci, wiele z nich ma identyczne statystyki. Od tej pory będę odnosił się do klasy postaci (lub gokarta, lub opony) poprzez nazwę jednego z jej członków. Na przykład, na poniższej mapie ciepła wiersz oznaczony jako „Peach” opisuje również statystyki Daisy i Yoshi. Pełna lista klas znajduje się na końcu tego wpisu, na wypadek gdybyście chcieli sprawdzić, gdzie wyląduje Wasza ulubiona postać.
Istnieje siedem klas postaci. Przyjrzyjmy się jak wypadają ich statystyki.
Najbardziej oczywistym trendem jest kompromis między prędkością a przyspieszeniem: prędkość jest mniejsza niż przyspieszenie.między szybkością a przyspieszeniem: ciężkie postacie mają dobrą prędkość, ale słabe przyspieszenie, podczas gdy lekkie postacie mają szybkie przyspieszenie, ale niską prędkość maksymalną. Istnieją również różnice w innych statystykach, ale w dużej mierze prędkość i przyspieszenie dominują w wydajności konkretnego zestawu, więc będziemy ignorować resztę statystyk.
Gokarty i opony modyfikują podstawowe statystyki postaci: atrybuty ostatecznej konfiguracji są sumą statystyk postaci i modyfikatorów gokartów/opon. Tak jak w przypadku postaci, istnieją dziesiątki gokartów i opon, ale tylko kilka kategorii z różnymi statystykami.
Tendencje tutaj są mniej oczywiste, ale generalnie zgadzają się z tym, co widzieliśmy w statystykach postaci: ulepszenia w szybkości przychodzą kosztem przyspieszenia i na odwrót.
Naszym celem jest znalezienie wszystkich konfiguracji, które mają optymalną kombinację prędkości i przyspieszenia, więc następnym krokiem jest obliczenie statystyk dla każdej unikalnej kombinacji (postać, gokart, opona).
Znalezienie optymalnych konfiguracji
Z odrobiną Pythona możemy wyliczyć wszystkie kombinacje postać / gokart / opona i obliczyć ich atrybuty poprzez zsumowanie wartości z powyższych rysunków. Wyposażeni w statystyki dla każdej możliwej kombinacji, możemy wykreślić prędkość vs. przyspieszenie każdej możliwej konfiguracji i zidentyfikować te, które leżą na granicy Pareto.
Zgodnie z powyższym wykresem, optymalne konfiguracje stanowią dość mały podzbiór wszystkich możliwych ustawień. Możemy to określić ilościowo poprzez policzenie wszystkich różnych kombinacji (zauważ, że niektóre kombinacje nakładają się na siebie na rysunku). Dla zabawy policzmy też możliwe kombinacje zawierające wszystkie postacie, gokarty i opony z identycznymi statystykami.
Możliwe kombinacje: 149760
Unikalne kombinacje statystyk: 294
Optymalne kombinacje: 15
Konfiguracje optymalne stanowią zaledwie 5% potencjalnych unikalnych konfiguracji statystyk! Przyjrzyjmy się jak wyglądają te optymalne konfiguracje.
O ile nie stawiasz na przyspieszenie, wygląda na to, że ciężka postać jest najlepszym rozwiązaniem; dwie najcięższe klasy postaci (Wario i Donkey Kong) stanowią 11/15 konfiguracji Pareto-optymalnych.
Możemy również przyjrzeć się innym głównym statystykom dla każdej z tych konfiguracji.
Więc tak to wygląda, jeśli prędkość i przyspieszenie są Twoimi głównymi problemami, to jedna z tych 15 konfiguracji jest Twoim najlepszym wyborem.
Poznanie wszystkich konfiguracji
Czasami optymalna konfiguracja nie jest tym czego szukasz (powiedzmy, ponieważ twój współlokator zagroził, że przestanie grać jeśli nie będzie jakiegoś handicapu, aby wybrać losowy przykład). W takim przypadku, możemy zbadać wszystkie możliwe konfiguracje za pomocą szybkiej interaktywnej grafiki bokeh.