Creating Next Zone Prediction Model

For this tutorial, we need DynamicBayesianNetwork model to build next zone prediction model.

Designing Our Zone Player Count Vector


local zonePlayerCountVector = {

  {mallPlayerCount, bankPlayerCount, storePlayerCount, petrolStationPlayerCount},

}


Constructing Our Model


local NextZonePredictionModel = DataPredict.Model.DynamicBayesianNetwork.new()

Main Code


local previousZonePlayerCountVector = getZonePlayerCountVector()

local currentZonePlayerCountVector

local nextZoneProbabilityVector

local function onZoneEnter()

    currentZonePlayerCountVector = getZonePlayerCountVector()

    NextZonePredictionModel:train(previousZonePlayerCountVector, currentZonePlayerCountVector)

    nextZoneProbabilityVector = NextZonePredictionModel:predict(currentZonePlayerCountVector)

    assignGuards(nextZoneProbabilityVector)

    previousZonePlayerCountVector = currentZonePlayerCountVector

end