Being able to trust in a system behavior is of prime importance, particularly within the context of critical applications as embedded or real-time systems. We want to ensure that a multiagent system has a behavior corresponding to what its developers expect. The use of static techniques to validate a system does not guarantee it against the occurrence of errors in certain configurations. So, we propose an additional approach of dynamic self-monitoring and selfregulation in order that an agent might control, in real condition, its own behavior. This paper presents our approach of agent control and the generation of self-controlled agents using the observer technique in order to verify that their behavior respect a set of laws throughout their execution.