Ejemplo n.º 1
0
 /// <summary>
 /// 
 /// </summary>
 /// <param name="identifier"></param>
 /// <param name="state"></param>
 /// <param name="metricsEvaluator"></param>
 /// <param name="endCriteriaEvaluator"></param>
 /// <param name="getCallableGenes">Gets the IGEPGenes that can be called by the given IGEPGene.</param>
 public GEPEnvironment(IEnvironmentIdentifier identifier, IEnvironmentState state, 
     IMetricsEvaluator metricsEvaluator, IEndCriteriaEvaluator endCriteriaEvaluator,
     IComparer<IOrganism> organismValueComparer,
     ICallableGenesProvider callableGenesProvider)
     : base(identifier, state, metricsEvaluator, endCriteriaEvaluator, callableGenesProvider: callableGenesProvider, organismValueComparer: organismValueComparer)
 {
 }
 protected void UpdateEnvironmentViewsAgentActed(IAgent agent, IAction action,
                                                 IEnvironmentState state)
 {
     foreach (var view in views)
     {
         view.AgentActed(agent, action, state);
     }
 }
        /// <summary>
        /// 
        /// </summary>
        /// <param name="identifier"></param>
        /// <param name="state"></param>
        /// <param name="metricsEvaluator"></param>
        /// <param name="endCriteriaEvaluator"></param>
        /// <param name="getCallableGenes">Gets the IGEPGenes that can be called by the given IGEPGene.</param>
        protected GEPEnvironmentBase(IEnvironmentIdentifier identifier, IEnvironmentState state,
            IMetricsEvaluator metricsEvaluator, IEndCriteriaEvaluator endCriteriaEvaluator,
            IComparer<IOrganism> organismValueComparer,
            ICallableGenesProvider callableGenesProvider) :
            base(identifier, state, metricsEvaluator, endCriteriaEvaluator, organismValueComparer)
        {
            this.AllRegistryIdentifiers = GetAllRegistryIdentifiers();

            this.AllWriteableRegistryIdentifiers = GetAllWriteableRegistryIdentifiers();

            this.GlobalRegistryIdentifier = new RegistryIdentifier("Global");
            this.InputRegistryIdentifier = new RegistryIdentifier("Input");
            this.LocalGlobalRegistryIdentifier = new RegistryIdentifier("LocalGlobal");
            this.LocalRegistryIdentifier = new RegistryIdentifier("Local");
            this.ResultsRegistryIdentifier = new RegistryIdentifier("Results");
            
            this.CallableGenesProvider = callableGenesProvider;
        }
Ejemplo n.º 4
0
 public void ReactOnEnvironment(IEnvironmentState environment)
 {
     ITamagotchiState tamagotchiState;
     _environmentStateReaction.React(environment, State, out tamagotchiState);
     State = tamagotchiState;
 }