Академический Документы
Профессиональный Документы
Культура Документы
1
Esse guia tem por objetivo ajudar os menos familiarizados com o RoboCup Soccer Simulator 2D e com o sistema operacional Linux a instalar rapidamente o ambiente de simulao e comear a desenvolver um time. Caso ocorra algum problema ou caso voc queira adicionar mais informaes a esse guia, envie um e-mail para jackson@itandroids.com sendo o mais detalhista possvel.
2- Preparando diretrios:
Criar um diretrio rc em /root/ (home do usurio root). Places->Home Folder Boto Direito -> Create Folder Dentro do diretrio rc criar um diretrio 2d Dentro do diretrio 2d criar um diretrio fonte
3 - Baixando Arquivos
Baixar os seguintes pacotes para o diretrio /root/rc/2d/ rcssbase-10.0.11.tar.gz rcssserver-10.0.7.tar.gz manual.pdf http://sourceforge.net/project/showfiles.php?group_id=24184 rcssmonitor-9.3.4-0.i386.rpm http://www.ele.ita.br/~jackson/itandroids/files/rcssmonitor-9.3.4-0.i386.rpm Baixar o fonte do UVATrilearn para /root/rc/2d/fonte/ http://staff.science.uva.nl/~jellekok/robocup/2003/trilearn_base_sources-3.3.tar.gz
4- Descompactando Pacotes
Decompacte os pacotes .tar.gz no prprio diretrio onde eles esto (esquea o .rpm por enquanto) (boto direito -> Extract here) Ser criado um diretrio para cada pacote: /root/rc/2d/rcssbase-10.0.11/ /root/rc/2d/rcssserver-10.0.7/ e /root/rc/2d/fonte/trilearn_base_sources-3.3/
6- Instalando rcssmonitor
Agora d um duplo clique no arquivo rcssmonitor-9.3.4-0.i386.rpm O Yast deve aparecer, clique no boto <Install Packadge with YaST> Aguarde um pouco e o monitor estar instalado.
7- Testando o servidor
Reinicie seu computador ( Linux tambm precisa reiniciar). Abra um terminal: Applications->Sytem->Terminal->Gnome Terminal O servidor+monitor pode ser rodado do diretrio root mesmo, basta digitar: # rcsoccersim No prompt voc deve ver uma mensagem como essa:
rcssserver-10.0.7 Copyright (C) 1995, 1996, 1997, 1998, 1999 Electrotechnical Laboratory. 2000, 2001, 2002, 2003, 2004 RoboCup Soccer Server Maintenance Group. Using rcssbase-10.0.11 Hetero Player Seed: 712402 wind factor: rand: 0.000000, vector: (0.000000, 0.000000) Hit CTRL-C to exit Copyright (c) 1999 - 2001, Artur Merke <amerke@ira.uka.de> Copyright (c) 2001 - 2002, The RoboCup Soccer Server Maintainance Group. <sserver-admin@lists.sourceforge.net> reading options from file: /root/.rcssmonitor.confa new (v2) monitor connected
E o monitor deve ser aberto em uma nova janela, mais ou menos como na figura:
No terminal onde voc rodou o servidor aperte <CTRL>+<C>. O servidor deve parar e o monitor deve ser fechar sozinho...
8- Compilando um time
Compilar o time base UVATrilearn como compilar rcssbase e rcssserver, voc s no precisa instalar. Abra um terminal: Applications->Sytem->Terminal->Gnome Terminal V at o diretrio do UVA: # cd rc/2d/fonte/trilearn_base_sources-3.3/ Configure e compile o cdigo (no precisa instalar) # ./configure # make
9- Vendo um jogo
Abra um terminal: Applications->Sytem->Terminal->Gnome Terminal Rode o servidor: # rcsoccersim Abra um novo terminal para o time 1: Applications->Sytem->Terminal->Gnome Terminal V at o diretrio do time: # cd rc/2d/fonte/trilearn_base_sources-3.3/ Execute o script que carrega o time: # ./start.sh Se voc olhar no monitor ver o time "entrando em campo" Abra um novo terminal para o time 2: Applications->Sytem->Terminal->Gnome Terminal V at o diretrio do time: # cd rc/2d/fonte/trilearn_base_sources-3.3/ Execute o script que carrega o time, mas usando um outro nome para o time # ./start.sh localhost TESTE Se voc olhar no monitor ver o time "entrando em campo". Depois dos dois times entrarem em campo, aperte o boto "kick off" do monitor e a partida comear. Para iniciar o segundo tempo tambm preciso apertar "kick off". Cada tempo dura 3000 ciclos Para encerrar uma simulaoo basta apertar <CTRL>+<C> no terminal onde voc rodou o servidor. Caso no funcione direito (isso , caso voc tente iniciar uma nova simulao e o monitor abra a anterior), use o seguinte comando para "matar" a simulao: # killall rcssserver
Aperte o boto <Ok> De volta janela "Project Import Wizard", tela "Select directory", aperte o boto <Forward> Na tela seguinte (Project Type) o "Generic/Terminal project" deve estar selecionado, aperte o boto <Forward>
Na tela "Basic Information", complete o Project Author, mude as outras informaes se quiser e altere o "Programmming language" para: "Both C and C++" e aperte o boto <Forward> Na tela seguinte "Project Description" pode colocar uma descrio ou s apertar <Forward> Na tela "Additional Options" sugiro desmarcar a opo "Include GNU Copyright statement in file headings" aperte <Forward> Na tela Summary, apenas aperte <Apply> Pronto, pode agora abrir os arquivos fonte do Anjuta e edit-los. Para gerar um novo binrio, use a opo Build->Build All (ou Shift+F11).
O Anjuta vai abrir o arquivo src/PlayerTeams.cpp na funo SoccerCommand Player::deMeer5( ) //linha 60 aqui que o jogador "pensa" e "decide" o que vai fazer. Resumindo, o jogador faz vrias perguntar para o WorldModel (WM->isBeforeKickOff( ), WM->isKickOffUs( ), WM->getPlayerNumber(), WM->isBallKickable(), WM->getStrategicPosition()) e de acordo com a resposta, opta por uma ou outra deciso, chamando funes especficas para "gerar" o comando correspondente deciso. Por exemplo: soc = kickTo( posGoal, SS->getBallSpeedMax() ); // kick maximal //linha 115 O jogador tomou a deciso de chutar para o gol e chama a funo kickTo para gerar o comando correpondente ao chute para o gol com a mxima velocidade possvel. A idia do deMeer5_goalie parecida, s que as perguntas para o WorldModel, as decises e os comandos so um pouco diferentes. Na verdade as coisas so um pouquinho mais complicadas que isso, mas j um excelente comeo. Tente alterar algumas coisas no deMeer5 e no deMeer5_goalie para comear (mudando o critrio de deciso ou as aes tomadas), depois imagine novas situaes e novas decises (provavemente voc vai ter que criar novas funes no WorldModel para ajudar na tomada de deciso). Daqui pra frente com voc.
funcionalidades a mais para a anlise do jogo. Para isto deve-se baixar arquivos .rcg disponveis nos sites das competices. Para ver logs de jogos no Windows XP pode-se optar pelo logalyzer 0.5: http://dis.ijs.si/andraz/logalyzer/ Para us-lo, basta baixar o arquivo zip disponvel no site, descompact-lo e ento e s clicar no executvel. Com o programa aberto escolhe-se a opo open file e abrir o arquivo do jogo escolhido. Para ver os jogos no linux mesmo, uma boa opo o TeamAssistant 2003: http://www.sbcee.net/pres/download.htm Para este programa, basta baixar a verso para linux, descompactar e j esta pronto para usar, bastando executar o arquivo teamasist. No programa, no menu para Robocup->Open Log e escolhe-se o arquivo. Para maiores informaes sobre os players basta procurar no site por guias ou descries.