Paper presents The UaiSoccer2D team, a simulation team of robots soccer simulated at UFSJ - Federal University of Sao Joao del-Rei, Brazil. Paper is composed by a methodology, in which Software Engineering strategy for Multiagent Systems is presented.
Paper presents The UaiSoccer2D team, a simulation team of robots soccer simulated at UFSJ - Federal University of Sao Joao del-Rei, Brazil. Paper is composed by a methodology, in which Software Engineering strategy for Multiagent Systems is presented.
Paper presents The UaiSoccer2D team, a simulation team of robots soccer simulated at UFSJ - Federal University of Sao Joao del-Rei, Brazil. Paper is composed by a methodology, in which Software Engineering strategy for Multiagent Systems is presented.
1 , ERIVELTON G. NEPOMUCENO 1 , FERNANDA F. DE OLIVEIRA 1 . 1. UaiSoccer2D, UaiSoccer of Soccer of Robot Team, Group of Control and Modeling, UFSJ Federal University of So Joo Del-Rei, MG, Brazil. E-mails: andreottoni@ymail.com, nepomuceno@ufsj.edu.br, fernandafelipe.oliveira@gmail.com Abstract This article presents the UaiSoccer2D team, a simulation team of robots soccer simulated at UFSJ - Federal University of So Joo del-Rei, Brazil. The paper is composed by a methodology, in which Software Engineering strategy for multiagent systems is presented. Moreover, the article still describes the some abilities of the UvA Trilearn 2003 Base, adopted in the stage of implementation for the UaiSoccer2D.
Keywords UaiSoccer2D, multiagent systems, UvA Trilearn 2003 Base. 1 Introduction The GCOM Research Group of Control and Modeling at Federal University of So Joo del-Rei (UFSJ), Minas Gerais, Brazil, is a research group formed by engineerings, mathematicians, computer scientists, and psychologist. The UaiSoccer2D team was created in a multidisciplinary environment. The UaiSoccer 1 Robot Soccer Team was established at the beginning of the year of 2009 for undergraduate students of GCOM, who wanted to unify the knowledge acquired in the undergraduate to a development of useful technologies for society, coordinated by Prof. Erivelton Geraldo Nepomuceno. UaiSoccer integrates research areas such as Control, Multiagent Systems, Hardware Engineering, Software Engineering, Artificial Intelligence, Dynamic Systems, Mechanical Project and Material Engineering. The team also counts on the orientation and support of five professors of Electrical Engineering Department. In 2010, the UaiSoccer Team took part into the Robotic Competitions of the Small Size League, reaching a 4 th place in the LARC Latino American Competition of Robotics (Ottoni & Barbosa, 2010). In 2011 the team will participate for the first time in the Simulation 2D League, an so on, it is called as UaiSoccer2D. The UaiSoccer2D is based on UvA Trilearn 2003 (De Boer & Kok, 2002) and in software engineering for multiagent systems. approach (Pressman, 2004; Gonalves, 2006; Medeiros, 2004). 2 The UvA Trilearn 2003 Base Team
1. UaiSoccer is a composed noun by two words: Uai: interj. (chiefly Minas Gerais) well! (used in the begining or in the end of a phrase to express surprise) and Soccer wich is a common word in English.
It was chosen to use the code based on UvA Trilearn 2003 (De Boer & Kok, 2002) as it presents some basic abilities, as interception of ball, kick, dribbles and movement. Moreover, it offers implemented the connection with the RoboCup Soccer Server created through one socket, that it makes possible to send and to receive messages. The UaiSoccer2D possesses implemented different actions for each agent of the team. As it was explained in section 3 of this article, all the process of creation of the strategies of the UaiSoccer2D follows the stages of the methodology of software engineering for multiagent systems. In the stage of implementation of the methodology it is very important to identify the functions that will be useful to place in practical the considered model. After that is described some of the abilities of the UvA Trilearn 2003 Base that they are used by the UaiSoccer2D. 2.1 DirectPass This ability directly allows that to an agent pass the ball for another player. It can be of two forms: NORMAL or FAST. This method receives as parameter the player's position partner to occur the pass (De Boer & Kok, 2002). 2.2 ClearBall This ability allows that to an agent kick the ball for one determined area of the field. There are three alternatives of this method (De Boer & Kok, 2002): CLEAR_BALL_DEFENSIVE, CLEAR_BALL_OFFENSIVE or CLEAR_BALL_GOAL. 2.3 Mark This ability allows that the agent marks an adversary. There are the three possible forms for this method: It can be defined as MARK_BALL, MARK_GOAL, MARK_BISECTOR (De Boer & Kok, 2002). 2.4 Dribble This ability allows that an agent advances with the ball, keeping it inside of certain distance. It can be defined as DRIBBLE_FAST, DRIBBLE_SLOW or DRIBBLE_WITH_BALL (De Boer & Kok, 2002). 3 Software Enginnering For Multiagent Systems Planning and implementation of a system of high complexity is a high complicated task. A good example is the soccer of simulation robots 2D, that it involves eleven intelligent agents in each team. Each one of these agents possesses functions and different actions of the team. Therefore, the UaiSoccer needs to have as first scientific focus research development of software for agents and the adoption of a methodology software engineering for development of the strategies of the team 2D. For the UaiSoccer2D team a methodology was adopted that uses concepts of agents, and also a structure already known in the universe of the guided analysis objects well. Then, the adopted methodology possesses beddings of the Tropos methodologies (Bresciani, 2004; Gonalves, 2006; Silva, 2003) and UML (Larman, 2007; Medeiros, 2004). Tropos is a methodology of software engineering, in level of knowledge, for the programming guided the agents (Bresciani, 2004), based on two key features: a cognitive notion of agent and its characteristics are used in all the phases of the development. An important rule is the phase of analysis of requirements that precedes the specification (Gonalves, 2006). The UML is a language of modeling unified sufficiently used for the development of guided software objects. The UML defines a number of diagrams that allow to direct the focus for different aspects of the system in independent way. This facilitates to the communication of all the involved people in the process of development of a system - controlling, coordinating, analysts, developers - for presenting a vocabulary of easy agreement (Larman, 2007; Medeiros, 2004). The stages of the methodology adopted for the development of the plays of the UaiSoccer2D are: survey of requirements, detailed project, implementation and tests (Bresciani, 2004; Gonalves, 2006; Pressman, 2004). 3.1 Survey of Requirements The survey of requirements (Bresciani, 2004; Pressman, 2004). is subdivided into: I) initial requirements; ii) final requirements. Initial requirements (Gonalves, 2006): In this stage it is looked to understand the problem by means of a organizational scene. The exit of this period of training is an organization model that includes the principal actors and its respective dependences. These actors are characterized by possessing goals, that of isolated form, are capable to reach. These goals are reached had to the knowledge of the system and its dependences. Final requirements (Gonalves, 2006): The description of the system to be built inside of its operational environment is made in this stage, together with the necessary functions and abilities. This description shapes the system for a set of actors, which presents certain number of social dependences with other actors of the environment. Therefore, at a first moment of the survey of requirements, all are defined the possible actions for each agent in the team. As for example, if the agent goes or not to kick the goal. 3.2 Detailed Project The detailed project (Gonalves, 2006) made use of resultant specifications from survey of requirements. In the modeling of the detailed project, diagrams of the UML are used to represent capacities and plans, and to specify the interactions between the agents. To develop the diagrams software Open Source StarUML was adopted. The StarUML makes possible to create diagrams UML, and after that to extract them for an image format, as jpg, gif or bitmap. 3.3 Implementation In this phase occurs the implementation (Gonalves, 2006; Pressman, 2004) of the project in the programming platform. The programming language C++ is used. During this stage it is important to know functions specific of the team. If, for example, in the previous phases they had been defined that one determined agent must pass the ball at an accurate moment, must be known that the DirectPass (De Boer & Kok, 2002), described in 2.1, is an option for this goal. In case that no function already implemented before satisfies the necessity of the shaped strategy, the objective is then to create new abilities for the team. As agent was the case of the developed ability to verify the safe edge it to load the ball. This algorithm verifies in accordance with for the agent who is with the ball if he is safe to remain itself with the ball, in the distance that it is of the adversaries. 3.4 Tests The tests (Pressman, 2004) are necessary to all verify the consistency of the project. If found errors it must be come back in the previous stages of the methodology toward correct them. 4 Results For the accomplishment of the tests they had been selected randomly between teams of world-wide the 2010 and LARC 2008, a sample of 10 teams of simulation 2D, based in the UvA Trilearn 2003 [1,4]. Between these teams if they find the teams Brazilian Bahia_2010 (UNEB/2010), PetSoccer (UFES/2008), Gear (USP/2008), Gargalos (UFES/2008), Blitz Krieg (UFES/2008); and the international teams AUA (China/2010), Hfutengine (China/2010), Rione (Japan/2010), UvA Trilearn Base 2003 (Netherlands/2003), Robotoos (Iran/2008). These teams had been tested in 6 games against two developed strategies of the UaiSoccer2D with the methodology of software engineering for multiagent systems described in section 3 of this article. They had totalized 60 games for strategy, 120 games in the total. The total balance of goals of each teams was used as a data base for the application of the test.
Figure 1. Graph representing balance of goals, goals scored and goals suffered by the two strategies developed.
Figure 4. Graph representing balance of goals for the two strategies, according to the opponent. 5 Conclusion The UaiSoccer2D team has demonstrated good results in the tests against some teams, which took part into world-wide Robocup 2010. Research in software engineering of multiagent systems leads to the planned development of the game strategies. Moreover, the adopted methodology allows recognizing the errors of implementation and to come back in the previous stages toward correct them. UaiSoocer2D teams pretends to increase the research in software engineering for multiagent systems, incorporating logic fuzzy and neural networks. Acknowledgments The authors acknowledge financial support from FAPEMIG, CAPES, CNPq and UFSJ. References
Axelrod Axelrod, R. e Hamilton, W. D. (1981). The Evolution of Cooperation. Science, 211(4489):13901396. Bond, A. H. & L. Gasser (1988a). An analysis of problems and research in DAI. Bresciani, P., Giorgini, P., Giunchiglia, F., Mylopoulos, J., e Perini, A. (2004). Tropos: An agentoriented software development methodology. JAAMAS, 8:203 236. Burke, D. S., Epstein, J. M., Cummings, D. A. T., Parker, J. I., Cline, K. C., Singa, R. M., e Chakravarty, S. (2006). Individual-based computational modeling of smallpox epidemic control strategies. Academic Emergency Medicine, 13(11):1142 1149. De Boer e J. R. Kok, R.: The incremental development of a synthetic multi-agent system: The uva trilearn 2001 robotic soccer simulation -43 211 254 41 228 187 -100 -50 0 50 100 150 200 250 300 Strategy 1 Strategy 2 Balance Scored Suffered -110 -60 -10 40 90 1 2 3 4 5 6 7 8 9 10 Strategy 1 Strategy 2 team. Masters thesis, University of Amsterdam, The Netherlands (Feb 2002). Ferber, J. & L. Gasser (1991). Intelligence artificielle distribue. Tutorial Notes of the 11th Conference on Expert Systems and their Applitions (Avignon' 91), FR. Garcia, A. C. B. e Sichman, J. S. (2003). Agentes e Sistemas Multiagentes, captulo 11, pginas 269306. Gonalves, E. M. N. A boarding for specification of knowledge for cognitivos multiagent systems. Thesis of Master Degree, Program of After- Graduation in Electric Engineering, University of Santa Catarina, Florianpolis, 2006. Huhns, M. & M. Singh (1997). Agents and multiagents systems: Themes, approaches and challenges. Em Readings in Agents, pp. 1-13. Kok, J., Vlassis, N., Groen, F., Taghvazadeh, M.A., Users Manual, UvA Trilearn 2003, University of Amsterdam, The Netherlands. Lacerda, M. J., Texeira, W. W. M., e Nepomuceno, E. G. (2009a). Controle da propagao espacial de epidemias: Uma abordagem utilizando agente inteligente. IX Simpsio Brasileiro de Automao Inteligente, pginas 16. Lacerda, M. J., Texeira, W. W. M., Vieira, J., e Nepomuceno, E. G. (2009b). Alocao de agentes para controle de epidemias utilizando algoritmo gentico. In IX Simpsio Brasileiro de Automao Inteligente, pginas 16. Larman, Craig. Using UML and Standards. 3 ed. Bookman, 2007. Medeiros, Ernani S.: Developing software with UML 2.0: definitive. Pearson Makron Books 2004. Nascimeno Jr., C. L. e Yoneyama, T. (2000). Inteligncia Artificial em Controle e Automao. Edgard Blucher, 1st edio. Ogata, K. (2003). Engenharia de Controle Moderno. Prentice-Hall, 4a edio. Ottoni, A. L. C. ; Barbosa, L. B. (2010). TDP da Equipe UaiSoccer de Futebol de Robs/UFSJ: Informaes sobre o Sistema de Software e Estratgias Utilizados na Categoria Small-Size- F180. So Bernardo do Campo, SP.: Competio Latino America de Robtica, 2010 Pressman, R. (2004). Software Engineering: A Practioners Approach. McGraw-Hill Science. Rezende, Solange Oliveira (Coord.). (2005). Sistemas Inteligentes: fundamentos e aplicaes. Barueri-SP: Manole, xxxii, 525 p. Russell, S. J. e Norving, P. (2004). Inteligncia Artificial. Campus, 2nd edio. Silva, C. T. L. L. (2003). Detalhando o projeto arquitetural no desenvolvimento de software orientado a agentes: O caso Tropos. Dissertao de Mestrado, Ps-graduao em Cincia da Computao UFPE. Texeira, W. W. M., Teles, F., Barbosa, A. M., Silva, M. A., Nepomuceno, E. G., e Queiroz e Melo, M. F. A. (2009). Modelagem e controle de um sistema multiagente cooperativo: viso global e local aplicadas ao problema da alocao de recursos. In IX Simpsio Brasileiro de Automao Inteligente. Velagic, J., Lacevic, B., e Perunicic, B. (2006). A 3- level autonomous mobile robot navigation system designed by using reasoning/search approaches. Robotics and Autonomous Systems, 54:9891004.