public void Initialize() { _cognitiveArchitecture = new CognitiveArchitecture { KnowledgeAndBeliefs = { HasBelief = true, HasKnowledge = true }, MessageContent = { CanReceiveBeliefs = true, CanReceiveKnowledge = true }, InternalCharacteristics = { CanLearn = true, CanForget = true, CanInfluenceOrBeInfluence = true } }; _knowledge = new Knowledge(Network, MainOrganization.Models, "1", 1); var modelEntity = new BeliefModelEntity { On = true }; _beliefsModel = new BeliefsModel(_agentId, modelEntity, _cognitiveArchitecture, Network, MainOrganization.Models.Generator); _belief = new Belief(Network, 1, RandomGenerator.RandomUniform, BeliefWeightLevel.RandomWeight); _beliefBitsNonNeutral = _belief.InitializeBits(MainOrganization.Models.Generator, BeliefLevel.NeitherAgreeNorDisagree); _beliefBitsNeutral = _belief.InitializeBits(MainOrganization.Models.Generator, BeliefLevel.NoBelief); _actorBelief = new ActorBelief(Network.ActorBelief, _agentId, _belief.EntityId, BeliefLevel.NeitherAgreeNorDisagree); _taskBits.SetMandatory(new byte[] { 0 }); _taskBits.SetRequired(new byte[] { 0 }); }
/// <summary> /// Initialize Beliefs model : /// update NetworkBeliefs /// </summary> /// <param name="agentId"></param> /// <param name="entity"></param> /// <param name="cognitiveArchitecture"></param> /// <param name="network"></param> /// <param name="model"></param> public BeliefsModel(IAgentId agentId, BeliefModelEntity entity, CognitiveArchitecture cognitiveArchitecture, GraphMetaNetwork network, RandomGenerator model) { if (network == null) { throw new ArgumentNullException(nameof(network)); } if (cognitiveArchitecture == null) { throw new ArgumentNullException(nameof(cognitiveArchitecture)); } _agentId = agentId; _beliefNetwork = network.Belief; _actorBeliefNetwork = network.ActorBelief; _knowledgeAndBeliefs = cognitiveArchitecture.KnowledgeAndBeliefs; _messageContent = cognitiveArchitecture.MessageContent; _model = model; Entity = entity ?? throw new ArgumentNullException(nameof(entity)); }