sábado, 4 de junho de 2011

Agentes Inteligentes Autônomos

Um conceito que eu gostaria de esclarecer bem é o de agente.

Ele é compartilhado pela computação com a economia, administração, biologia e diversas outras áreas. Compreender bem este conceito esclarece não só os assuntos, mas várias de suas relações, influências e sobreposições.
Como várias vezes os limites entre as áreas são borrados, no caso dos agentes peço uma dose adicional de paciência aos leitores.

De uma forma simplista, agente é aquele que pratica ações, aquele que age.
As descrições que aparecem no Houaiss como as conotações da palavra agente corroboram essa descrição simplista:
[dj.2g.s.2g. (sXV) 1 que ou quem atua, opera, agencia 2 que ou quem agencia negócios alheios s.2g. 3 pessoa ou algo que produz ou desencadeia ação ou efeito 4 pessoa encarregada da direção de uma agência 5 funcionário de um país estrangeiro encarregado de espionar ou executar alguma ação dentro de outro país; espião 6 jur aquele que exerce certo cargo ou determinada função como representante da administração pública, p.ex., procurador, delegado, administrador etc. 7 jur intermediário em negociações mercantis 8 jur aquele que infringe a lei penal 9 intermediário que representa artistas, diretores, escritores, músicos etc., retendo para si uma porcentagem de cada cachê ou salário do cliente 10 aquele que faz parte de uma corporação policial 10.1 p.met. militar ou policial que realiza determinada missão  s.m. 11 o que origina (alguma coisa); causa, motivo 12 o que impulsiona; propulsor 13 fil na escolástica, ser animado que, segundo o seu livre-arbítrio, gera ou pratica uma ação 14 med força ou substância ativa capaz de produzir um efeito
Conforme eu mencionei na minha postagem “Notação em Administração de TI”, ação diz respeito à solução, assim como as características.

Mas o que exatamente é uma ação?
Uma ação modifica o mundo, ponto. Se algo não modifica o estado das coisas, não é uma ação.
Pode ser tão simples quanto acender a lâmpada do seu quarto, ou tão complexa quanto uma declaração de guerra.


Com a idéia do que pode ser uma ação, vou apresentar a semântica praticada em computação para os agentes:

O primeiro tipo de agente é o “não inteligente”. O que o caracteriza é o fato de não tomar decisões. Apesar de ele agir, ou essa ação é constante, por exemplo, um imã que atrai objetos ferromagnéticos e de forma menos intensa os paramagnéticos, ou dependente do tempo, como uma torneira mal fechada que goteja.

Quando agimos com entes “não inteligentes” como uma pedra, as ações são manipulações diretas. A gravidade e outras forças, bem como diversas máquinas são agentes “não inteligentes”.

O segundo tipo de agente são os inteligentes, caracterizados pelo fato de tomarem decisões.

Russell e Norvig preferem o termo “agente autônomo Inteligente” (‘autonomous intelligent agents’ no original) para se referirem a ele, termo esse com o qual concordo.
Eu me referirei ao “agente autônomo Inteligente” pela sigla AIA.

Os AIA podem ser unitários ou complexos. Os complexos são formados pela composição, agregação ou associação de AIAs unitários.

Os AIA unitários são classificados por Russell e Norvig em:
  • Reflexivos simples (simple reflex agents)
  • Reflexivos baseados em modelo (model-based reflex agents)
  • Baseados em objetivos (goal-based agents)
  • Baseados em utilidade (utility-based agents)
  • Baseados em aprendizado (learning-based agents)
Nesta postagem eu não me aprofundarei nos algoritmos e natureza de cada um dos mesmos, pois meu interesse é ainda o contexto, continuando a série de postagem sobre o assunto que tenho feito. Notem que nesta postagem não diferenciarei se os AIAs são unitários ou complexos, por não ser relevante para o assunto.

O tipo mais estudado de AIA é o que atua sobre o ambiente ou sobre agentes não inteligentes. Este também não é o meu interesse nesta postagem, por que esses contextos são muito simples e já fartamente estudados pela computação.

O que me interessa aqui são os AIAs que atuam sobre (ou com) outros AIAs.

Quando agimos com entes que são outros AIAs, a situação se torna muito diferente do que é usualmente visto nos estudos de “Inteligência Artificial” (detesto esse termo, pois é extremamente mal interpretado), por isso os acho interessantíssimos.

Vou aprofundar a questão das ações dos AIAs, principalmente sob o aspecto filosófico e lingüístico sempre com o olhar computacional, para evidenciar a identidade dos AIAs com os agentes dessas abordagens.

No discurso de Habermas, acredito que o “agente” é sempre o “agente inteligente autônomo” (AIA) que atua sobre outros “agentes inteligentes autônomos” (A demonstração de que essa minha crença é um fato, seria um trabalho magnífico, porém muito custoso, o qual não pretendo realizar aqui).

Nos textos de Habermas, para esses agentes inteligentes, o primeiro grupo de ações possíveis foi nomeado por Habermas de “agir estratégico” (não há muita coisa on-line, mas a tese de doutorado de Gelson João Tesser trás no capítulo 6 um bom resumo da teoria da ação comunicativa que trata da diferença entre agir estratégico e comunicativo). Pertencem a ele as ações de influência direta e imediata, chamadas por Michael Foucault de “Pratica direta do poder”: a premiação e a punição.

As ações diretas que não são imediatas são o que se costuma chamar de promessas, sejam premiações ou punições, pois não ocorrem no mesmo tempo que o fato gerador. Algumas pessoas (como é o caso de Hans Kelsen), preferem especializar as promessas de punições com o nome de ameaças.

Existem também ações indiretas ou agir perlocucionário como as chama Habermas, mais sofisticadas por serem na verdade meta-ações, isto é, ações que alteram o comportamento de outros agentes baseados no conhecimento que se tem dos algoritmos desse agente.

Pertencem a esse grupo as armadilhas, declarações, segredos, condução e sedução. Esse grupo recebe o nome genérico de mentira.

  • O conceito de armadilha é simples, uma arapuca serve bem de exemplo. Conhecendo como se comportam certas aves, uma porção de alimento é colocado como isca, e a arapuca é armada ao redor dessa isca. Se aguarda que o algoritmo de uma presa a leve para dentro da arapuca e no momento adequado a ativamos.
  • Uma declaração também é fácil de compreender. Quando uma empresa declara que vai adquirir outra empresa de prestígio, ela conhece os algoritmos do mercado, e que as pessoas vão comprar suas ações sabendo desse fato. Note que o que se declara pode ou não ser verdade.
  • Segredo é o antônimo da declaração. Imagine o mesmo cenário descrito para a declaração, mas agora a alta cúpula dessa empresa quer reservar para si mesma os lucros da fusão, então ela mantém segredo do fato até que suas aquisições terminem.
  • A condução é o uso de segredos e declarações ao longo do tempo para levar os agentes para situações que se deseja.
  • Sedução envolve além dos segredos e declarações, ameaças e promessas.
Imagino que já tenham percebido que a mentira é uma ação extremamente sofisticada do ponto de vista computacional, pois envolve uma série de considerações meta-cognitivas e meta-analíticas.

Curiosamente, para a maioria das pessoas, o conceito de mentira é muito fraco, leviano até.
Felizmente existem as excessões. Uma delas é o Reitor da Escola Superior de Geopolítica e Estratégia, Profº Fernando G. Sampaio, que colocou de forma não computacional o que é mentira:


O que é mentir? Por definição, a mentira é o discurso contrário à verdade, efetuado com o objetivo de enganar. Daí concluímos que o elaborador da mentira conhece a verdade e efetua deformações intencionais sobre o verdadeiro, para atingir o seu objetivo. Portanto, a Mentira não e uma falsa opinião, nem um engano ou descuido ou questão de crença. Mentir é um ato deliberado. Tanto é deliberado, que se pode mentir dizendo a verdade, contanto que se queira enganar o outro com o que esta sendo dito, pois, o essencial na questão é que a mentira é levada, sempre, no sentido de fazer crer, ao alvo da mentira, aquilo que se deseja que ele, o alvo, A mentira é, pois, muito ligada à noção de crença, daí derivando para a questão da formação da opinião. Donde concluímos que a mentira é destinada a criar um clima, na opinião pública ou geral, que favoreça o emissor da mentira e, naturalmente, desfavoreça o alvo do emissor.

Segundo Foucault, mentir é uma das formas de se praticar poder. Ao mentir, um agente pretende controlar o comportamento dos outros agentes, desde que esses outros agentes acreditem nele.

Como bem colocou o professor Sampaio, mentira está relacionada à crença.

Se ninguém acredita no que o agente pronuncia, nenhuma mentira ou verdade que ele diz irá afetar os demais agentes. Neste ponto poderia entrar a idéia de “autoridade” como bem colocou Elias Ferreira do Nascimento Neto, mas novamente, eu sairia do contexto.

O risco da mentira está exatamente na perda da credibilidade, isto é, numa perda de poder.

Mentir é parte da natureza humana, no mundo atual é praticamente impossível não se mentir sem pagar pesados ônus sociais. Certas mentiras são menos toleradas que outras, porém isso já é sociologia, não é computação!

Se meus leitores agora sabem o que é mentira, e que ela pode ser modelada e tratada computacionalmente, eu me dou por feliz. Pretendo utilizar estes conceitos em outras postagens quando for escrever sobre gestão de pessoas, gerentes e o problema da agência (tudo sob uma abordagem computacional é claro!).

Habermas trabalhou bastante este tema com o ferramental da filosofia e da lingüística e comunicação. Ele enfatiza sempre a idéia da pretensão à verdade dos agentes e criou o conceito do “agir comunicativo”, que do ponto de vista computacional podesse dizer que é um agir axiológico e não deontológico como Habermas pretende, mas aprofundar este tema seria fugir do escopo, ficando então para alguma postagem futura.

Nenhum comentário:

Postar um comentário