Społeczność Minecrafta od lat projektuje farmy metodą prób i błędów, przekazując „najlepsze” układy z wiki na wiki i z filmu na film. Deweloper Serranegra postanowił zastąpić to zgadywanie matematyką i opublikował na GitHubie optifarm - narzędzie, które nie tylko proponuje optymalny układ bloków, ale dołącza formalny dowód, że nie istnieje żaden lepszy.
Jak to działa
Gracz podaje kształt dostępnego terenu oraz rodzaj uprawy, którą chce hodować. Narzędzie przekłada mechanikę gry na zestaw matematycznych ograniczeń - na przykład fakt, że trzcina cukrowa rośnie wyłącznie na polu sąsiadującym z wodą, a jeden blok wody nawadnia maksymalnie cztery przylegające pola - i przekazuje tak sformułowany problem do solvera OR-Tools CP-SAT od Google, narzędzia do programowania z ograniczeniami, używanego normalnie w logistyce i planowaniu produkcji.
W efekcie optifarm nie zgaduje, tylko przeszukuje przestrzeń rozwiązań w sposób wyczerpujący i zwraca układ, dla którego matematycznie nie da się uzyskać wyższej wydajności. Do tego dołącza certyfikat optymalności - dowód, że żadna inna konfiguracja bloków na tym samym terenie nie da lepszego wyniku.
Nie wszędzie warto
Autor narzędzia podkreśla, że nie ukrywa sytuacji, w których optymalizacja nic nie daje. Dla trzciny cukrowej matematyczny układ poprawia wydajność o około 13% względem typowych, „ludzkich” projektów. Dla kaktusów zysk jest znikomy, a dla pszenicy narzędzie w praktyce nie znajduje żadnej poprawy względem standardowych siatek nawadniania - i uczciwie to komunikuje, zamiast sztucznie zawyżać przydatność projektu.
Dla kogo jest to przydatne
Farmy to fundament wydajnej rozgrywki na survivalu i podstawa wielu konstrukcji redstone - od automatycznych hodowli po systemy zaopatrzenia całych baz. Zamiast kolejnego poradnika „10 najlepszych farm”, optifarm daje graczom technicznym i twórcom map narzędzie do rzetelnej weryfikacji własnych projektów albo generowania układów dopasowanych do nietypowego, niestandardowego terenu, którego żaden gotowy poradnik nie uwzględnia.
Projekt jest w pełni otwartoźródłowy i dostępny na GitHubie, więc bardziej zaawansowani gracze mogą go rozszerzyć o kolejne typy upraw czy zaimplementować własne ograniczenia terenowe. Na razie zestaw obsługiwanych farm jest wąski - trzcina cukrowa, kaktusy i pszenica - a narzędzie działa poza grą, jako zewnętrzny kalkulator, a nie mod czy dodatek instalowany bezpośrednio w Minecrafcie.
Kontekst
To nie pierwszy raz, gdy społeczność sięga po formalne metody optymalizacyjne do rozwiązywania problemów z Minecrafta - podobne podejścia stosowano już wcześniej do maszyn redstone czy generowania wzorów pikselartu. Optifarm pokazuje jednak, jak nisko wszedł próg wejścia w tego typu narzędzia: gotowe solvery jak CP-SAT są darmowe i dobrze udokumentowane, więc coraz więcej twórców community może w prosty sposób budować podobne, matematycznie rzetelne kalkulatory dla innych mechanik gry.
Komentarze