Monte Carlo 2 - Kurnik

02.12.2017

Ponownie wykorzystamy metodę Monte Carlo, ale tym razem do bardziej życiowego problemu. Gram ze swoimi dziećmi w grę planszową „Pełny kurnik”. Jest to prosta gra o dużej losowości. Mimo to można w niej zastosować kilka strategii.

Problem tkwi w wyborze optymalnej strategii. Policzenie prawdopodobieństwa przy rzucie dwiema kośćmi K6 wydaje się proste, ale ze względu na możliwość kar za dublety i możliwość wymiany trudno by było to policzyć. Metoda Monte Carlo nadaje się do tego dość dobrze. Policzenie, w ilu ruchach uzyska się zwycięstwo, jest dla komputera operacją tanią. Powtórzenie tego wielokrotnie dalej będzie tanie.

Zasady znajdziesz tu: instrukcja

Co tu można poznać?

  • Pisząc aplikację, wymyśl mechanizm, który pozwoli ci testować wiele strategii. Podpowiedź: obiekty i interfejsy.
  • To będzie pewnie aplikacja konsolowa CLI.  Zapoznaj się z jakąś biblioteką ułatwiającą tworzenie takich aplikacji. Najpopularniejszą jest obecnie symfony/console.
  • Poczytaj o funkcjach statystycznych w PHP. Do analizy wyników poza średnią przyda się pewnie też odchylenie standardowe.
  • Tablice nie są zbyt wydajne w PHP, szczególnie przy dużej liczbie danych. Zobacz, jakie klasy do przechowywania danych proponuje SPL.