Mostrando postagens com marcador Inteligencia artificial. Mostrar todas as postagens
Mostrando postagens com marcador Inteligencia artificial. Mostrar todas as postagens

Rede Social das Coisas: A sua casa Inteligente na Rede!

Pessoal,

Hoje ao visitar meus feeds encontrei esse post bem legal no blog Mobilidade é Tudo pelo colega Ricardo Ogliari sobre o futuro das redes sociais em casas inteligentes.  O cenário é meio surreal, mas imagina a sua residência toda como um agente  em uma rede social em que ela se comunica com o dono, podendo este ordernar e interagir com os diversos componentes da sua casa.

A casa inteligente será capaz de ter agentes autônomos, onde cada componente da casa, seja uma mesa, cadeira, sofá , geladeira, microondas, etc se conversam entre si e realizam as suas funções de acordo com o contexto ao redor e as informações passadas pelos proprietários da casa.

Não conseguiu visualizar ainda ? Veja este vídeo feito pela Ericsson com a rede social das "coisas" em ação:








Imagina agora a sua casa podendo analisar seus dados na web, interagir com você e ainda te preparar um banho quente, pedir um almoço e baixar seu filme favorito só porque vc veio extressado para casa hoje.

É de fato, impressionante e futurista!  Espero poder estar usufruindo isso em breve!

Atenciosamente,

Marcel Caraciolo

Palestra sobre sistemas de recomendação no CIN - UFPE

Nesta última segunda-feira dei uma palestra em convite do programa PET do Centro de Informática da Universidade Federal de Pernambuco sobre minha área de pesquisa que envolve sistemas de recomendação e as oportunidades que ela oferece.

Foi uma palestra bem dinâmica, onde apresentei os conceitos iniciais e as minhas contribuições, em especial, o framework Crab que é um toolkit para construção de sistemas de recomendação em Python, Scipy e Numpy.

Para mais informações visitar o link a seguir.

Os slides se encontram no meu outro blog A.I. Motion .

Abaixo algumas fotos durante a palestra:




Agradeço à Mateus pelo convite!

Atenciosamente,

Marcel Caraciolo
Olá pessoal,

Hoje pela manhã (23/05/2011) à convite da aluna do curso de Publicidade e Propaganda da Universidade Federal de Pernambuco (UFPE) ministrei uma palestra introdutória sobre sistemas de recomendação, apresentandos os conceitos básicos e como poder aplicá-lo em uma empresa real (uma cadeia de restaurante conhecida),  que utilizei como exemplo aqui em Recife-Pernambuco.

A palestra foi muito bem recebida pelos alunos junto ao professor Rodrigo Steffani Correa , vice-coordenador do curso de Publicidade e Propaganda da UFPE que estão executando um trabalho dentro da disciplina focada em novas oportunidades de negócio e inovação em marketing com empresas da região.

A palestra foi menos técnica para ser facilmente discutida pelo público que não é da área de computação. Tivemos um bom bate papo e uma discussão interessante, construindo novas oportunidades de negócio em cima desse tipo de sistema focando em novas cadeias de valor em cima do  novo público consumidor que exige cada vez mais  personalização, atenção e  conteúdo relevante do seu interesse. Será que as empresas aqui no Brasil estão preparadas para chegar a esse tipo de demanda ? Este tipo de discussão que levamos à tona e  como Brasil está se posicionando neste mercado.

Abaixo seguem os slides da apresentação:


Quero agradecer à Amanda Aquino pelo convite e espero estreitar ainda mais esse relacionamento entre computação e publicidade e propaganda que tem muitos interesses e objetivos em comum.

Atenciosamente,

Marcel Caraciolo

Olá pessoal,
Em um post anterior neste mesmo blog escrito por mim falei sobre o aparecimento de novos sistemas colaborativos de recomendação baseado em  Perguntas e Respostas (Q&A) integrados com geolocalização. 

Uma das primeiras apps nesse nicho já começou a aparecer nos EUA e visa ir mais adiante do que simples check-ins ao tentar responder a principal dúvida de um usuário quando em chega em um local desconhecido: ' O que fazer quando chegar lá ?'   Se você comparar com aplicativos já existentes como Foursquare e Gowalla, esta app foca respectivamente nos Tips e Notes, que seriam pequenos reviews daquele lugar que um usuário frequentou. 

Loopt, como se chama o aplicativo, foca em perguntas e respostas em tempo real, onde os usuários podem responder e obter respostas rápidas de perguntas originadas ao redor do local onde eles se encontram.

Loopt: Sistema de Q&A móvel

A aplicação que se encontra em estágio de desenvolvimento e será lançado primeiro nos EUA, entrega aos usuários uma informação rápida e personalizada sobre os lugares que ele visita ou pretende visitar. Então imagine, que você está à procura do melhor churrasco ou picanha em Recife ou até se um determinado restaurante tem Wi-Fi disponível, por onde você obteria respostas nesse nível de detalhes ? Com aplicativos focando em Perguntas e Respostas, o usuário em vez de ler longos reviews que não respondem diretamente o que eles precisam saber, irão receber respostas personalizadas e em tempo real sobre o que ele realmente precisam. 

O mais interessante é que o Loopt fornece diversas maneiras estruturar as perguntas e as respostas. Em vez de perguntas textuais, você pode responder por exemplo uma pesquisa de múltiplas alternativas, ou seja, a sua pergunta pode ser estruturada do jeito que você achar mais apropriado. Isso encoraja aos usuários a cada vez mais interagirem com o sistema ao gerar mais conteúdo de forma fácil e rápida.

Perguntas estruturadas e personalizadas

Abaixo um vídeo (Pitch) retirado do site oficial do Loopt sobre como funciona a sua aplicação:









A minha opinião sobre Loopt, é que ele abre portas para um novo nicho de aplicativos que está bem sedimentada no mundo web como Quora, Yahoo Answers, StackOverflow para o contexto móvel.  O Aadvark já começou a trazer Q&A's para o celular e acredito que mais iniciativas como esta irão aparecer no mercado.

Para um serviço como esse se tornar popular, é necessário que o sistema seja extremamente fácil de usar, de tal maneira que o usuário possa gerar conteúdo rapidamente e recebê-las também rapidamente. O Loopt associado a um sistema de recomendação de usuários em Q&A geo-localizável sem dúvidas poderia impulsionar a quantidade de respostas enviadas. A formas de interação com o usuário também tem que ser bem simples. Fazer o usuário responder longos questionários, especialmente a partir do celular, faz ele desistir logo de escrever uma resposta, em que demanda pela velocidade é crítica.  Isso inclui também algoritmos de filtragem para detectar as perguntas mais relevantes em caso de uma quantidade excessiva de perguntas e respostas em relação a um determinado lugar.  

Informações em tempo-real sobre um determinado lugar pode ser de grande ajuda se atualizado frequentemente. Quem não gostaria de saber se um restaurante naquela hora do almoço já se encontra lotado ou vazio, a fim de eu tomar uma decisão se irei ou não para aquele lugar ?  Com sistemas colaborativos de Perguntas  e Respostas voltados para contexto móvel, embora estejamos bem no início, há já uma tendência por aplicativos móveis que vão além de check-ins a fim de prover conteúdo útil para os usuários.  O Loopt já deu o seu  primeiro passo, e não estranharei se outras apps bem conhecidas também já começarem a se posicionar sobre esse tipo de sistema.

Por sinal, mês passado um colega meu , Yuri Malheiros lançou um aplicativo web de Perguntas e Respostas (Q&A) focando em responder a seguinte pergunta:  'Qual é o melhor lugar para ?' chamado Norteie.me.  Ele criou esta app em Django + Python em que usuários podem fazer perguntas sobre dúvidas em um determinada cidade e outros usuários podem responder aquela dúvida. Embora esteja no estágio inicial , imagino o potencial desta aplicação quando estiver integrada com geolocalização em um nicho de  turismo por exemplo?  Imagine você associar perguntas com locais e coordenadas geográficas e ao passar sobre um determinado local você poder receber perguntas ou respostas baseado em onde você está ou pelo sua experiência em um lugar que você mais frequentou baseado no seu histórico de check-ins.

Norteie.me : Sistema de Perguntas e Respostas Web sobre Lugares


Com certeza, o Yuri já deve está pensando em uma expansão e fiquemos de olhos nesse nicho de Q&As se expandindo por aqui no Brasil também !

Espero que tenham gostado,

Atenciosamente,

Marcel Caraciolo

Olá a todos,

Estive meio ausente em posts no meu blog, pois estou em ritmo acelerado de escrita da minha dissertação de mestrado que está para ser defendida em meados de junho. Enquanto isso, eu decidi falar um pouco sobre conclusões e idéias próprias relacionadas a este trabalho em andamento. Este trabalho inclui uma proposta de um sistema de recomendação, uma sub-área de uma área maior de filtragem de informação, derivada de uma linha de pesquisa de mineração de dados.  O objetivo é propor e validar um sistema de recomendação que incorpore reviews, isto é, opiniões e comentários de usuários sobre produtos e serviços visando recomendar sobre um contexto móvel (dispositivos móveis) para um usuário tais produtos ou serviços do seu interesse. 

Por exemplo, imagine você em busca de um restaurante para comer e que hoje você esteja interessado em comer sushi. Como você faria esta busca por um restaurante em sua cidade? Quais fontes você usaria ?   Atualmente temos diversos repósitorios on-line em redes sociais e sites web especializados em agregar opiniões e críticas de usuários, mas todo este conteúdo ainda não é sumarizado ou processado de forma eficiente a fim de gerar uma opinião precisa sobre o que usuário deseja: Qual é a melhor opção de restaurante para mim naquele momento ou naquela cidade ?  

Percebe-se múltiplas váriaveis que podem influenciar o poder de decisão de compra do usuário: Localização, opiniões dos amigos, opiniões de especialistas e opiniões de usuários que tem interesses e gostos similares a você. Isto ainda dificulta mais se considerarmos em um ambiente móvel, onde os requisitos são mais restritos onde você precisa de uma informação rápida e bem objetiva para tomada de decisão.

Meu trabalho visa exatamente resolver este problema, com uma proposta de um framework de recomendação que combine as melhores características das técnicas de filtragem de conteúdo e de técnicas de filtragem colaborativa a fim de construir um meta-recomendador, onde acreditamos que incorporando informações sobre o produto/serviço e opiniões/ críticas de usuários similares ao usuário ativo, este possa sugerir uma lista de recomendação rankeada apropriada com os melhores restaurantes da cidade naquele momento diretamente no seu aparelho móvel.

Para isso envolveremos o estudo de técnicas de mineração de texto, especificamente processamento de linguagem natural para extrair e sumarizar as críticas de usuários. Utilizaremos também de técnicas de classificação de texto como uma área que está em forte ascensão nesta linha de pesquisa que é análise de sentimentos, para extrair a polaridade (positivo ou negativo) de um comentário. E com estas informações sumarizadas e os metadados provenientes da descrição do serviço (localização, categorias, etc) podemos combinar essas informações em um meta-recomendador a fim de sugerir os serviços que melhor atendem os requisitos de um usuário em um determinado local e tempo (contexto móvel).

O escopo já está definido e o trabalho já está em andamento e experimentos. Estou utilizando de uma base extraída do Foursquare com mais de 800 estabelecimentos e 1000 reviews sobre estes estabelecimentos, onde implementarei um protótipo móvel a fim de validar este framework, que obviamente é apenas o início de muitos trabalhos futuros a realizar especialmente onde se deve considerar outros quesitos importantes como: segurança, escabilidade, desempenho, etc.

Um dos trabalhos futuros que eu gostaria aqui de comentar é a influência das redes sociais no processo de recomendação. Estamos vendo cada vez mais uma nova tendência a se firmar que é o social-commerce. De acordo com especialistas , o social - commerce é o e-commerce que envolve o relacionamento entre pessoas. Com o surgimento das redes sociais, o comércio começou a se expandir para os relacionamentos no universo digital,  onde estimula-se a compra em um potencial mercado consumidor, onde há, no mundo, aproximadamente um bilhão de pessoas/consumidores nas redes sociais.   Um dos reflexos disso são os próprios sites de compra coletiva, que estão se viralizando pelo mundo todo e utiliza de mecanismos coletivos (sociais) para oferta de promoções e produtos.

Sites de Compra Coletiva Brasileiros


Mas o que venho aqui destacar é que estamos cada vez mais buscando respostas para perguntas que temos que são pontuais ou específicas. Irei dar um exemplo, eu estou interessado em comer um tipo de temaki específico como filadélfia (comida japonesa).  Eu poderia simplesmente utilizar um sistema de recomendação que procurasse por termos que envolvesse temakis e após um processamento ele já poderia me dar uma resposta pré-elaborada de restaurantes que oferecem temakis de qualidade em minha cidade. Mas o cenário é bem mais complicado do que isso,  além de as opiniões serem muitas vezes genéricas (não há esse nível de detalhamento sobre temakis filadélfia), focando apenas em serviços e qualidade como um todo do restaurante, temos o problema da influência social (as opiniões são genéricas ou de desconhecidos).  Muitos acreditam que a opinião de um amigo ou alguém muito próximo a você pode  influenciar decisivamente no processo de escolha de compra.  Então, porque não recorrer aos meus amigos ?  As opiniões deles contam e a rede social neste cenário pode nos ajudar nesta tarefa.


Foi aí que veio o que eu chamo de um sistema colaborativo de recomendação baseado em perguntas e respostas móvel.  Alguns sistemas já começaram a desenvolver isto e um claro exemplo é o Aadvark que foi comprado pela Google e foca em assistir usuários , onde os mesmos fazem perguntas e o sistema procura pessoas que possam melhor responder tais perguntas, funcionando como um sistema inteligente de perguntas e respostas.

Aadvark no Iphone

Basicamente,  os sistema que eu proponho é de você fazer perguntas para outros usuários deste sistema já cadastrados sobre lugares específicos ou serviços específicos e em vez de receber uma lista de recomendação de lugares processadas pelo sistema, você vai receber respostas de pessoas de verdade sobre estes lugares/serviços em questão.  

Então, se eu perguntar agora ao sistema onde eu poderia comer um temaki filadélfia de qualidade em minha cidade, o sistema iria procurar pessoas que estariam em restaurantes que oferecem temaki, combinado pela influência social destas pessoas (daria prioridade aos meus amigos até desconhecidos) e lançaria esta pergunta para tais pessoas. Em questão de minutos você receberia respostas de usuários  de vários pontos da cidade informando um bom restaurante, opiniões bem específicas e até descobrir que seu melhor amigo está naquele restaurante e te convida para acompanhá-lo.


               

 Sistema de Perguntas e Respostas Colaborativo sobre Contexto Móvel

Um outro cenário ilustrativo apropriado para este tipo de serviço, seria por exemplo, saber se um restaurante está cheio naquele momento. Se eu perguntasse: 'Estou querendo comer no Bonaparte, agora? Alguém sabe dizer se tá lotado por aí ?'  Em minutos eu recebesse a resposta de alguns usuários da cidade já dizendo:  'Pode vir aqui tá tranquilo demais!'  ou 'Venha para a filial do Shopping Plaza tá tendo uma promoção no frango empanado!'   Vejam a quantidade  de opiniões em tempo real e a descoberta de serviços e promoções que eu recebo tudo em tempo real e tudo isto direto do meu telefone.

Esse serviço ainda pode ser agregado com serviços de localização como Foursquare, Gowalla ou Facebook que já utilizaria do seu histórico de check-ins de lugares que você frequenta e estimula por meio de perguntas e respostas criando um tipo de jogo em que te premia com pontos à medida que você vai interagindo ainda mais com o sistema (seja perguntando ou respondendo).

Um dos grandes benefícios também desta aplicação é o estímulo de interação social entre os usuários. Pois, você poderia agradecer a resposta de um usuário e até criar um novo elo de amizade, se você desejar continuar a conversação.  Acredito que sistemas colaborativos de Perguntas e respostas sobre um contexto móvel serão uma tendência em breve, ou se já não está em desenvolvimento, de aplicativos que estão por vir para dispositivos móveis.

Em breve darei mais informações sobre detalhes da minha dissertação, espero que tenham gostado deste post com uma das minhas idéias e trabalhos correntes

Para mais informações sobre sistemas colaborativos, perguntas e respostas e recomendação procurem por community Q&A location recommendations no Google, sem dúvidas você vai ficar maravilhado com a quantidade de posts, estudos e artigos sobre esta área.

Atenciosamente,

Marcel Caraciolo

Olá pessoal,

Estive ausente no meu blog pois estou em uma fase crítica na escrita da tese do meu mestrado e outros projetos que estou trabalhando atualmente e que em breve serão comentados em futuros posts por aqui.

Uma das áreas que estou me especializando é no campo de pesquisa de recomendações, em especial, na construção de técnicas e algoritmos de mineração de dados para descoberta e oferta de produtos e serviços por meio de dispositivos móveis.

A construção de um agente inteligente capaz de realizar recomendações baseado nas suas preferências e das pessoas próximas a você considerando aspectos como proximidade, grau de confiança e interesses em comum podem tornar a experiência de compras muito mais rica e o mais importante auxiliar o usuário no processo de decisão de compras.

Este é um dos objetivos do meu trabalho.  De forma suscinta posso resumir que a missão deste trabalho serve como um guia para acompanhar as novas tendências na web e no mundo mobile. A descoberta e a oferta de conteúdo personalizado exige que os aplicativos sejam aprimorados a fim de que possam oferecer um produto ou oferta específica para um usuário.  

Como fazer isso ?  Há diversas maneiras de executá-la. Uma das abordagens é a modelagem de uma técnica inteligente que possa efetuar recomendações personalizadas baseada no cruzamento de informações de histórico de compras do usuário e nos locais em que estes mais frenquentaram (derivado do conceito de check-in).



A questão a se solucionar é : 'Como podemos ser capazes de oferecer estas  ofertas e serviços personalizadas  que possam ser do seu interesse e ao mesmo tempo oferecer recomendações associadas a coisas que você já sabe o que pretende fazer'.

A grande vantagem de associar-se ao contexto móvel se deve que com a mobilidade é possível obtermos o histórico de lugares em que o usuário frequentou e como essas informações podem ser úteis para descoberta e entrega dessas ofertas.

Vejamos alguns cenários para exemplificação:

" Baseado nesses três últimos restaurantes que você esteve, há outros seis restaurantes que possam ser do seu interesse. ";

" Olá você acabou de chegar em Curitiba, embora você seja novo em Chicago, mas de acordo com seu histórico de check-ins em Recife, aqui está uma listagem de lugares ou serviços que você pode aproveitar enquanto você estiver por aqui";

Imaginaram as possibilidades ? Estamos saíndo da era da recomendação clássica onde apenas avaliações (reviews), similaridade entre usuários são suficientes para gerar uma recomendação. A adição desta nova variável no contexto de recomendação poderá enriquecer a descoberta de serviços e recomendações geo-referencíaveis sensíveis ao tempo (Sim, o tempo também influencia, ou você acha que ele vai oferecer um restaurante de café da manhã no meio da noite para você ?). 

Uma empresa que recentemente vem trabalhando nesta visão é a Bizzy, que recentemente construiu um engine de recomendação de lugares e serviços baseado nos interesses de usuários similares e na listagem dos seus lugares favoritos. 



Por fim, gostaria de finalizar esse pequeno texto introdutório  na aplicação neste tipo de recomendação em um novo nicho de mercado que está girando na casa de milhões de doláres: As compras coletivas.

Com algoritmos e técnicas de recomendações deste porte, as ofertas em sites de compras coletivas poderiam ser enriquecidas. O usuário além de receber ofertas personalizadas de acordo com seu interesse, visto que há milhares de sites de compras coletivas que inundam de ofertas diárias e o mais importante é a adição do componente de localização móvel, onde não só os produtos do seu  possível interesse, mas as mais próximas a você ou até onde a maioria dos seus amigos também estão. 

Ofertas personalizadas geo-referencíaveis sensíveis a tempo. É nisto que venho batendo a tecla e é isto que venho observado nas grandes empresas Web direcionando seus esforços.

No Brasil, as compras coletivas estão aquecidas. Será que não chegará o momento de haver um filtro para recomendação destas ofertas para usuários cansados de receber tantas ofertas ?  Ou enriquecer mais a experiência de compra por meio de descontos especiais de acordo com o seu histórico de lugares e das pessoas similares a você. Será este o início da compra coletiva Geo-Localizável ?



Novas experiências para explorar, e as recomendações vieram para ficar.  Estamos saindo da era da informação para a era da recomendação e já visando a personalização.

Atenciosamente,

Marcel Caraciolo

Vídeo sobre a visão da IBM de um sistema de trânsito inteligente


Conversando com meu amigo  Rafael Carício aqui no IM, ele me mostrou um vídeo muito interessante criado pela IBM falando sobre a concepção de um  sistema de trânsito inteligente.  O projeto apresentado parece ser sensacional e um dos módulos descritos pela jovem que narra o sistema no vídeo casa com uma das minhas idéias que tive em construir um sistema de zona azul social que nos avisa quando uma nova vaga próxima está disponível.

A visão da jovem e da IBM logicamente é a construção de um sistema de trafégo inteligente onde as ruas, estacionamentos, semáforos fossem todos integrados permitindo a comunicação das condições de trânsito para um usuário seja por meio de um dispositivo móvel como um GPS ou celular. 

Imagine você antes de sair de casa em direção ao trabalho receber um SMS com informações de trânsito das principais avenidas do Recife, ou que a BR-101 em um determinado trecho está em obras.

Não sei quando isso estará em pronto, mas sem dúvidas gostaria muito de me envolver com esse tipo de tecnologia que é essencial para a explosão demográfica de habitantes e o trânsito caótico nas principais metropóles. 


Segue o link do vídeo:





Atenciosamente,

Marcel Caraciolo

Olá a todos,

Poucos conhecem esta classe escondida em Python, mas que tem me ajudado bastante na construção de pequenos parsers e analisadores léxicos em alguns projetos que estou trabalhando. Estou falando do módulo "re", responsável pelo uso de expressões regulares em códigos Python cuja uma das classes  não documentadas oficialmente, o Scanner  pode nos auxiliar nestas tarefas.

A classe Scanner ainda não documentada oficialmente por estar ainda em experimentação pode ser bastante útil no processo de tokenização de textos, uma fase de pré-processamento importante em mineração de textos.

O seu uso é bastante simples, basta passar como parâmetro uma lista de expressões regulares e suas respectivas funções callback. Quando uma string é "casada", a mesma é convertida em um respectivo token por meio da chamada da função callback associada e assim adicionada à uma lista de tokens a serem retornados. Se o scanner atinge um ponto em que não há um token a ser "casado",  o mesmo retorna a lista de tokens identificados até aquele ponto e o restante do texto em string que não foi casado.

Vamos a um exemplo prático!  Um dos cenários para o seu uso é os tweets espalhados pelo microblog social Twitter.  Se quisessémos construir um simples analisador léxico para separar links, hashtags, usernames e texto poderíarmos fazer de diversas maneiras. Entretanto com a classe re.Scanner esta atividade torna-se bem mais eficiente e rápida visto que ela já abstrai ao desenvolvedor a necessidade de implementar um analisador que varre as strings à busca de expressões regulares definidas pelo desenvolvedor.

Então se montarmos nosso scanner para extrair dados do twitter conforme a figura abaixo:

Exemplo de Extrator de Tweets

E executá-lo, veremos como resultado:

Resultado do Scanner

Podemos observar pela figura acima que após executar nosso pequeno parser, conseguimos extrair com sucesso os tokens relacionados a Retweets, nomes de usuários, palavras, HashTags e até URl's . Para quem trabalha com processamento de linguagem natural (NLP) isto pode ser uma útil ferramenta para a fase de pré-processamento em mineração de textos.

Com isso concluo a apresentação da classe Scanner escondida na biblioteca padrão que vem ao Python.
Quem não entender muito o que vem nessas strings que começam com  r'', visite meu post sobre expressões regulares, pode ser útil para quem está começando!

Espero ter ajudado pessoal,

Atenciosamente,

Marcel Caraciolo

Referências:

Olá pessoal,

Gostaria de divulgar o próximo encontro do PUG-PE, que está na sua sétima edição ! Fico muito feliz em poder participar deste grupo que vem em constante expansão!

Cartaz de Chamada para o VII Encontro do PUG-PE

Para este encontro, teremos uma palestra minha sobre Inteligência Artificial (algo mais voltado para coisas que eu pesquiso hoje no meu mestrado: Análise de Sentimentos, Recomendações, etc), uma sobre Processamento de Linguagem Natural (NLP) com Bruno Melo, uma sobre Redes Neurais com Péricles Miranda.

Não podemos esquecer da palestra sobre Python Web com uma introdução ao framework Django com Filipe Varjão e por fim uma palestra convidada especial que será ministrada por Lauro Moura do Instituto Nokia de Tecnologia (INDT) sobre Python e Mobile. 

E não esquecendo de adicionar o nosso II Coding-Dojo com programação em Python!

Um evento deste nível e gratuito, vocês não podem perder né?!   Será realizado na FIR dia 18/09 (Sábado) a partir das 08:00.

Mais informações ver a grade completa no blog oficial do grupo.

Atenciosamente,

Marcel Caraciolo
Olá pessoal,

Estive lendo alguns blogs sobre geo-localização e serviços móveis e acabei encontrando um post muito interessante no site TechCrunch  do Robert Scoble (um popular reporter nos EUA). Ele fala sobre a experiência atual com sistemas de localização e comentar suas previsões para 2012 sobre este cenário.

Eu gostaria de replicar estas informações e adicionar alguns comentários em especial relacionados ao nosso cenário brasileiro.  Atualmente,  estamos sofrendo da era de silos da informação.  O que seriam silos da informação ?  Cada vez mais novos serviços web estão aparecendo, porém nenhum deles se comunicam entre si a fim de permitir a oferta de serviços personalizados para o nosso dia-a-dia.  Ou seja, os serviços hoje são como uma caixa-preta onde os dados ficam expostos por meio de uma API (sim ainda há uma comunicação), mas não há uma interligação entre  um serviço de uma empresa A com um serviço de uma empresa B.  
 Vou dar um exemplo real:  Hoje temos o Twitter que é uma das maiores redes sociais em formato microblog do mundo e temos o maior sistema popular de localização-móvel em formato de rede social o Foursquare. Ambas hoje estão permitindo que você possa geo-referenciar o seus posts ou geo-referenciar aonde você está (por meio de check-ins).  Entretanto, cada serviço tem a sua maneira, a sua base de dados individual com tais informações. Ou seja, eu terei que localizar o lugar no twitter (Se este estiver cadastrado lá) e depois lançar o post geo-referenciado e torcer para que no Foursquare, ele tenha o mesmo nome (ou também esteja cadastrado) e aí poder dar finalmente o check-in no Foursquare. Entendem o problema?  Duas bases de dados com as mesmas informações únicas geo-referenciáveis do mesmo local.  São verdadeiros silos de informação. E isto prejudica a todos usuários e até estas empresas que tornam serviços de localização móvel um empecilho para a adoção massiva desses serviços. E logicamente se quisermos sair desta era onde serviços web são como silos e partir para verdadeiras coleções (mashups) de informação útil é necessário uma maior integração.

Silos de Informação: Nossa Web hoje!

No Brasil, a cenário é ainda um pouco mais complicado. Digo isso porque ainda é exorbitante o preço para um simples usuário por meio do seu telefone poder acessar a internet, isso associado ao fato de  ele tenha que saber que tem GPS no seu aparelho ou até saber como usar.  Estou sendo um pouco radical, mas eu falo da maioria da população.  É lógico que temos vários grupos de usuários que tem acesso a toda essa tecnologia, e é o que está movimentando o mercado brasileiro de aplicativos móveis.  Mas esse post vai além disso, o que irei transcrever aqui agora o que pode ser no Brasil em um futuro não distante.
O codinome para esta aplicação fícticia batizo de projeto Caranguejo (em homenagem aos animais tipicamente brasileiros encontrados em especial no litoral brasileiro).

Imagem do Aplicativo Siri
"Estou em janeiro de 2012 e estou com meu novo aparelho celular Android 3.0 que comprei pela operadora X com 3G  ilimitado.  Eu entrarei de férias no meu trabalho e tenho uma viagem hoje mais tarde e preciso pegar coisas na lavanderia e uma reunião de emergência com um colega para entrega de alguns trabalhos.  Abro meu telefone e acesso o aplicativo instalado no meu aparelho 'Caranguejo'. Este aplicativo é uma mão na roda para mim, praticamente minha secretária eletrônica direto do meu aparelho, ou como chamo na linguagem científica: Meu assistente móvel virtual personalizado.  

Assim que aciono o aplicativo, ele já começa a me enviar alertas me lembrando da reunião com o meu colega por meio da integração com  o Google Agenda e que preciso pegar coisas na lavanderia  (atividade) por meio dos alertas do Remember the Milk . Claro e ainda consulto se o vôo  de mais tarde está tudo ok por meio de uma integração nova do Caranguejo com as informações dos vôos por todo Brasil por meio da  Infraero em tempo real.  Ok, após checado tudo, é hora de fazer a primeira atividade do dia, ir até a lavanderia. Assim que saio de casa, o Caranguejo (sabendo onde estou já por meio da integração do Foursquare e por meio da minha agenda) já me envia um alerta: 'Eu vi que você já saiu de Marcel's house, você poderia me avisar para aonde você está indo ?'  O Caranguejo já vem integrado com a funcionalidade voz-para-texto, então eu digo ao meu telefone: 'Eu irei para lavanderia MIX pegar minhas roupas.' Isto faz com que o Caranguejo automaticamente abra uma pequena caixa com o nome do local, telefone, endereço e um pequeno mapa com a posição da lavanderia marcada. Ele pergunta: 'Você está indo para aí ?'  Eu respondo: 'Sim'.  Ele automaticamente já abre um pequena caixa com minha posição atual e como faço para chegar até lá por meio da integração com o Google Maps. Ele pergunta: 'Você irá de carro, de ônibus ou à pé ?'  Dessa vez como a lavanderia é perto, decido ir de ônibus. Ele já se comunica com o serviço do ÔnibusRecife e já me traz informações do ônibus, paradas e onde tenho que descer e o custo da passagem. Após chegar ao local,  o Caranguejo já faz o check-in no Foursquare do local automaticamente. Após pegar tudo,  me bate uma fome e decido tomar um cafézinho, mas para onde ir ?  Ou melhor, será que tem uma cafeteria por aqui perto ?  Pego meu telefone e já aciono o Caranguejo: 'Eu gostaria de uma cafeteria por aqui perto'.  O Caranguejo já sabendo onde estou por meio das APIs do Foursquare e do Google Latitude e por meio de uma pesquisa em serviços parceiros como Guia da Veja , ObaOba, Kekanto; começa a processar  a lista de recomendações e compara um a  um  o meu histórico no Foursquare e Reviews do mesmo e também com minha posição atual. Esse cruzamento de informações em tempo real, resulta em o o sitema me falando: 'Encontrei 1 Cafeteria São Braz há 12 km daí e o Café Delta há 8 km daí. '  (Já sabendo que frequentei muito mês passado a cafeteria São Braz e também que marquei excelente o serviço do café Delta), e ainda  continua: 'Se você deseja tentar outra opção do que suas 2 escolhas comuns ou  se você precisa de alguma opção diferente, me avise'.  Eu já vendo o relógio, penso que vai ser difícil chegar a tempo na reunião, então desisto de ir para a cafeteria. Café vai ficar para outra hora!
Mais uma vez o Caranguejo lança um alerta:  'Hoje você tem uma reunião hoje de meio dia com Ricardo, faltam 1 hora.'.  Eita não posso esquecer desta reunião, volto para casa e já começo a me trocar. Assim que saio o Caranguejo me pergunta: 'Você ainda vai ter a reunião com Ricardo no Sppetus à 12:00 pm ?'  Eu respondo: 'Sim'.  Diretamente o Caranguejo já consulta sites de reviews do restaurante (Kekanto, Google Maps e VejaRestaurantes) e me avisa que é um excelente restaurante e bastante refinado. O Caranguejo já me dá o telefone do local (infelizmente ainda não há uma API para reservas via celular) e eu disco já confirmando minha reserva. Eu também coloco um uma roupa mais sofisticada e parto de carro para o restaurante.Assim que parto, mais uma vez o Caranguejo confirma para onde estou indo e que transporte irei tomar e já consulta a API do trânsito do Recife para me informar que eu não devo pegar a avenida Agamenon Magalhães (parte da rota informada pelo Google Maps) e já me dá outra rota alternativa e que vai demorar 40 minutos para chegar. Quando estou no carro aparece 3 mensagens no Caranguejo com alguns amigos postando via Twitter  me perguntando se eu irei mais tarde para o cinemar ver o filme 'Homem de Ferro 2'. Já mando um reply via caranguejo pro voz avisando que não poderei comparecer, pois viajarei.  Não esquecer também que o Caranguejo já consultou minha agenda telefônica e já mandou um SMS para o Ricardo avisando que estou à caminho.

Chegando no local e mais uma vez o Caranguejo já marcando no Foursquare o Sppetus, ele me avisa: 'Há 45 pessoas que estão por aqui e 2 deles são seus amigos' (Ele já consultou o número de usuários no Foursquare  e também já procurou por amigos que deram check-in naquele momento). Vejo pelos detetalhes que um deles é o Ricardo. Ele já chegou!  Depois de conversarmos sobre projetos e trabalho, volto para casa.

Há algumas horas do vôo, o sistema me avisa que o vôo está próximo de chegar em Recife (Já consultando informações da Infraero).  Já me direciono ao Caranguejo e pergunto: 'Gostaria de pegar um táxi para o aeroporto'. O  Caranguejo já busca em páginas web sobre possíveis empresas de táxi e me dá um conjunto de opções para escolha. Decido a  'fast' que oferece o pagamento mediante cartão de crédito. Já ligo e agendo o táxi! 

Chegando no aeroporto, o Caranguejo já me informa que o vôo que irei pegar embarca as 18:30. Me envia já o meu código de embarque que armazenei no meu Remember the Milk. Faço check-in mas ainda dá tempo para tomar um cafézinho, mais uma vez Caranguejo já me dando as melhores opções, e me alertando que se eu for na Cafeteria Doce Nordestino e der um check-in lá  ganho 15% de desconto no café  ou tenho a opção de ir à Cafeteria Dengoso que por meio do ZIPME  se eu comprar um voucher por meio de compra coletiva, ganho 20% de desconto.  Decido ir ao Dengoso  e depois de tomar um cappuccino adiciono um review para este novo restaurante que o Caranguejo me informou dando 5 estrelas com o comentário: Excelente cappuccino! .

Eita o meu vôo! Antes de partir meu Caranguejo informa que alguns amigos já me deram boa viagem via Twitter e eu mando postar no Twitter :  'Partindo para São Paulo!'.  É hora de desligar o caranguejo e o aparelho, ansioso porque ele vai ser extremamente importante  em São Paulo, onde é um mundo desconhecido para mim!'

Pois é pessoal, este é apenas um depoimento de um cenário hipotético no futuro de um aplicativo que toma a forma de um assistente pessoal virtual inteligente direto do meu telefone. Logicamente hoje isso seria inviável ainda porque grande parte desses serviços mencionados acima não oferecem APIs de acesso, e quando oferecem funcionam como SILOS totalmente isolados um do outro. 

É preciso que a informação seja ubíqua ou seja compartilhada. Os serviços precisam estar em comunicação e cientes uma das outras.  Se eu vou à algum lugar aciona serviços como Foursquare, Twitter e serviços de mapa como Google Maps e informações de trânsito de sites locais.  Este cenário ainda está longe de existir, em especial no Brasil onde as informações ainda estão brutas em páginas HTML.

Percebi que menos de 10% das empresas mencionadas acima oferecem uma API para acesso dos seus dados, que seria um belo início. Ainda não temos aplicativos inteligentes que funcionem como agentes que me alerte, recomende e que mantenha minha rede de contatos sempre disponível. 

Sim, estou falando de um agente onisciente rodando em meu aparelho celular.  O Caranguejo, o único em qualquer lugar à sua disposição.
Ah, antes de finalizar este post dêem uma olhada neste projeto  e neste vídeo. Entendem agora porque no Brasil estamos ainda longe para atingirmos isso ?!






Pois é , acabei de lembrar que preciso dar um check-in no Foursquare que estou em casa e ainda consultar minha agenda no Google Agenda para saber meus compromissos de amanhã.

Viva a Web 2.0!

PS: Agradecimentos especiais ao amigo Ricardo Caspirro, por discutirmos e amadurecermos sobre esses projetos a desenvolver.
Olá pessoal,

Publiquei no meu outro blog sobre Mineração de Dados e Inteligência Articial (http://aimotion.blogspot.com)  sobre meu novo projeto que estou desenvolvendo para obtenção do título de mestre em ciência da computação pela UFPE (Universidade Federal de Pernambuco).  Eu dou um breve resumo sobre os desafios, motivação e proposta para desenvolvimento de um sistema de recomendação inteligente focado em mídias móveis.

O resumo está em inglês, mas quem estiver interessado em ler e discutir comigo sobre alguns aspectos e críticas sobre esta proposta. Se sintam à vontade!!  



Áreas do conhecimento: Mineração de Dados,  Sistemas de Recomendação, Mídias Móveis, Web Services, Geolocalização, SOA, Middleware, Redes Sociais, Microblogs, Inteligência Coletiva e Aprendizagem de Máquina.

Atenciosamente,

Marcel
Olá pessoal,

Gostaria de postar uma notícia que vi em blogs internacionais na área de mobilidade, especialmente relacionada à Nokia, o qual lançou o produto chamado Nokia Bots. Este produto é composto por uma coleção de mini-utilitários (agentes autonômos) que monitoram a forma e uso do seu telefone e tenta melhorar a experiência com o sistema através de sugestões ou alterando configurações automáticas de acordo com o uso. Por exemplo, imagine que você geralmente ponha o despertador do seu celular para te acordar em um determinado horário. A idéia que o bot responsável por monitorar os serviços relacionados à alarme aprenda o horário que você geralmente dorme e sugere tanto o alarme , como também configura automaticamente o alarme. Legal ein?!

Nokia Beta Labs, responsável pela criação desses aplicativos, informa que os mesmos, por enquanto, só funcionam no Nokia N97 e no Nokia N97 mini e ficam executando na tela  principal do aparelho como pequenos widgets. Além do Alarm bot, existe o Profile bot, que automaticamente altera as configurações de telefone (volume, toque, silencioso, etc) enquanto você está em reuniões (logicamente, utilizando informações oriundas do aplicativo agenda do seu telefone).  Há também o Shortcut bot que rastreia as aplicações que o usuário usa mais frenquentemente, e os coloca como atalhos na tela principal do aparelho. A idéia é facilitar o acesso à aplicação, substituindo os existentes na barra de atalhos. Por fim o Battery Bot, que monitora os níveis de bateria e avisa ao usuário quando a bateria precisa ser carregada previamente, afim de evitar a síndrome da bateria descarregada no dia posterior. Para isso ele põe uma mensagem na sua tela inicial, informando que você precisa recarregar seu telefone,  Abaixo algumas screenshots do Nokia Bots:




Abaixo um vídeo do Nokia Labs falando do Nokia Bots:





Abrindo agora meus comentários, achei a idéia genial e acredito que já tenha postado essa idéia aqui no meu blog há algum tempo.  A idéia de ter aplicações que rodem no seu aparelho ocultamente e aprenda com o uso do telefone pelo usuário pode facilitar a vida do usuário, especialmente quando envolve atividades que sejam repetitivas ou periódicas. Logicamente, que esse tipo de aplicação necessita de um certo tempo para que ela aprenda o seu comportamento e consequentemente possa sugerir configurações para seu telefone  a partir do interesse real do usuário naquele momento. Queria ter um N97 para fazer uns testes! Mas estou preocupado o quanto esse monitoramento deve consumir da bateria do aparelho. Será que essas rotinas por trás para monitorar  o uso do aparelho ficam executando de forma exaustiva?!  E o aprendizado é contínuo ?! Qual  o intervalo de tempo que ele "reaprende" com o usuário ?!  Perguntas que estão na minha mente! Gostaria de saber se há alguma técnica inteligente executando por trás.  Acredito que não, acho que é mais uma tabela de frequência.... Perguntas que ficam em minha mente!

É isso pessoal, quem tiver um N97 e testar o aplicativo, favor postar comentários!!

 Valeu pessoal,


Marcel

Fonte: AllAboutSymbian


Olá pessoal,


Gostaria de divulgar um post que eu escrevi em meu outro blog: A.I. in motion (focado em computação inteligente e inteligência artificial). E o que você logo pode perguntar é: E o que ele tem haver com mobilidade?

Pois é, um dos ramos de pesquisa da minha tese de mestrado é tentar juntar técnicas de aprendizado de máquina com computação móvel. Inclusive já escrevi sobre isso aqui neste post.

Logo, tive a iniciativa de desenvolver um framework denominado PyPSO Toolbox escrito em Python para usar a técnica de inteligência de enxame (Otimização por enxame de partículas) para otimizar sistemas.

Para deixar as coisas mais interessantes, decidi portar meu framework também para celulares, e como também adoro programar em Python para telefones Symbian, não perdi a oportunidade e fiz uma pequena demonstração do framework rodando em um telefone 5800 Xpress music.

Como vocês podem ver no vídeo abaixo, o que me impressionou é que ele foi até rápido (média de 12 segundos) para achar o mínimo de uma função simples que é a função matemática Sphere.





O que mais me chama atenção não é o fato do framework está rodando no aparelho celular, mas como o poder de processamento e memória desses aparelhos tem evoluído cada vez mais. Para se ter uma idéia , o aparelho que eu usei para simulação tem um processador ARM 11 434 MHZ, o que acredito ter desempenho similar ou até melhor que o meu primeiro computador (um Pentium 2 MMX 233 mHz), e isso em 1995!

Não tenho dúvidas que no futuro próximo algoritmos que exigem um certa demanda de processamento poderão ser também executados diretamente nos aparelhos móveis ou então de forma distribuída (via wi-fi, bluetooth entre aparelhos). O campo é imenso!

Aguardem por novos vídeos, pois eu estou trabalhando em outro tipos integração computação inteligente + móvel!

Até a próxima,

Marcel Pinheiro Caraciolo

Já imaginaram um Google Brain Search ?

Olá a todos,

Achei esse projeto intrigante no site do google Mobile : Brain Search. Não sei se é alguma pegadinha de 1 de abril, mas enfim... Por um momento nos faz pensar quando chegará o dia em que poderemos controlar nossos aparelhos com a mente.
Já pensou... Você indexar as informações do seu cerébro e usar engines de busca como busca de conteúdo ?

Vejam o vídeo abaixo:

PyEvolve: Framework Open-Source de Algoritmos genéticos rodando com PyS60!

Dando continuidade a meu último post, encontrei há algumas semanas atrás um trabalho muito interessante que está sendo desenvolvido pelo brasileiro Christian S. Perone: um framework open-source de algoritmos genéticos escrito na linguagem Python denominado Pyevolve. O Pyevolve é um toolbox com várias ferramentas para solução de diversos problemas de otimização , no qual se baseia na computação evolucionária através do poder dos algoritmos genéticos.

Uma dos trabalhos recentes feitos por Christian, é o porting do Pyevolve para dispositivos portáteis. Ele já conseguiu portar com sucesso a execução dos algoritmos genéticos em um aparelho PSP da Sony solucionando o problema do caixeiro viajante, e ilustrando na tela do aparelho no fim a melhor jornada obtida pelo algoritmo. Muito legal, recomendo darem uma olhada aqui. Agora, recentemente ele decidiu portar o Pyevolve para ser executado nos aparelhos móveis.

A linguagem escolhida por ele, claro, foi o Python, visto que o próprio PyEvolve foi escrito nela. Através do PyS60, Python para celulares Symbian S60, ele conseguiu executar com desempenho satisfatório no aparelho Nokia N73. O problema tratado pelo algoritmo genético foi a busca do mínimo de uma função matemática (Sphere) com 5 dimensões.

Algo muito legal, mesmo especialmente por se acreditar que rodar algoritmos desse nível que exigem uma certa computação exaustiva não seriam estáveis em aparelhos como celulares.

De acordo com os experimentos realizados, o algoritmo genético conseguiu encontrar o mínimo da função matemática de complexidade fácil-mediana em apenas 8 segundos (com 18 gerações).

Seguem alguns screenshots do PyEvolve for Mobile em execução:


Olá pessoal,

Estive essa semana aproveitando alguns intervalos livres para ler alguns feeds de blogs de Inteligência Artificial que acompanho. Uma das novidades que me chamou bem atenção foi a execução de algoritmos inteligentes de forma computacionalmente distribuída. Irei dar um simples exemplo:

Um dos projetos aceitos em um congresso internacional na Espanha (International Symposium on Distributed Computing and Artificial Intelligence 2009 - DCAI ) foi o desenvolvimento de um framework de computação de distribuída por meio de aparelhos móveis através de comunicação via sem fio Bluetooth. A idéia do projeto é desenvolver uma API em JavaME disponibilizando um ambiente de computação distribuída com uso de camadas, cliente-servidor e arquitetura de comunicação assíncrona entre os dispositivos. Na prática, eles solucionaram alguns problemas bem conhecidos na literatura de computação evolucionária (O problema do Caixeiro Viajante e o problema de maximização de funções de onda).

O mais interessante é que eles usaram aparelhos móveis reais para executar os experimentos a fim de solucionar os respectivos problemas. De acordo com os autores, a parte mais difícil foi encontrar aparelhos que tivesse a pilha de protocolos Bluetooth funcionando corretamente. A figura abaixo ilustra o experimento em execução:

2 aparelhos Nokia em execução

Achei muito interessante a idéia, especialmente este campo de sistemas distribúidos com computação inteligente. Imagine se cada telefone nosso fosse um agente inteligente e as conexões fossem as conexões sem fio através de WiFi, Bluetooth, etc. Imagine uma rede de varios telefones interconectados processando informações em paralelo. Agora dimensione isso para mais de 150 milhões de aparelhos rodando em paralelo. Uma mega infra-estrutura de computação distribuída pervasiva portátil e móvel! Incrível não ?? Quem sabe não ouviremos isso num futuro próximo. Por sinal, tive até a idéia de portar minha implementação de algoritmos de inteligência de enxame para os aparelhos móveis. E não foi só eu que tive essa idéia, já existe já uma implementação de algoritmos genéticos rodando em aparelhos móveis (smartphones) solucionando problemas de otimização. O mais legal ainda criada por um brasileiro! Essa notícia deixo para um próximo post. ;D

Referências sobre o trabalho acima , ver o blog GeNeuraTeam.

Competição Arena INFO de desenvolvimento de software

Para o pessoal universitário (graduação ou pós atualmente):


Esta é a oportunidade de você colocar em prática suas melhores idéias em desenvolvimento de software. Junte os amigos e prepare seu projeto para a Arena INFO de Software. A competição vai colocá-lo no mapa dos melhores programadores do país e a equipe campeã ainda vai ganhar uma viagem de uma semana para Nova York.

A Arena INFO de Software terá seis categorias: iPhone, Android, Game, Inteligência Artificial, Widget e Aplicativo Online. Para entrar na competição, forme um grupo com até cinco estudantes de graduação ou pós. Quanto mais original, bem elaborado e útil for seu programa, melhor. As inscrições vão de 1º de março a 20 de maio!!!

Acho que entrarei nessa!

Só queria saber se eu podia disputar em mais de uma categoria! =)

Aplicativo móvel editor de Tags de Mp3 Inteligente, Existe ?

musica


Ao ver esse post no blog Nokia Guru, fiquei pensando: "É realmente várias músicas armazenadas no meu celular não possuem tags de identificação que relacionam o nome do álbum, canção ou capa do cd." Pois é, o blog comenta sobre algumas soluções que podem ser utilizadas para organizar seus mp3s no seu celular.

Mas fiquei pensando, será que existe algum aplicativo que possa realizar esta tarefa dentro do próprio aparelho ? Com certeza, um editor mobile de tags ID de mp3s já deve existir para celulares symbian ou até mesmo desenvolvido em JavaME.

Mas queria elevar isso para um outro nível. Será que poderíamos desenvolver um aplicativo que ao passarmos nossas músicas direto para o telefone, ele pudesse "inteligentemente" ou "automaticamente" fazer uma busca por todas essas informações: álbum, cantor, banda, capa do álbum, nome da música e atualizar todo o meu repertório. Claro que necessitaria de algumas interações humanas, já que se eu tenho a música titulada "All my Life" e não tenho o cantor, o aplicativo precisaria de mais informações para distinguir se o cantor seria a Mariah Carey ou se seria o Foo Fighters. Mas enfim, a idéia é automatizar o processo e quanto menos interação humana melhor. Existiria um banco de dados online ? Sim claro. Algumas técnicas de I.A ? Claro.

Enfim, se existir algo parecido com essa idéia de aplicativo, comentem e me informem!

Olá pessoal,

Finalmente estou de volta, quer dizer mais presente no meu blog, embora ainda com algumas atividades pendentes em questão.
Gostaria de anunciar mais um tutorial agora saindo do forno:

Como aplicar inteligência artificial em seus jogos com o teorema de jogos: o Algoritmo Minimax. Mas antes de entramos adentro sobre o que é o minimax. Você pode se perguntar o que isso tem haver com mobile ? Tudo! Vejam o porquê na introdução do artigo:

(...),

Eu estava escrevendo um pequeno tutorial de desenvolvimento de aplicativos móveis, e um dos aplicativos que utilizei como exemplo foi a c
onstrução de um simples jogo da velha, conhecido também como Tic Tac Toe. O jogo foi desenvolvido para ser jogado entre um jogador humano e um jogador controlado pelo computador. No exemplo que desenvolvi , os movimentos jogados pelo jogador controlado pelo computador são aleatórios, ou seja, não há uma lógica por trás das jogadas do PC e nem uma análise prévia das jogadas do adversário. A fim de tornar o algoritmo do jogo mais simples, tomei a decisão de fazer um algoritmo com movimentações aleatórias. Mas, pensei: "Eu poderia dificultar mais as coisas, e poderia aplicar conceitos básicos de inteligência artificial neste jogo, a fim de deixar o jogador controlado pelo computador mais desafiador!" .

E este é o foco deste artigo, irei utilizar o jogo da velha como base para aplicação de conceitos de inteligência artificial, especificamente, introduzir um dos clássicos teoremas de jogos: A
Teoria de decisão ou Minimax.


"Quanta coisa pode-se aprender com um simples jogo da velha."
(...)

O post foi publicado no meu outro blog "Artificial Inteligence in Motion" através deste link:

http://aimotion.blogspot.com/2009/01/aprenda-aplicar-inteligencia-artificial.html

Boa leitura!

[Update] : Este mesmo artigo será também postado em breve em versão inglesa/português no site do Wiki Forum Nokia! Fiquem de olho!

Meu trabalho, ou melhor minha segunda paixão: Computação Inteligente!

Pessoal,

Gostaria rapidamente de divulgar um trabalho bem legal que está sendo realizado por mim e meu colega de mestrado Luiz Soares. Estamos agora iniciando o curso de mestrado acadêmico no CIN/UFPE e decidimos divulgar um pouco sobre nossa vivência e experiência acadêmica durante o decorrer do curso através de um blog.

O blog é sobre computação inteligente. A minha segunda paixão depois de computação móvel!

Para os interessados segue o link:

Artificial Intelligence in Motion

Segue uma breve introdução retirada do post de boas vindas do blog Artificial Intelligence in Motion:

Sejam bem vindos ao blog AiMotion, acrônimo para Artificial Intelligence in Motion. O objetivo deste blog é de divulgar e trazer aos interessados um pouco dos avanços e notícias do campo de inteligência artificial e seus vários ramos e também tutoriais e artigos com implementações para introduzir os que estão começando agora a estudar esse campo tão imenso.

Os autores deste blog são eu : Marcel Pinheiro Caraciolo e Luis Soares. Ambos mestrandos do CIN/UFPE na área de inteligência artificial. Este também foi outro fator que nos levou a criação deste blog, que é poder tornar pública nossas experiências e conhecimentos adquiridos durante essa passagem na academia. (...)
top