Exemplo n.º 1
0
 public override void Init()
 {
     base.Init();
     m_patternDefinitionSet    = new List <PRPatternDefinition>();
     m_patternsDefinitionsDict = new Dictionary <string, PRPatternDefinition>();
     LoadDefinitionSet();
     if (!LoadNeuronalNet())
     {
         m_neuronalNetwork = new PartyBPN(m_defaultNeuronNumberInput - 1, Mathf.RoundToInt((m_defaultNeuronNumberInput + 5) / 2), 5, m_defaultLearningRate, m_defaultTheta, m_defaultSigmoidElastic, m_defaultMomentum);
     }
 }
Exemplo n.º 2
0
    private bool LoadNeuronalNet()
    {
#if UNITY_ANDROID
        string json = m_neuronalNetworkTextAsset.text;
#else
        string json = File.ReadAllText(Application.dataPath + "/" + m_pathToNeuronalNetworkFile);
#endif
        //string json = File.ReadAllText(Application.dataPath+"/"+m_pathToFile);
        m_neuronalNetwork = new PartyBPN();
        if (!string.IsNullOrEmpty(json))
        {
            Dictionary <string, object> data = (Dictionary <string, object>)MiniJSON.Json.Deserialize(json);
            m_neuronalNetwork.Deserialize(data);
            return(true);
        }
        else
        {
            return(false);
        }
    }
Exemplo n.º 3
0
 /// <summary>
 /// Try to train the current BPN with a list of patterns;
 /// </summary>
 /// <param name="points"></param>
 /// <param name="name"></param>
 public IEnumerator StartBPNTraining(List <PRPatternGroup> patternDefinitions, int numberOfEpochs)
 {
     m_neuronalNetwork = new PartyBPN(m_defaultNeuronNumberInput - 1, Mathf.RoundToInt((patternDefinitions.Count + m_defaultNeuronNumberInput) / 2), patternDefinitions.Count, m_defaultLearningRate, m_defaultTheta, m_defaultSigmoidElastic, m_defaultMomentum);
     return(m_neuronalNetwork.StartTraining(patternDefinitions, numberOfEpochs));
 }