View
221
Download
5
Category
Preview:
Citation preview
Jogos, Computação e Robôs
1
Kleber de Oliveira Andrade
• Doutorando em Engenharia Mecânica (EESC/USP)• Mestrado em Engenharia Mecânica (EESC/USP)• Bacharel em Ciência da Computação (EEP)• Mecânico de Usinagem (SENAI)• Jogador desde os 3 anos de idade
Áreas de Interesses• Programação de Jogos• Inteligência Artificial• Robótica
2
Trabalho de Conclusão de Curso (TCC)Um Algoritmo Evolutivo para Adaptação das Estratégias dos NPCs em um Jogo de Ação
Geração da população
aleatoriamente
Testes dos indivíduos no
ambiente
Seleção do indivíduo mais bem adaptado
Aplicação dos operadores genéticos
Geração da nova
população
3
Dissertação de MestradoSistema Neural Reativo para o Estacionamento Paralelo com uma única Manobra em Veículos de Passeio
4
Alguns Projetos ...
• Simuladores
• Serious Games
• Jogos mobile
5
O que são Jogos?
Jogos
Eletrônicos
Ambiente de Simulação
Regras
Objetivo
Motivação
Imersão
O filósofo HUIZINGA (1938) em sua obra Homo Ludens, definiu jogo como:
“Uma atividade voluntária exercida dentro de certos e determinados limites de tempo eespaço, segundo regras livremente consentidas, mas absolutamente obrigatórias, dotado deum fim em si mesmo, acompanhado de um sentimento de tensão e alegria e de umaconsciência de ser diferente de vida cotidiana. “
6
Histórico - De onde viemos?
1958: “Tennis for Two” jogo quefuncionava em um osciloscópio(Willy Higinbotham)
1961: “Space Wars” jogodesenvolvido no computadorPDP-1 por Steve Russel, o jogotinha 2Kb
7
... Como foi evoluindo?
1979: Asteroids
Donkey Kong (1984)
Wolf 3D (1992)
Década de 70 é considerada uma Odisséia Comercial,muitos jogos foram desenvolvidos.
Depois do Crash da Indústria em1983/84, surgiu uma revolução nosjogos
A década de 90, muitosconsoles foram lançados eem 1992 uma nova evoluçãocom os jogos FPS.
8
... Onde estamos ?
The Sims 4 (2014)
Assassin's Creed Unity (2014)
Qualidade gráfica evidência aevolução no desenvolvimento dejogos, assim como sua InteligênciaArtificial.
Jogos que envolvem centenas deprofissionais das mais diversasáreas, e altos orçamentos.
9
... Como os joysticks evoluíram?
http://play.bloodedbythought.org/index.php?title=Joystick
10
... Para onde estamos caminhando?
11
Desenvolvimento de Jogos
12
Ideias e Rascunhos
• Ideias• Sonhos e brainstorm
• Grandes ideias pode parecer ridículas no começo
• Rascunho so Jogo• Personagens, fases, itens, fluxo de tela
• Facilita o projeto
13
Game Design Document (GDD)
GDD
Personagens
Interface
Músicas
CenáriosRegras
Lógica
História
14
ConteúdoProdução de Arte 2D
Pixel Art (Spritesheet)
Fotografias 3D Pré-redenrizado
UI (User Interface)Tile / Tilemap / Layer
15
ConteúdoProdução de Arte 3D (Sketch)
16
ConteúdoProdução de Arte 3D (Modelagem)
17
ConteúdoProdução de Arte 3D (Texturização)
18
ConteúdoProdução de Arte 3D (Animação)
FRAMES DAS
ANIMAÇÕES
000-050: idle
051-090: running
091-116: falling
122-137: dizzy
138-170: sad
171-206: happy
19
Integração (arte e computação)Linguagens, APIs, Frameworks, Engines
20
Publicação
21
Disciplinas / Equipe
• Programação• Estrutura de dados• Inteligência Artificial (IA)
• Engenharia de Software
• Computação Gráfica
• Música
• Matemática
• Física
• Interação Humano-Computador
• Educação e Psicologia
• Outros...
Gerente de projeto (Project Manager)
Arquiteto chefe (Lead Architect)
Projetistas de jogos (Game Design)
Planejador de software (Software Planner)
Projetistas de níveis/fases
Artistas gráficos
Programadores
Músicos e sonoplastas
Testadores
22
Eventos (SBGames)
23
Eventos (Global Game Jam)
24
Outros eventos
25
Campus Party
26
Maratona de Programaçãohttp://acm.uva.es http://maratona.ime.usp.br/https://www.codeeval.com/http://olimpiada.ic.unicamp.br/
O que devo estuda?
Estrutura de Dados
Geometria e Álgebra
Strings
Ordenação e Pesquisa
Grafos e Busca
27
Desafio SEBRAE
28
Robô?
• Origem da palavra Robô• O termo robot (robô) foi utilizado pela primeira vez pelo escritor Karel Capek,
em 1920, quando escreveu uma história com o nome “Rossum’s Universal Robots”. Em tcheco a palavra robota tem o significado de “trabalho escravo”.
• Dicionário• 1. Aparelho mecânico que imita os movimentos humanos. • 2. Fig. Pessoa sem vontade própria, geralmente sobre o comando de outrem.
• Wikipedia• Um robô (ou robot) é um dispositivo, ou grupo de dispositivos,
eletromecânicos ou biomecânicos capazes de realizar trabalhos de maneira autônoma, pré-programada, ou através de controle humano.
29
Mito sobre os robôs
“Robôs irão roubar o seu emprego!”
• Agumento contrário: o corpo humano não foi feito para suportar atividades repetitivas, ou que requerem concentração continuada por várias horas. O melhor lugar do homem é na tomada de decisões e supervisão.
30
Sistemas Robóticos (Realidade)
Honda (2011) Sahin e Guvenc (2007) Sony (2011)
iRobot (2011) Krebs et al. (2008) NÃO (2011)
32
Linha do tempo da Robótica
• Fases da pesquisa em robótica
• Até os anos 80 (Promessas): em vinte anos, robôs móveis poderão realizar qualquertipo de tarefa de forma segura, comunicar com os humanos e “protegê-los”.
• Anos 90 (Muito trabalho e desilusão): Grandes desenvolvimento na área da robóticamóvel, com resultados experimentais tanto motivadores como frustrantes. Expansãodas modalidades de robôs.
• 2000 à atual (Amadurecimento): Mudança de foco, com reforço das seguintesqualidades; assistência, colaboração, tele-operação e entretenimento (Robôs deserviços).
33
Vídeos Apresentados
• WINTRA: https://www.youtube.com/watch?v=geRVtBy_MFA
• Swarm of Nano Quadrotors: https://www.youtube.com/watch?v=YQIMGV5vtd4
• Modular Prosthetic Limb: https://www.youtube.com/watch?v=9NOncx2jU0Q
• Festo BionicKangaroo: https://www.youtube.com/watch?v=mWiNlWk1Muw
• Ping Pong: https://www.youtube.com/watch?v=imVNg9j7rvU
• Micromouse Robot: https://www.youtube.com/watch?v=nO2zqGwzsj0
• Top 10 RoboCore: https://www.youtube.com/watch?v=UUbdSjEvsdw
• NASA & IHMC Robotic – Exoskeleton: https://www.youtube.com/watch?v=gDJp8s70Jw4
• MIT Robotic Cheetah: https://www.youtube.com/watch?v=XMKQbqnXXhQ
• DARPA Grand Challenge: https://www.youtube.com/watch?v=uWLjgs2CEyE
• CubeStormer II: https://www.youtube.com/watch?v=_d0LfkIut2M
• Quadrocopter Ball Juggling: https://www.youtube.com/watch?v=3CR5y8qZf0Y
• Self-replicating blocks: https://www.youtube.com/watch?v=gZwTcLeelAY
• See Robot Dog: https://www.youtube.com/watch?v=NtU9p1VYtcQ
• Impedance Control: https://www.youtube.com/watch?v=WS1gSRcJbJQ
• Smart Trashbox: https://www.youtube.com/watch?v=NqDTE6dHpJw
34
Eventos em Robóticahttp://www.robocup.org/http://www.obr.org.br/http://www.challenge.toradex.com/
35
O que são Robôs de Serviços?
• Robôs de Serviços• Robôs de serviço são equipamentos que operam de forma semi ou totalmente
autônoma realizando serviços úteis ao bem-estar dos seres humanos.
• Areas de aplicação (exemplos)• Robôs de domético (limpeza de casa, jardim, piscina, etc.)• Robôs de inspeção de cabos, dutos, etc.• Robôs médicos (assistentes de cirurgias, etc.)• Robôs assistivos (para auxiliar pessoas)• Robôs para entretenimento
• E a reabilitação?
36
Reabilitação Robótica?
• Reabilitação• É a área médica que tem por objetivo principal restaurar as funções dos
pacientes, o máximo possível (Dikke Van Dalle).
• Reabilitação Robótica• São robôs de serviços que operam de forma semi ou totalmente autônoma
prestando serviços úteis ao bem-estar dos seres humanos com deficiências (R.q. Van der Linde, 2003).
37
Por que Reabilitação Robótica?
• Nós temos uma necessidade crescente de tratamento• Pessoas mais idosas• Cada vez mais doentes
• Reabilitação Robótica pode ser eficaz• Motivador• Preciso• Objetivo• Adaptativo
• Reabilitação Robótica também permite atendimento domiciliar
38
Robôs para reabilitação
Em 2010, o uso de terapia assistida por robôs aplicada na redução dos danos causados por AVCs nas extremidades superiores foi recomendado pela American Heart Association (AHA). A abordagem recebeu a mais alta classificação (Nível
A), tanto para pacientes ambulatoriais como hospitalizados, respectivamente, Classe I e II.
MIT Manus6 DOF
Controle de Impedância
Gentle4 DOF
Controle de Admitancia
Lokomat
Controle de Posição
Rutgers Ankle3 DOF
39
Tipos de controle de movimentos
• Controle de posição
• Controle de força
Controle de posição
• Impedância
• Admitância
• Intrinseco
Controle de posição/força
• Forçado
• BalisticoPeriódico
A
B
A
B
A = B
40
Interação Humano-Robô Segura
41
Pong (XNA)
ANDRADE, K. O. ; ITO, GISELE G. ; JOAQUIM, RICARDO C. ; JARDIM, BRUNO ; SIQUEIRA, ADRIANO A.G. ; CAURIN, GLAUCO A.P. ; BECKER, MARCELO . A ROBOTIC SYSTEM FOR REHABILITATION OF DISTAL RADIUS FRACTURE USING GAMES (BEST PAPER). In: 2010 Brazilian Symposium on Games and Digital Entertainment (SBGAMES), 2010, Florianpolis. 2010 Brazilian Symposium on Games and Digital Entertainment. p. 30-37.
ANDRADE, K. O. ; JARDIM, B. ; JOAQUIM, R. C. ; ITO, G. G. ; SIQUEIRA, A. A. G. ; CAURIN, G. A. P. ; AMARAL, L. M. S. . A GAME-BASED FRAMEWORK FOR ROBOTIC REHABILITATION. In: 14th International Symposium on Dynamic Problems of Mechanics - DINAME, 2010, São Sebastião. Anais do DINAME 2011, 2010. p. 1-10.
42
Pong Adaptativo (RNA)
350370390410430450470490510530550
1 2 3 4 5 6 7 8 9 10
Ball
Spee
d (P
ixel
/s)
Game Session Sequence Number
Experimental Results - 5 Subjects
Sub#4
Sub#5
Sub#3
Sub#2
Sub#1
CAURIN, G. A. P. ; SIQUEIRA, A. A. G. ; ANDRADE, K. O. ; JOAQUIM, R. C. ; KREBS, H. I. . ADAPTIVE STRATEGY FOR MULTI-USER ROBOTIC REHABILITATION GAMES. In: 2011 33rd Annual International Conference of the IEEE Engineering in Medicine and Biology Society, 2011, Boston. 2011 Annual International Conference of the IEEE Engineering in Medicine and Biology Society. v. 1. p. 1395-1398.
43
Diversos (XNA) – Alunos de IC/TCC
ANDRADE, K. O. ; OLIVEIRA, F. L. ; VIEIRA, L. C. ; JARDIM, B. ; SIQUEIRA, A. A. G. ; SANTOS, F. R. P. . DEVELOPMENT OF SERIOUS GAMES FOR ROBOTIC REHABILITATION OF ANKLE MOVEMENTS. In: 21st International Congress of Mechanical Engineerig, 2011, Natal - RN. 21st International Congress of Mechanical Engineerig - COMBEM 2011, 2011. v. 1. p. 1-10.
CONSONI, L. J. ; SANTORO, F. G. ; Siqueira, A. A. G. ; ANDRADE K.O. ; JOAQUIM, R. C. ; CAURIN, G. A. P. . A COMPUTATIONAL GAME FOR ROBOTIC REHABILITATION AND MOTOR LEARNING STUDIES. In: 5th Workshop on Applied Robotics and Automation RoboControl 2012, 2012, Bauru-SP. 5th Workshop on Applied Robotics and Automation - RoboControl2012, 2012.
44
Downhill Race We Go!
Game Client
Receiver
Dispatcher
Motor Controllers
Monitor
Server
Dispatcher
Receiver
MC 1
MC 2
ANDRADE, K. O. ; MARTINS, JOSE ; CAURIN, GLAUCO A. P. ; JOAQUIM, RICARDO C. ; FERNANDES, GUILHERME . RELATIVE PERFORMANCE ANALYSIS FOR ROBOT REHABILITATION PROCEDURE WITH TWO SIMULTANEOUS USERS. In: Biomedical Robotics and Biomechatronics(BioRob), 2012 4th IEEE RAS & EMBS International Conference on 2012. p. 1530-1534.
45
Roll the Ball
ANDRADE, K. O. ; FERNANDES, GUILHERME ; MARTINS, JOSE ; ROMA, VIVIANE C. ; JOAQUIM, RICARDO C. ; CAURIN, GLAUCO A. P. . REHABILITATION ROBOTICS AND SERIOUS GAMES: AN INITIAL ARCHITECTURE FOR SIMULTANEOUS PLAYERS. In: 2013 ISSNIP Biosignals and Biorobotics Conference: Biosignals and Roboticsfor Better and Safer Living (BRC), 2013, Rio de Janerio. 2013 ISSNIP Biosignals and Biorobotics Conference: Biosignals and Robotics for Better and Safer Living (BRC). p. 1.
PIRES, F.A.; SANTOS, W.M.; DE O ANDRADE, K.; CAURIN, G.A.P.; SIQUEIRA, A.A.G., ROBOTIC PLATFORM FOR TELEREHABILITATION STUDIES BASED ON UNITY GAME ENGINE," Serious Games and Applications for Health (SeGAH), 2014 IEEE 3rd International Conference on , vol., no., pp.1,6, 14-16 May 2014
PLAYER 1
PLAYER 2
46
Modelagem Dinâmica de Jogador
ANDRADE, K.D.O.; FERNANDES, G.; CAURIN, G.A.P.; SIQUEIRA, A.A.G.; ROMERO, R.A.F.; DE PEREIRA, R.L., DYNAMIC PLAYER MODELLING IN SERIOUS GAMES APPLIED TO REHABILITATION ROBOTICS (BEST PAPAER), Robotics: SBR-LARS Robotics Symposium and Robocontrol (SBR LARS Robocontrol), 2014 Joint Conference on , vol., no., pp.211,216, 18-23 Oct. 2014 doi: 10.1109/SBR.LARS.Robocontrol.2014.41
47
Estrutura do Sistema
Teoria de Fluxo criada por Csikszentmihalyi (1970)
48
Estrutura (Robô Jogo)
49
Estrutura (Jogo Banco de Dados)
MORETTI, C. B. ; ANDRADE, K. O. ; CAURIN, G. A. P. . PHYSIOTHERAPY SUPPORT WEB-BASED SYSTEM FOR REHABILITATION ROBOTICS: AN INITIAL ARCHITECTURE. In: 22nd International Congress of Mechanical Engineering (COBEM 2013), 2013, Ribeirão Preto - SP. 22nd International Congress of Mechanical Engineering (COBEM 2013), 2013. p. 1171-1180.
50
Robô de Punho – Versão 2
52
Dicas Finais
• Programar exige treino (C, C++, C#, Java, Python, etc...)
• Codificar de forma limpa (Clean Code)
• Use padrões de projetos (Design Patterns)
• Projetar o sistema antes de codificar (UML)
• Realize testes no código
• Versionar códigos (git, mercurial, svn)
• Estudem matemática (usem matlab, scilab, mathematic, etc)
• Estudem sistemas embarcados (arduino, raspiberry pi, lego mindstorm, ...)
• Estudem interação homem-máquina (usabilidade)
53
54
Obrigado !Kleber de Oliveira Andrade
pdjkleber@gmail.com
Ao infinito e além!
55
Recommended