jogos, computação e robótica

Post on 21-Jul-2015

221 Views

Category:

Technology

5 Downloads

Preview:

Click to see full reader

TRANSCRIPT

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

Robótica (Ficção)https://youtu.be/ABzjUf3E_0c

31

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 1

51

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

top related