示例#1
0
        protected override IState UpdateState(IPercept p)
        {
            var dp = (DynamicPercept)p;

            state.SetAttribute(DynAttributeNames.AgentLocation, dp
                               .GetAttribute(DynAttributeNames.PerceptIn));

            return(state);
        }
示例#2
0
            protected override DynamicState updateState(DynamicState state,
                                                        IAction anAction, IPercept percept, MODEL model)
            {
                LocalVacuumEnvironmentPercept vep = (LocalVacuumEnvironmentPercept)percept;

                state.SetAttribute(ATTRIBUTE_CURRENT_LOCATION,
                                   vep.getAgentLocation());
                state.SetAttribute(ATTRIBUTE_CURRENT_STATE,
                                   vep.getLocationState());
                // Keep track of the state of the different locations
                if (VacuumEnvironment.LOCATION_A.Equals(vep.getAgentLocation()))
                {
                    state.SetAttribute(ATTRIBUTE_STATE_LOCATION_A,
                                       vep.getLocationState());
                }
                else
                {
                    state.SetAttribute(ATTRIBUTE_STATE_LOCATION_B,
                                       vep.getLocationState());
                }
                return(state);
            }
示例#3
0
            protected override DynamicState UpdateState(DynamicState envState,
                                                        IAction anAction, IPercept percept, IModel model)
            {
                VacuumEnvPercept vep = (VacuumEnvPercept)percept;

                envState.SetAttribute(AttributeCurrentLocation, vep
                                      .GetAgentLocation());
                envState.SetAttribute(AttributeCurrentState, vep
                                      .GetLocationState());
                // Keep track of the state of the different locations
                if (VacuumEnvironment.LocationA == vep.GetAgentLocation())
                {
                    envState.SetAttribute(AttributeStateLocationA, vep
                                          .GetLocationState());
                }
                else
                {
                    envState.SetAttribute(AttributeStateLocationB, vep
                                          .GetLocationState());
                }
                return(envState);
            }
示例#4
0
        //
        // PROTECTED METHODS
        //
        protected override void updateState(IPercept p)
        {
            DynamicPercept dp = (DynamicPercept)p;

            state.SetAttribute(DynAttributeNames.AGENT_LOCATION, dp.GetAttribute(DynAttributeNames.PERCEPT_IN));
        }