Example #1
0
        /// <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);
        }
Example #2
0
 public void ReinforcementByDoingTest()
 {
     _influenceModel.On = false;
     _influenceModel.ReinforcementByDoing(_belief.EntityId, 0, BeliefLevel.NoBelief);
     Assert.IsFalse(MainOrganization.ArtifactNetwork.ActorBelief.Exists(_agentId, _belief.EntityId));
 }