public void GetBeliefIdFromKnowledgeIdTest() { Assert.IsNull(_beliefsModel.GetBeliefIdFromKnowledgeId(_knowledge.EntityId)); var belief = new Belief(Network, _knowledge, _knowledge.Length, RandomGenerator.RandomUniform, BeliefWeightLevel.RandomWeight); _beliefsModel.AddBeliefFromKnowledgeId(_knowledge.EntityId); Assert.AreEqual(belief.EntityId, _beliefsModel.GetBeliefIdFromKnowledgeId(_knowledge.EntityId)); }
/// <summary> /// Missing belief is guessed /// The worker possibly complete the task incorrectly /// and learn by doing /// </summary> /// <param name="task"></param> /// <param name="blocker"></param> public void RecoverBlockerIncompleteBeliefByGuessing(SymuTask task, Blocker blocker) { if (task is null) { throw new ArgumentNullException(nameof(task)); } if (blocker == null) { throw new ArgumentNullException(nameof(blocker)); } RecoverBlockerIncompleteByGuessing(task, blocker, Environment.MainOrganization.Murphies.IncompleteBelief, BlockerResolution.Guessing); if (task.Incorrectness == ImpactLevel.Blocked) { return; } var knowledgeId = (IAgentId)blocker.Parameter; var beliefBit = (byte)blocker.Parameter2; var beliefId = BeliefsModel.GetBeliefIdFromKnowledgeId(knowledgeId); InfluenceModel.ReinforcementByDoing(beliefId, beliefBit, Cognitive.KnowledgeAndBeliefs.DefaultBeliefLevel); }