Cronograma de Apresentações

September 22, 2009 by taia2009

 

Obs. Importante: Será feita a chamada durante os seminários. A presença dos alunos nas apresentações dos colegas contará na nota individual (HUM ponto).

 

Data: dia 06 de outubro

1- Eduardo GG, Felipe Kuhner, Nelson – Tema: Bioinformatica (Expressao genica)

2- Maira, Pedro, Cleunio – Tema: Xadrez 

Data: dia 08 de outubro

 3- Lucas, Adelmo, Theogenes – Tema: Jogos

Data: dia 13 de outubro 

4- Bruno, Edmilson – Tema: Finanças 

5- Bruno D’ambrosio – Tema: Web Crawlers

Data: dia 15 de outubro

6- Breno – Tema: Player modelling

 Data: dia 20 de outubro

 7- Andresson, Lailson, Yane – Tema: Projeto Sarco

8- Artur, Hallan, Leandro – Tema: Sentiment Analysis

Data: dia 22 de outubro

9- Anderson, Andre, Eduardo – Tema: Reconhecimento de faces

Data: dia 27 de outubro

10- Natanael, Styve – Tema: Detecção de Emergência

11- Rodrigo, Bruno Feitosa, Marcio Tema: Bioinformatica (Predicao proteínas e alinhamento)

Data: dia 29 de outubro

12- Tiago Machado, Thiago Ferreira, Tiago Nascimento Tema: IA e Entretenimento (Cinema, Games e Brinquedos) 

Data: dia 03 de Novembro

13 – Flavio, Francisco Icaro Tema: IA (Poker)

Exercício IV

August 31, 2009 by taia2009

Preparação de Seminários

1. Forme uma equipe de no máximo 3 pessoas.

2. Escolha um tema para apresentação de um seminário.

3. Elabore um draft da apresentação (em formato ppt). A apresentação será revisada pelo professor.

Entrega: dia 15 de setembro

Exercício III

August 25, 2009 by taia2009

Recomendação de conteúdo para TV

Pessoas escolhem seus programas de TV comumente com base em preferências de conteúdo (algumas preferem novelas, outras preferem noticiários, algumas não gostam dos programas de uma dada emissora, etc…). Decisões podem ser tomadas ainda com base em sugestões ou recomendações de amigos com interesses similares. Imaginando um cenário de TV digital com uma larga oferta de conteúdos, projete um sistema de recomendação de programas que permita ao usuário acessar conteúdos que sejam do seu interesse. Faça uma arquitetura modular e descreva os procedimentos e técnicas de cada módulo do sistema.

Equipe: max de 3 pessoas.

Relatorio: max 3 páginas

Entrega: Dia 01 de setembro de 2009

Exercício II

August 18, 2009 by taia2009

Pesquisadores publicam trabalhos em co-autoria, orientam teses dentro de temas relacionados, publicam trabalhos nos mesmos veículos de informação, participam dos mesmos comitês, surgindo (implicita ou explicitamente) diferentes tipos de redes sociais. Muitas dessas redes sociais podem ser inferidas a partir de serviços de informação como bancos de teses (e.g., BDTD-UFPE), sistemas de currículos (e.g. Lattes) e bibliotecas digitais (e.g., DBLP). 

Como fazer uso dessa informação para identificar pesquisadores com perfil parecido e recomendar novos contatos? Identificar comunidades entre os pesquisadores?  Projete um sistema que atenda essas demandas. Defina uma arquitetura modular de sistema e descreva seus módulos (técnicas e procedimentos).

Entrega do relatorio: dia 25 de Agosto (1 a 3 páginas)

Cronograma da Disciplina

August 18, 2009 by taia2009
  • Entrega de Exercícios
    • 18-Ago: Exercício I
    • 25-Ago: Exercício II
    • 01-Set: Exercício III
    • 15-Set: Exercício IV
  • Apresentação de Seminários
    • 06-Out a 17-Nov

Exercício I – TAIA

August 18, 2009 by taia2009

How Do Post Office Machines Read Addresses?

http://www.livescience.com/mysteries/070816_letter_reader.html

  1. Elabore um projeto de sistema para reconhecimento automático de endereços em cartas e correspondências. Defina uma arquitetura de sistema modular e descreva as técnicas e tecnologias necessárias para o desenvolvimento de cada módulo. Que técnicas de IA podem estar relacionadas ao sistema?

Equipes: máximo de três pessoas

Entrega e discussão do projeto: 18 de Agosto

Formato: 1-3 páginas

Nerds on Wall Street(Livro)

June 17, 2009 by taia2009

Oferece um olhar sobre como a tecnologia está mudando os mercados financeiros. Este livro narra o conto de transformação tecnológica dos mercados financeiros mundiais.

“A maioria das novas tecnologias são explorados, em primeiro lugar, “alpha geeks” são as pessoas com as competências necessárias para “empurrar o envelope”. Essa é a verdade em Wall Street como era na Web. David Leinweber foi um daqueles alfa geeks, mas é também o primeiro a partir do início do processo de inovação para integrar a aceitação”.
-Tim O’Reilly, fundador e CEO da O’Reilly Media

http://nerdsonwallstreet.typepad.com/

Vinícius Cantarelli

Day Trading Robot

June 17, 2009 by taia2009

Ações flutuam todos os dias e é sempre um risco investir no mercado de ações. Os que valorizam seus bens estudam o mercado, traçam tendencias e mantem o foco onde se tem a maior chace de lucrar.

É muito custoso analisar todos os estudos recentes do mercado de ações, mas tem a sua recompensa, nesse campo voce pode obter muito lucro ou tam bem consideráveis perdas o que torna frustrante todo o desempenho gasto para estudar as possibilidades e obter justamente o oposto.

Mas e se houvesse um programa de software que acompanhasse essas tendências para você?

O Day Trading Robot é um programa de software que foi programado para ver o gráfico diário e as tendências do mercado acionário. O programa avisa quando pouco dinheiro em estoque é uma tem um grande potencial de lucro e vai acompanhar de perto.

Este programa não se destina a captar recursos apenas ao acaso ou mesmo para buscar ações que têm legeiro potencial de lucro. Se existe um grande risco envolvido com um material especial, o robô vai nao vai fiscalizá-la. Ele é projetado apenas para captar esses recursos (após o seu controle extensivamente), que revelam um elevado potencial de lucro.

Depois é descobrir uma dessas ações, em seguida, alerta os proprietários para este dinheiro circulante e, depois, enviar os resultados para os seus membros.

Embora haja alguns riscos envolvidos neste estoque negociação – como existe com qualquer estoque negociação – o programa de software é tão avançado para que os riscos sejam minimizados e que são muito mais baixos do que se estivesse a acompanhar o mercado em seu próprio país.

O programa geralmente tem uma taxa de sucesso de 60% com uma média de 150% de retorno sobre os sucessos. Portanto, dada a taxa de 40% de perda, você ainda teria um bom lucro.

Como acontece com qualquer investimentos que você precisa fazer para ser sábio e se dar só ao luxo de investir e que você pode dar ao luxo de perder. Minha estratégia é que, uma vez que fiz o meu primeiro lucro, eu levo o meu investimento original e coloco-o de volta na minha conta bancária. Então eu continuo investindo com meus lucros que continuam a crescer. Então por que ninguém está seriamente interessado em investir no mercado acionário? O Day Trading Robot vale a pena experimentar e eles oferecem uma garantia de oito semanas ou seu dinheiro de volta se você não estiver satisfeito com o software.

Download: http://www.soft32.com/Download/free-trial/Day_Trading_Robot/4-232997-1.html

Vinícius Cantarelli

Técnicas de Artificial Stupidity

June 13, 2009 by taia2009

Semana passada escrevi um post falando de artificial stupidity, um termo utilizado pra designar técnicas que são utilizadas para fazer com que o computador erre; em outras palavras, que o adversário cometa erros propositadamente, de forma a balancear o gameplay do jogo e também deixá-lo divertido.

Para que esse objetivo seja alcançado, seguem algumas dicas, aplicadas principalmente em jogos do gênero FPS, mas que também podem ser utilizadas em outros gêneros:

1. Mover-se antes de atirar

Uma das piores coisas em um jogo FPS é você receber um tiro assim que entra em uma nova cena de batalha ou num quarto. Quando o jogador entra em um ambiente novo, normalmente costuma passar um pequeno tempo pra poder identificar um inimigo diante de novas texturas, objetos ou geometrias.  Um ataque do inimigo durante esse tempo traria uma experiência ruim para o jogador. Uma maneira simples de diminuir esse fator de frustração é justamente fazer com que o NPC se mova assim que avistar o jogador. Se houver mais de um inimigo, então é suficiente que apenas um se mova. Dessa forma, movendo-se para uma posição vulnerável, o jogador é alertado de que entrará em uma situação de combate (visto que é bem comum em jogos FPS que o jogador passe um tempo explorando o cenário ou resolvendo algum enigma).

2. Esteja visível

Apesar de, em situações reais de combate, os inimigos fazerem o melhor para permanecer invisíveis, num jogo FPS não é legal existir camuflagem (que fiquem realmente invisíveis, isto é, com texturas muito semelhantes ao ambiente). O ideal seria deixar os adversários com roupas que contrastem bastante com o ambiente, de forma que fiquem visíveis. É possível ter padrões de camuflagem na roupa, mas as cores devem contrastar fortemente com a cena.

3. Tenha uma péssima mira

Uma das coisas que é desajável em um FPS é a presença de muitos disparos, visto que isso mantém o jogador em movimento e em alta tensão, aumentando o ritmo do jogo. Entretanto, esse aspecto pode ser indesejável quando o jogador e morto muito rapidamente. Logo, umas das formas de solucionar esse problema é fazendo com que os inimigos tenham uma péssima mira. Assim, é possível ter muitos disparos sem deixar o jogo extremamente difícil para o jogador. Poderia-se pensar em diminuir o dano que os disparos dos inimigos causariam no jogador, porém, dessa forma, o jogador seria privado de uma das vantagens de se ter um inimigo errando o tiro: ter a sensação de tiros passando pela sua cabeça, explodindo objetos de interação no cenário, além de fazê-lo pensar que está desviando dos disparos devido as suas habilidades.

4. Erre na primeira vez

Para algumas armas que causam um dano maior ao jogador, como as que matam com um ou dois disparos, é necessário ter algo além de uma péssima mira. Geralmente, não é divertido receber um dano muito grande repentinamente. Para que isso não aconteça, pode-se fazer com que o inimigo erre o primeiro tiro. Além disso, é possível programar os adversários para que atirem, de forma estratégica, em objetos quebráveis (barril de água, estátua de porcelana, etc.), principalmente quando estão atrás do jogador, dando tempo para que este o perceba e localize a origem dos disparos. Isso também pode ser utilizado pelo game designer como uma forma de conduzir o jogador por um caminho específico.

5. Reaja aos erros

Até mesmo os mais sofisticados sistemas de IA cometem erros; eles são inevitáveis. Se não forem devidamente tratados, podem fazer os NPCs parecerem burros. Ao reconhecer que ocorreu um erro e reagindo a isso de forma inteligente, além de preservar a ilusão de inteligência, transforma-se erro em uma nova característica. Por exemplo, considere o custo computacional do cálculo preciso que é necessário para que um NPC lance uma granada no alvo correto. Se não houver um cálculo sofisticado da física desse lançamento, é possível que o NPC erre o alvo e que a granada colida em outro objeto e volte para os seus pés (inclusive isso também ocorre com os jogadores!). Se o NPC simplesmente fique parado e espere explodir juntamente com a granada, parecerrá burro. Entretanto, se ele reagir e colocar as mãos na cabeça, como quem está surpreso ou quem diz “Ah não…”, ao invés de ser considerado um erro, isso adiciona uma certa personalidade ao NPC, bem como humor e alguma variedade ao jogo.

6. Vulnerabilidades intencionais

Os jogadores tendem a tirar proveito das fraquezas dos inimigos mesmo quando elas não são intencionais. Ao invés de permitir que o jogador descubra essas vulnerabilidades, é melhor inserí-las no comportamento dos NPCs. Por exemplo, um inimigo que está correndo, demora mais tempo pra preparar sua arma do que um que está parado; um inimigo atacado por trás poderia agir como se tivesse sido surpreendido e demorar para reagir. Adicionar imperfeições ao comportamento dos NPCs pode torná-los mais realistas e com mais personalidade.

Além dessas técnicas que foram vistas, existem muitas outras que também podem ser utilizadas em outros gêneros de jogo. Entretanto uma coisa é certa: para que se saiba utilizá-las corretamente e de forma balanceada, é necessário testar bastante jogando, pois não há como prever completamente como será a experiência do usuário ao jogar sem ter antes testado!

Postado por Adônis Tavares

RoboCup 2009

June 12, 2009 by taia2009

No dia 29 de junho, na cidade de Graz, Áustria, acontecerá mais um RoboCup.  A equipe de futebol de robôs do Centro Universitário da FEI (Fundação Educacional Inaciana) vai encarar o seu primeiro desafio internacional na RoboCup 2009.

Da AFP

a competição reunirá mais de 400 equipes de 40 países, como Japão, Estados Unidos, Tailândia, México e Turquia. São equipes formadas por 5 robôs em um campo com 17,5 m², agora é torcer pro Brasilsilsilsil.

Thiago Pereira Rocha

Link:http://www.robocup2009.org/