A Quantitative Study about the Hidden Risk of Using Time-Scheduler Mechanisms to Control Execution Flow in JADE-Based MAS Pier-Giovanni Taranti 1 , Ricardo Choren 2 , Carlos Jos´ e Pereira de Lucena 1 1 PUC-Rio, Rua M. de S˜ ao Vicente 225 – Rio de Janeiro/RJ, Brazil 2 SE/8 - IME, Pc ¸a General Tib´ urcio, 80 – Rio de Janeiro/RJ, Brazil {ptaranti,lucena}@inf.puc-rio.br, choren@ime.eb.br Abstract. The use of time-scheduler mechanisms in Multi-Agent Systems (MAS) is a usual way to solve execution control design issues. However, such mecha- nisms have a drawback which is usually left unattended at design time: there is no guarantee that a programmed execution will truly be carried out in the ex- pected moment. Thus this shortcoming remains hidden in the software project, since it can be only verified by specific non-functional tests. This paper presents a quantitative experiment that measures this problem when the system becomes loaded and when the number of agents increases for JADE-based MAS. Some observations about consequences of such a problem, its risks and mitigation actions are also presented. 1. Introduction Multi Agent System (MAS) are systems composed of multiple interacting agents, which are computer systems that are situated in some environment, and that are ca- pable of autonomous action in this environment in order to meet its design objectives [Wooldridge and Jennings 1995, Wooldridge 2002] Often, MAS is designed as an asynchronous system. The information exchange between agents is carried out using agents’ messages. By definition, agents are not suppo- sed to agree and comply with all the received messages, and this is because of the auto- nomy principle. Due to these complex characteristics, it is not possible to assure the time spent in an agent computation, and it is very hard to synchronize agents to guarantee that some actions will not be carried after or before a certain moment in time. To allow some control of the system synchronization for MAS implemented with JADE Platform [JADE 2010, Bellifemine et al. 2007], time schedulers can be used to tame the execution flow. A usual approach is the use of time-step and time-to-execution control mechanisms. The first one defines a waiting time between the start moment of two subsequent cycles. The second mechanism specifies a start moment for the cycle execution. The issue that arises from the usage of these approaches is the doubt if the de- signers could truly depend on it. Time-control mechanism uses the system time, often taken from the hardware clock, to verify if it is time to execute some action. The ve- rification is continually performed, following the system design. These approaches can assure that, in a normal execution, the needed code will be executed. However, there are