Yatzy Online

Om Fictional Factory Inc

Fictional Factory Inc är en Android -spelutvecklare som har varit aktiv sedan 2012. Den nuvarande appportföljen innehåller 2 spel som alla är listade i kategorin "Board". Två av de viktigaste apparna från Fictional Factory Inc är Yatzy Online och Farkle Online. Båda har installerats mer än 100 tusen gånger.

Utmaningen

Yatzy Online var det vi kallar på Miracle Mill som en ”born in the cloud” -lösning, vilket innebär att appen sedan befruktningen har använt kraftfull molnteknik för att förbättra funktionalitet, skala och kontrollkostnader. Vi har specifikt använt Amazon Web Services efter följande iterativa tidslinje, Distribuera till Amazon EC2 2012. Migrera från MongoDB till Amazon DynamoDB. Aktivera mänsklig dator med Amazon SageMaker. Konvertera beräkna till AWS Lambda. Vi har använt detta tillvägagångssätt för att uppnå följande kärnresultat, för att iterativt förbättra spelfunktionaliteten, tillåta att en stor mängd data snabbt blir tillgänglig och skapa en trovärdig datorspelare.

image-a094628e3631

Lösningen

År 2019 var en av de ständiga utmaningar som projektet stod inför begränsningar i den nuvarande datorspelaren. Således skapades en plan för att använda AWS Machine Learning-tjänster för att optimera AI och mänskligt beteende.

Den nuvarande datorspelaren gjorde kategorival med hjälp av förberäknade kombinationer och några beräkningar på språng. Eftersom beräkningar tar nästan alla tärningskombinationer har datorspelaren nästan alltid förutsättningar att vinna spelet, vilket skulle minska den totala användarupplevelsen.

På grund av det faktum att Yatzy Online redan använder massor av AWS-tjänster och är mycket beroende av detta ekosystem, var det logiska sättet att uppgradera applikationen att fortsätta lägga till AWS-tjänster. Vi arbetade för att bedöma vilka AWS-tjänster som kunde möjliggöra byggande och utbildning av maskininlärningsmodeller.

Flera AWS-tjänster användes för att samla in data, omvandla den, utbilda en ML-modell och distribuera den. Det första steget är att samla in data från användarna, dvs. spelare i spelet Yatzy Oline. För detta användes Amazon Kinesis Data Firehose, vilket ger ett enkelt sätt att tillförlitligt ladda strömningsdata till Amazon Simple Storage Service (S3). Därefter filtrerades data och transformerades till det format som behövs för nästa steg med hjälp av AWS Glue, en fullständigt hanterad ETL-tjänst (Extract, transform and load) och sparas i Amazon Simple Storage Service (S3) i CVS-format.

Hela processen med ML-modellval, utbildning, validering, hyperparametertuning och distribution gjordes med Amazon SageMaker. Jupyter-bärbara datorer användes, tillhandahållna av Amazon SageMaker-bärbara datorer med helt elastiska underliggande beräkningsresurser. Flera inbyggda algoritmer testades och två, Linear Learner och XGBoost, valdes ut som bra och visade sig vara väl lämpade för det givna klassificeringsproblemet i flera klasser. Inställningen av hyperparametern gjordes också med Amazon SageMaker, dvs. genom att köra ett hyperparameteravstämningsjobb med slumpmässig strategi.

För distribution av algoritmen skapades en Amazon SageMaker-slutpunkt, en AWS Lambda-funktion och en API-gateway. AWS Lambda-funktionen tar data som skickas från användaren, via API-gatewayen, förvandlar den till rätt format och åberopar Amazon SageMaker-slutpunkten. Efter detta skickas förutsägelsen, dvs. den kategori som ska väljas tillbaka till användaren.

image-7eb4f8e49212

Fördelar och resultat

Resultaten av valideringen av modellen visade hög klassificeringsnoggrannhet. Dessutom bygger maskininlärningsmodellen sin produktion helt och hållet på hur den mänskliga spelaren spelar spelet, så det känns mycket mer mänskligt. Med tanke på att projektarbetet kommer att fortsätta kommer framtida mål att optimera befintliga tjänster, med en fortsättning på att lägga till mer ML AWS-tjänster.

Om Miracle Mill

På Miracle Mill är vi passionerade entreprenörer och ingenjörer som arbetar med att använda modern banbrytande molnteknik. Vi är ett molnföretag som fokuserar på att bygga skalbara applikationer med AWS-molntjänster.

Vi tillhandahåller molnkonsulttjänster med en Agil iterativ process för mjukvaruutveckling och DevOps- metoder.

Location-Miracle Mill AGMiracle Mill AG Zugerstrasse 74 6340 Baar, Switzerland

Location-Miracle Mill Sverige ABMiracle Mill Sverige AB Drottninggatan 86 111 36 Stockholm, Sweden

Location-Miracle Mill DOOEL MakedonienMiracle Mill DOOEL Makedonien Sofiska 16 1000 Skopje, North Macedonia

Location-Miracle Mill EOODMiracle Mill EOOD Dimitar Solunski 32 2700 Blagoevgrad, Bulgaria