Você está na página 1de 29

INTELIGNCIA SEM REPRESENTAO

Rodney A. Brooks
http://people.csail.mit.edu/brooks/papers/representation.pdf

Laboratrio de Inteligncia Artificial do MIT, 545 Technology Square, Rm. 836,


Cambridge, MA 02139, USA
Recebido em Setembro de 1987
Publicado originalmente sob o ttulo Intelligence without representation em Artificial
Intelligence 47 (1991), pp. 139-159.
Este relatrio descreve a pesquisa feita no Laboratrio de Inteligncia Artificial do Instituto
de Tecnologia de Massachusetts (MIT). A pesquisa foi custeada pelo prmio IBM Faculty
9 Development Award, por uma doao da System Development Foundation, pela
University Research Initiative sob o Contrato de Pesquisa Naval N00014-86-K-0685, e pela
Advanced Research Projects Agency, sob o Contrato de Pesquisa Naval N00014-85-K0124.
Resumo
A pesquisa em inteligncia artificial encontra-se detida pela questo da representao.
Quando a inteligncia abordada de maneira incremental, sendo ento compreendida
estritamente como responsvel pela criao de uma interface com o mundo real atravs da
percepo e da ao, sua dependncia para com a representao desaparece. Neste artigo,
esboamos nossa abordagem incrementalidade na construo de Criaturas inteligentes
completas. A decomposio fundamental do sistema inteligente no se d em termos de
unidades de processamento independentes que precisam fazer interface umas com as outras

atravs de representaes. Ao invs disso, o sistema inteligente decomposto em


produtores de atividade paralelos e independentes que fazem interface direta com o mundo
atravs da percepo e da ao, ao invs de se dedicarem principalmente a fazer interface
uns com os outros particularmente. A separao entre sistemas centrais e sistemas
perifricos desaparece: tudo central e perifrico. Com base nestes princpios, tivemos
muito sucesso construindo uma srie de robs mveis que operam sem superviso como
Criaturas em ambientes de escritrio padro.
1. Introduo
A inteligncia artificial comeou como um campo cujo objetivo era replicar o nvel
humano de inteligncia em uma mquina. As esperanas iniciais diminuram quando se
estimou a magnitude e a dificuldade do objetivo. Nos ltimos 25 anos, progrediu-se
lentamente na demonstrao de aspectos isolados da inteligncia. Trabalhos recentes
tendem a se concentrar em aspectos comercializveis, produzindo assistentes inteligentes
para trabalhadores humanos. Ningum mais fala em replicar a gama completa da
inteligncia humana. Ao invs disso, vemos um recuo para subproblemas especializados,
tais como maneiras de representar o conhecimento, a viso ou at reas mais
especializadas, como sistemas de manuteno da verdade ou verificao de planos. Todo
trabalho nestas subreas tem como pedra de toque os tipos de tarefas que os seres humanos
desempenham nestas reas. Mas entre os sonhadores que ainda se encontram trabalhando
no ramo da IA (e no me refiro aos que esto sonhando com dlares), existe a sensao de
que um dia todas essas partes vo cair em seus respectivos lugares e testemunharemos o
aparecimento de sistemas verdadeiramente inteligentes.
Eu mesmo, bem como outras pessoas, acreditamos, entretanto, que a inteligncia de
nvel humano complexa demais e que, alm disso, ainda temos dela uma compreenso
incompleta demais, que no nos permite decomp-la nas partes certas, e mesmo que
conhecssemos todas as partes, no conheceramos as interfaces certas entre elas. Alm
disso, nunca entenderemos como decompor a inteligncia de nvel humano at que
tenhamos praticado muito com inteligncias de nveis mais simples.

Neste artigo, portanto, eu defendo uma abordagem diferente para a criao de


inteligncia artificial:

Precisamos ir criando as capacidades dos sistemas inteligentes de maneira


incremental, dispondo de sistemas completos em cada uma das etapas, de tal
modo que a validade das partes e das interfaces esteja automaticamente
assegurada.

Em cada passo, devemos construir sistemas inteligentes completos que


possamos soltar no mundo, dotados de percepo (sensing) real e ao real.
Quando ficamos aqum disso, as chances de nos iludirmos so altas demais.

Uma srie de robs mveis autnomos foi construda seguindo-se esta abordagem.
Chegamos a uma concluso inesperada (C) e possumos uma hiptese bem radical (H).
(C) Quando examinamos inteligncias de nveis bem simples, descobrimos que
somos atrapalhados por representaes explcitas e modelos do mundo.
Acaba sendo melhor usar o prprio mundo como seu modelo.
(H) A representao uma unidade de abstrao errada quando se trata de
construir as partes mais robustas dos sistemas inteligentes.
A representao tem sido a questo central no trabalho sobre inteligncia artificial nos
ltimos 15 anos somente porque ofereceu uma interface entre mdulos e artigos de
conferncias que, de outra maneira, ficariam isolados.
2. A evoluo da inteligncia
J temos uma prova da existncia da possibilidade de entidades inteligentes: os seres
humanos. Alm disso, muitos animais so inteligentes at certo grau. (H muita discusso a

respeito deste ponto, e a maior parte dela diz respeito definio de inteligncia). Tais seres
so o resultado de 4,6 bilhes de anos de evoluo na terra.
muito instrutivo refletir sobre como a evoluo biolgica terrena gastou todo esse
tempo. Entidades unicelulares apareceram na sopa primordial h cerca de 3,5 bilhes de
anos. Um bilho de anos se passou at que plantas fotossintticas aparecessem. Depois de
quase um outro bilho e meio de anos, h cerca de 550 milhes de anos, os primeiros
peixes e vertebrados apareceram, e ento os insetos, h 450 milhes de anos. A, as coisas
comearam a se mover bem rapidamente. Os rpteis surgiram h 370 milhes de anos,
seguidos por dinossauros h 330 milhes de anos e mamferos h 250 milhes de anos. Os
primeiros primatas apareceram h 120 milhes de anos, e os predecessores imediatos dos
grandes gorilas surgiram h apenas 18 milhes de anos. O homem chegou mais ou menos
sua forma atual h 2,5 milhes de anos. Ele inventou a agricultura h apenas 10.000 anos, a
escrita h 5.000 anos e conhecimento especializado h apenas algumas centenas de anos.
Isto sugere que o comportamento de soluo de problemas, a linguagem, o
conhecimento especializado e sua aplicao, e a razo, so coisas muito simples uma vez
que j esteja dada a essncia do ser e do reagir. Esta essncia a habilidade de se
movimentar em um ambiente dinmico, percebendo-o (sensing) a um grau suficiente para
alcanar a manuteno necessria da vida e da reproduo. Foi nesta parte da inteligncia
que a evoluo concentrou seu tempo, por tratar-se de algo muito mais difcil.
Acredito que a mobilidade, a viso acurada e a habilidade de desempenhar tarefas
relacionadas sobrevivncia em um ambiente dinmico oferecem uma base necessria para
o desenvolvimento da verdadeira inteligncia. Moravec [11] defende esta mesma posio
com muita eloqncia.
A inteligncia de nvel humano nos d uma prova de que a inteligncia existe, mas
precisamos ser cuidadosos quanto s lies que podemos tirar disso.
2.1 Uma histria
Estamos nos idos de 1890. O vo artificial (VA) o assunto da moda nos crculos das
cincias, da engenharia, e dos investimentos. Um dia, vrios pesquisadores de VA so
miraculosamente transportados por uma mquina do tempo para a dcada de 1980 por

algumas horas. Eles passam todo este tempo na cabine de passageiros de um Boeing 747
num vo comercial para passageiros de durao mdia.
Quando voltam aos idos de 1890, eles se sentem muito animados, sabendo que o VA
possvel, e em larga escala. Eles imediatamente comeam a trabalhar na duplicao do que
viram. Realizam grandes progressos no projeto de bancos reclinveis acolchoados, janelas
com chapas duplas, e sabem que, to logo consigam entender como se fazem aqueles
plsticos esquisitos, alcanaro o Clice Sagrado. (Dentre estes pesquisadores, alguns
conexionistas conseguiram obter um relance de um motor destampado, e esto ocupados
com inspiraes derivadas desta experincia.)
3. Abstraes como uma arma perigosa
Pesquisadores em inteligncia artificial costumam dizer que, freqentemente, nega-se
IA o reconhecimento que lhe devido. H uma histria popular que diz que quando
ningum tem nenhuma idia de como resolver um determinado problema (por exemplo,
jogar xadrez), o problema fica conhecido como um problema de IA. Quando um algoritmo
desenvolvido por pesquisadores em IA consegue resolver um tal problema com sucesso,
entretanto, os detratores da IA dizem que, como o problema era passvel de soluo atravs
de um algoritmo, no deveria ser, ento, um problema de IA. Assim, a IA nunca obtm
nenhum sucesso. Por outro lado, fracassos em IA o que no falta...
Parece-me que os pesquisadores de IA compartilham desta concepo ilusria a
respeito a si mesmos. Eles dividem os problemas nos quais trabalham em dois
componentes. O componente de IA, que eles resolvem, e o componente que no diz
respeito IA, que eles no resolvem. Tipicamente, a IA obtm sucesso dizendo que as
partes de um determinado problema que no foram solucionadas no eram problemas de
IA. O mecanismo mais empregado para essa diviso do problema em partes a abstrao.
Ela geralmente vista como um procedimento cientfico legtimo, e no, como de fato
utilizada na IA, como uma forma de auto-iluso. Na IA, a abstrao normalmente usada
para decompor todos os aspectos das habilidades motoras e de percepo. Conforme
discutirei abaixo, estes so justamente os hard problems resolvidos pelos sistemas

inteligentes e, alm disso, a forma das solues para estes problemas restringe
enormemente as solues corretas para as pequenas partes de inteligncia que sobram.
Os primeiros trabalhos em IA concentraram-se em jogos, problemas geomtricos,
lgebra simblica, prova de teoremas e outros sistemas formais (ver, por exemplo, [6 e 9]).
Em todos estes casos, a semntica dos domnios era bem simples.
Nos final dos anos sessenta e incio dos anos setenta, o mundo de blocos (block
world) tornou-se um domnio bem popular para a pesquisa em IA, pois sugeria uma
semntica uniforme e simples. A chave para o sucesso era representar o estado do mundo
completamente e explicitamente. Tcnicas de busca poderiam, ento, ser usadas para a
criao de planos dentro deste mundo to bem compreendido. O aprendizado tambm era
possvel dentro do mundo de blocos; havia apenas alguns conceitos muitos simples que
valiam pena aprender, e eles poderiam ser capturados enumerando-se o conjunto de
subexpresses que precisam estar contidas em qualquer descrio formal de um mundo que
inclui uma instncia do conceito. O mundo de blocos foi usado at para pesquisas sobre
viso e robtica mvel, pois oferecia fortes restries sobre o processamento perceptual
necessrio [12].
Eventualmente, foram feitas crticas no sentido de que o mundo de blocos era um
mundo de brinquedo e que, dentro dele, havia solues simples de propsito geral para o
que se poderia considerar problemas mais gerais. Ao mesmo tempo, houve uma crise de
descobertas dentro da IA (tanto nos EUA quanto no Reino Unido, os dois lugares mais
ativos em pesquisas de IA no mundo da poca). Os pesquisados de IA se viram obrigados a
se tornarem mais relevantes, movendo sua ateno para domnios mais complexos, tais
como planejamento de viagens, visitas a restaurantes, diagnsticos mdicos, etc.
Logo, surgiu um novo slogan: A boa representao a chave para a IA (por
exemplo, programas conceitualmente eficientes, em [2]). A idia era que, ao
representarmos explicitamente apenas os fatos relevantes, faramos com que a semntica de
um mundo (muito complexo em sua superfcie) fosse reduzida a um sistema fechado mais
uma vez. Abstrair apenas os detalhes relevantes, assim, simplificava os problemas.
Consideremos, por exemplo, uma cadeira. As duas caracterizaes a seguir so
verdadeiras:

(PODE (SENTAR-SE PESSOA CADEIRA)), (PODE LEVANTAR-SE PESSOA


CADEIRA))
Entretanto, o conceito de cadeira envolve muito mais do que s isso. As cadeiras tm uma
superfcie (talvez) plana sobre a qual nos sentamos, e talvez um apoio para as costas. Elas
tm diversos tamanhos possveis, precisam ser mais ou menos fortes, e podem assumir
vrias formas distintas. s vezes, apresentam alguma espcie de cobertura, exceto quando
feitas de madeira, metal ou plstico. s vezes, so macias em determinados lugares. Podem
ter diversos estilos diferentes. O conceito de cadeira particularmente difcil de caracterizar
com simplicidade. Certamente no h programa de IA para viso capaz de encontrar
cadeiras arbitrrias em imagens arbitrrias; na melhor das hipteses, consegue-se encontrar
um tipo particular de cadeira em imagens cuidadosamente selecionadas.
Esta caracterizao, entretanto, , talvez, a representao correta em IA para
solucionar certos problemas; por exemplo, uma pessoa sentada em uma cadeira em um
quarto est faminta, e v uma banana pendurada do teto a uma altura que no consegue
alcanar. Problemas como estes nunca so propostos para sistemas de IA atravs de uma
fotografia da cena. Uma pessoa (at uma criana bem jovem) pode fazer a interpretao
correta da foto e sugerir um plano de ao. Para os sistemas de IA capazes de planejamento,
entretanto, o experimentador precisa abstrair a maioria dos detalhes para formar uma
descrio simples em termos de conceitos atmicos para conceitos do tipo PESSOA,
CADEIRA e BANANAS.
Mas esta abstrao a essncia da inteligncia, e justamente o ncleo do problema a
ser solucionado. No esquema atual, a abstrao feita pelos pesquisadores, de modo que
sobra pouco a fazer para os programas de IA, exceto buscar. Um programa verdadeiramente
inteligente seria capaz de estudar a fotografia, realizar a abstrao e ento solucionar o
problema.
A nica entrada para a maioria dos programas de IA um conjunto restrito de
afirmativas deduzido a partir de dados reais pelos seres humanos. Assim, passa-se por cima
dos problemas do reconhecimento, do entendimento espacial, da habilidade de lidar com
interferncias sensrias, dos modelos parciais, etc. Os problemas so relegados ao reino das

caixas pretas de entrada. Evidncias psicofsicas sugerem que todos estes problemas esto
intimamente ligados representao do mundo utilizada por sistemas inteligentes.
No mundo real, no h qualquer diviso clara entre a percepo (abstrao) e o
raciocnio. A fragilidade dos sistemas de IA atuais tambm aponta para este fato. Por
exemplo, o MYCIN [13] um expert em diagnosticar infeces bacterianas em seres
humanos, mas, na realidade, no possui qualquer modelo do que um ser humano, ou do
que qualquer criatura viva, e no sabe como elas funcionam, ou que coisas plausveis
poderiam acontecer a um ser humano. Se dissermos ao MYCIN que a aorta se rompeu e
que o paciente est perdendo sangue velocidade de meio litro por minuto, ele vai tentar
encontrar uma causa bacteriolgica para tal problema.
Assim, uma vez que ainda realizamos todas as abstraes para nossos programas, a
maioria do trabalho em IA ainda feito dentro do mundo de blocos. Os blocos, hoje,
possuem formas e cores ligeiramente diferentes, mas sua semntica fundamental no
mudou muito.
Poder-se-ia argumentar que a realizao desta abstrao (percepo) para os
programas de IA nada mais, nada menos, que o emprego reducionista da abstrao, algo
comum a toda boa cincia. A abstrao reduz os dados de entrada de tal maneira que o
programa experimenta o mesmo mundo perceptual (Merkwelt, em [15]) que os seres
humanos. Outros pesquisadores (da viso) preenchem os detalhes ausentes em algum outro
momento ou lugar. H duas razes pelas quais me oponho a tais procedimentos. A primeira
que, conforme apontado por Uexkll e outros, cada espcie animal e, claramente, cada
espcie de rob, com seus prprios aparatos sensrios no-humanos distintos, possui seu
prprio Merkwelt. Em segundo lugar, o Merkwelt que ns seres humanos oferecemos aos
nossos programas baseado em nossa prpria introspeco. Contudo, nada aponta para que
este mesmo Merkwelt seja utilizado internamente por ns: poder-se-ia tratar de uma
codificao de sada para propsitos de comunicao (a maioria dos seres humanos, por
exemplo, passa a vida sem jamais se dar conta de que eles possuem um grande ponto cego
quase no centro de seu campo visual).
A primeira objeo nos adverte para o risco de que as estratgias de raciocnio
desenvolvidas para os Merkwelt assumidos pelos seres humanos podem no ser vlidas
quando so utilizados sensores reais e processamento real. A segunda objeo indica que

at no que diz respeito aos sensores e percepo humanos, o Merkwelt pode no ser
parecido com nada utilizado pelos seres humanos. De fato, pode ser que nossas descries
introspectivas de nossas representaes internas sejam completamente enganosas, e
bastante diferentes daquilo que realmente empregamos.
3.1 A histria continua
Enquanto isso, nossos amigos dos idos de 1890 esto ocupados trabalhando na sua mquina
de VA. Eles concordaram entre si com o fato de que o projeto grande demais para ser
trabalhado como uma entidade nica e que, portanto, tero que se tornar especialistas em
diferentes reas. Afinal, eles perguntaram coisas aos passageiros do vo e descobriram que
a Boeing empregava cerca de 6.000 pessoas para construir um avio como aquele.
Todos esto ocupados, mas no h muita comunicao entre os grupos. As pessoas
que esto fazendo os bancos dos passageiros empregam o melhor e mais slido ao nas
estruturas. Houve algumas discretas sugestes de que se utilizasse ao tubular para
economizar peso, mas o consenso geral foi de que aquele avio enorme e pesado conseguia
voar e, portanto, no devia haver problema com o peso.
No seu vo de observao, nenhum dos membros do grupo conseguiu ver o assento
do piloto. Depois de pensar muito, estabeleceram alguns parmetros gerais de como tal
assento deveria funcionar: O assim-chamado piloto deve posicionar-se em um assento
sobre um cho de vidro, para que ele possa ver onde pousar. H espelhos laterais para que
ele possa visualizar aeroplanos que estejam se aproximando. Seus controles consistem em
um pedal para controlar a velocidade (como naqueles novos automveis que esto
aparecendo) e um volante para virar para a esquerda e para a direita. Alm disso, o eixo do
volante pode ser puxado para frente ou para trs de modo a fazer o avio subir ou descer.
Um arranjo inteligentemente feito com tubos possibilita a medio da velocidade do avio,
que exibida em um mostrador de ponteiros. O que mais poderia ser necessrio? Ah,
claro: um quebra-vento, para que o piloto possa pegar uma brisa fresca sem que o ar bata
com muita fora no seu rosto.
interessante observar que todos os pesquisadores abandonaram o estudo da
aerodinmica. Alguns deles questionaram insistentemente os passageiros, mas nenhum dos

modernos viajantes areos sabia uma palavra sobre o assunto. Claramente, os pesquisadores
de VA tinham desperdiado tempo preocupando-se com isso.
4. Inteligncia incremental
Eu gostaria de construir agentes mveis completamente autnomos que coexistissem
no mundo com os seres humanos e que fossem visto por estes seres humanos como
entidades inteligentes por si mesmas. Chamarei estes agentes de Criaturas. Esta a minha
motivao intelectual. Eu no tenho nenhum interesse particular em demonstrar como
funcionam os seres humanos, embora os seres humanos, assim como os outros animais,
sejam objetos de estudo interessantes, porquanto sejam agentes autnomos de sucesso. No
tenho interesse particular nas aplicaes prticas: parece claro que se meus objetivos forem
alcanados, a gama de aplicaes para estas Criaturas poder ser limitada apenas por nossa
imaginao (ou pela imaginao deles). No tenho qualquer interesse particular nas
implicaes filosficas das Criaturas, embora esteja claro que tais implicaes sero
numerosas.
Diante das advertncias tratadas nas sees anteriores, e considerando a parbola das
pesquisas de VA, estou convencido de que necessrio prosseguir cuidadosamente neste
esforo para evitar armadilhas.
Consideremos, ento, por hora, que o problema de construir as Criaturas um
problema de engenharia. Desenvolveremos uma metodologia de engenharia para construir
as Criaturas.
Em primeiro lugar, consideremos alguns das exigncias que nossas Criaturas devem
cumprir:

Uma Criatura deve lidar com as mudanas em seu ambiente dinmico de maneira
apropriada e com razovel velocidade.

Uma Criatura deve ser resiste com respeito ao seu ambiente; mudanas pequenas
nas propriedades do mundo no devem levar ao colapso total do comportamento
da Criatura. Ao contrrio, espera-se apenas que haja uma mudana gradual nas
capacidades da Criatura conforme o ambiente muda mais e mais.

Uma Criatura deve ser capaz de manter mltiplos objetivos e, dependendo das
circunstncias nas quais se encontra, deve poder mudar os objetivos que est
perseguindo, de modo a ser capaz tanto de se adaptar, quanto de aproveitar
circunstncias fortuitas.

Uma Criatura deve fazer algo no mundo. Sua existncia deve ter algum propsito.

Consideremos, agora, algumas das abordagens de engenharia vlidas para cumprir


com estas exigncias. Como em todos os esforos em engenharia, necessrio decompor o
sistema complexo em partes, construir as partes, e ento proporcionar uma interface para
que elas componham um sistema completo.
4.1 Decomposio por funo
Talvez a noo mais forte e tradicional de sistemas inteligentes (pelo menos aquela
que est implcita entre as pessoas que trabalham com IA) a de um sistema central com
mdulos perceptuais que funcionam como entrada (inputs) e mdulos de ao que
funcionam como sada (outputs). Os mdulos perceptuais apresentam uma descrio
simblica do mundo e os mdulos de ao pegam uma descrio simblica de aes
desejadas, fazendo com que elas aconteam no mundo. O sistema central, portanto, um
processador de informaes simblicas.
Tradicionalmente, o trabalho em percepo (e a viso a forma de percepo mais
comumente estudada) e em sistemas centrais tem sido feito por diferentes pesquisadores, e
at por laboratrios de pesquisa totalmente diferentes. As pessoas que trabalham com a
viso no so imunes s crticas anteriores feitas s pessoas que trabalham com IA em
geral. A maioria das pesquisas sobre viso apresentada como uma transformao de uma
representao em imagem (por exemplo, uma imagem bruta em tons de cinza) em uma
outra imagem registrada (por exemplo, uma imagem com contornos). Ambos os grupos, IA
e viso, faz suposies a respeito da forma das interfaces simblicas. Quase ningum j
conseguiu conectar um sistema de viso a um sistema central inteligente. Assim, nada
obriga que as suposies feitas por pesquisadores independentes sejam realistas. Assim, as

presses para que aspectos parciais do trabalho sejam nitidamente circunscritos so, por sua
vez, uma fonte de perigo real.
O sistema central tambm precisa ser decomposto em pedaos menores. Podemos
reconhecer alguns campos de estudos dentro da IA: representao de conhecimento,
aprendizado, planejamento, raciocnio qualitativo, etc. As interfaces entre estes
mdulos tambm esto sujeitas ao abuso intelectual.
Quando os pesquisadores que trabalham com um mdulo em particular escolhem
tanto as entradas quanto as sadas que especificam os requerimentos do mdulo, acredito
que h pouca chance de que, posteriormente, estes mdulos se encaixem em um sistema
inteligente completo.
Este bug na abordagem da decomposio funcional difcil de consertar. Seria
preciso uma longa cadeia de mdulos para conectar percepo e ao. Para testar qualquer
um deles, eles todos precisam, primeiramente, ser construdos. Mas enquanto mdulos
realistas no so construdos, permanece impossvel predizer exatamente quais mdulos
sero necessrios, ou de que interfaces eles precisaro.
4.2 Decomposio por atividade
H uma outra maneira de proceder na decomposio, a qual no faz distino entre
sistemas perifricos, tais como a viso, e sistemas centrais. Ao invs disso, a diviso
fundamental do sistema inteligente feita na direo ortogonal que o divide em
subsistemas produtores de atividades. Cada sistema de produo de atividade ou
comportamento conecta individualmente uma sensao a uma ao. Ns nos referimos a
aos sistemas de produo de atividade como sendo camadas. Uma atividade um padro
de interaes com o mundo. Tambm poderamos chamar as atividades de habilidades,
enfatizando que cada atividade pode, pelo menos depois do ato cumprido, ser racionalizada
como estando orientada a algum propsito. Escolhemos a palavra atividade, entretanto,
porque nossas camadas precisam decidir quanto agir por si mesmas; no se tratam de subrotinas que esto dependentes de alguma outra camada e que so evocadas por elas.
A vantagem desta abordagem que ela proporciona um caminho incremental que vai
desde sistemas muito simples at sistemas inteligentes autnomos complexos. A cada etapa

do caminho, s necessrio construir uma pequena parte, e fazer uma interface entre ela e
uma inteligncia existente, funcional e completa.
A idia que, primeiramente, preciso construir um sistema autnomo completo
muito simples, e test-lo no mundo real. Nosso exemplo favorito de um tal sistema uma
Criatura, um rob mvel que capaz de desviar-se de outros objetos. Ele percebe (senses)
os objetos imediatamente prximos a ele e desvia-se deles, parando quando percebe algo
em seu caminho. Ainda necessrio construir este sistema decompondo-o em partes, mas
no necessrio fazer uma distino entre um sistema de percepo e um sistema
central e um sistema de ao. De fato, pode-se at empregar dois canais independentes
conectando a percepo ao (um para iniciar o movimento, e um para parar em caso de
emergncia), de tal modo que no haja um lugar nico onde uma percepo (entendida
como faculdade, perception) d uma representao do mundo no sentido tradicional.
Em seguida, construmos uma camada de inteligncia que opera em paralelo com o
primeiro sistema. Ela ligada ao sistema existente (o qual j foi submetido a um debug) e
testada novamente no mundo real. Esta nova camada pode acessar diretamente os sensores,
e rodar um algoritmo diferente sobre os dados apresentados pelo primeiro sistema. Este
sistema autnomo de primeiro nvel continua a rodar em paralelo, ignorando a existncia do
segundo sistema. Por exemplo, em [3], mostramos como construmos um primeiro nvel de
controle que permitia Criatura desviar de objetos, adicionando, em seguida, uma camada
que insinuava a possibilidade de uma atividade de tentar visitar locais distantes visveis. A
segunda camada injetava comandos na parte da primeira camada em que ficava o motor de
controle, direcionando o rob para seu objetivo, mas, independentemente, a primeira
camada fazia com que o rob se desviasse de obstculos previamente invisveis. A segunda
camada monitorava o progresso da Criatura e enviava comandos motores atualizados,
alcanando, assim, seu objetivo, sem ficar explicitamente consciente de eventuais
obstculos, com os quais o nvel de controle mais baixo j tinha lidado.
5. Quem tem as representaes?
Com mltiplas camadas, a noo de percepo que proporciona uma descrio do
mundo deixada um pouco de lado, ainda mais em vista do fato de que a parte do sistema

que est encarregada da percepo est espalhada por diversas partes que no esto
particularmente conectadas por caminhos de dados ou relacionadas por funes.
Certamente, no h um lugar identificvel onde a sada da percepo pode ser
encontrada. Alm disso, tipos de processamento completamente diferentes uns dos outros
operam sobre os dados dos sensores independentemente e em paralelo, cada um afetando a
atividade do sistema total atravs de canais de controle bem diferentes.
De fato, no atravs do projeto das Criaturas, mas pela observao da maneira como
elas se comportam, que verificamos que a ausncia de representao um tema comum em
cada uma das etapas atravs das quais nossa abordagem de construo de sistemas
distribudos e montados em camadas possibilita que nossas Criaturas realizem seus
objetivos.

A representao de atividades simples de baixo nvel pode instigar, na Criatura, reaes


a mudanas perigosas ou importantes em seu ambiente. Sem representaes complexas
e sem a necessidade de manter estas representaes e raciocinar a respeito delas, as
reaes podem ter lugar de maneira mais fcil, e com suficiente rapidez para servir seu
propsito devidamente. A idia principal perceber (sense) o ambiente freqentemente
e, portanto, ter uma idia atualizada do que est acontecendo no mundo.

Por desenvolver mltiplas atividades paralelas, e por remover a idia de uma


representao central, h menos chance de que uma dada mudana no tipo de
propriedades pertinentes ao mundo possa causar um colapso total do sistema. Ao invs
disso, o que se espera que uma dada mudana possa, no mximo, incapacitar algum
dos nveis de controle, mas no todos. Gradualmente, na medida em que se entra em um
mundo cada vez mais estranho (no sentido de que suas propriedades so diferentes das
propriedades do mundo em que as camadas individuais passaram pelo processo de
debug), a performance da Criatura poderia continuar a degradar-se. Uma vez que no se
tenta construir um modelo anlogo do mundo, localizado no centro do sistema, a
possibilidade de ficarmos dependentes da exatido de um tal modelo bem menor. Ao
invs de trabalhar com um modelo, o que as camadas individuais fazem extrair apenas
aqueles aspectos [1] do mundo que so projees relevantes de uma representao em
um subespao simples, por assim dizer. As mudanas na estrutura fundamental do

mundo tm uma chance menor de serem refletidas em cada uma daquelas projees do
que teriam de aparecer sob a forma de uma dificuldade em relacionar consultas
(queries) a um modelo de mundo nico central.

Pode-se pensar cada camada de controle como tendo seu prprio propsito implcito (ou
objetivo, caso se queira insistir nesta palavra). Uma vez que se trata de camadas ativas,
sendo processadas em paralelo e com acesso aos sensores, elas podem monitorar o
ambiente e decidir sobre quo apropriados so seus objetivos. s vezes, os objetivos
podem ser abandonados quando as circunstncias no so propcias ou, s vezes,
circunstncias fortuitas podem ser aproveitadas. A idia chave aqui utilizar o mundo
como seu prprio modelo, e confrontar continuamente com o mundo real as
precondies de cada objetivo. Uma vez que h um hardware diferente para cada
camada, possvel confrontar tantos objetivos quanto puderem existir em paralelo, de
tal modo que a tentativa de adicionar mais objetivos no implica o problema de
adicionar cada vez mais sofisticao a um mesmo processador, ou at de exigir um
multiprocessador com uma rede do tipo capacity-bounded.

O propsito da Criatura est implcito em seus propsitos objetivos ou camadas de nvel


mais alto. No precisa haver representao explcita dos objetivos que alguns processos
centrais (ou distribudos) selecionam para decidir qual a ao mais apropriada para a
Criatura.
5.1 Ausncia de representao contra ausncia de representao central
Assim como no h representao central, no h nem mesmo um sistema central.

Cada camada produtora de atividade conecta a percepo ao diretamente. Apenas o


observador da Criatura atribui a ela uma representao central ou controle central. A prpria
Criatura no dispe de nada deste tipo; ela s dispe de uma coleo de comportamentos
que competem. Do caos local das interaes entre estes comportamentos emerge, aos olhos
do observador, um padro coerente de comportamento. No h um ponto central dotado de
propsito ou responsvel pelo controle. Minsky [10] tambm oferece um relato semelhante
da maneira como o comportamento humano gerado.

preciso observar que no estamos afirmando que o caos um ingrediente necessrio


ao comportamento inteligente. De fato, defendemos a engenharia cuidadosa de todas as
interaes dentro do sistema (a evoluo teve a vantagem de dispor de escalas de tempo
incrivelmente longas e de um nmero enorme de experimentos individuais e, assim, ela
talvez tenha sido capaz de dispensar esta engenharia cuidadosa).
Afirmamos, entretanto, que no precisa haver qualquer representao explcita, seja
do mundo ou das intenes do sistema, para gerar comportamentos inteligentes para uma
Criatura. Sem representaes deste tipo, e quando analisadas do ponto de vista local, as
interaes podem, de fato, parecer caticas e sem propsito.
Parece-me que h algo mais do que isso, entretanto. Mesmo em um nvel local, no
temos as representaes tradicionais de IA. Nunca usamos sinais (tokens) com uma
semntica que pode ser adicionada a eles. O mximo que pode ser dito a respeito da nossa
implementao que um nmero passa de um processo para outro, mas s quando se olha
para o estado tanto do primeiro quanto do segundo processo que este nmero pode ser
interpretado.
Um extremista diria que, na verdade, temos representaes, mas que elas so
implcitas. Com um mapeamento apropriado do sistema completo e seu estado com relao
a outro domnio, poderamos definir uma representao codificada na forma destes nmeros
e conexes topolgicas entre processos. Entretanto, no nos sentiramos muito bem
chamando coisas como estas de representao. H diferenas demais do que est em jogo
aqui e do que se entende exatamente por representao. No h varivel (para um
tratamento mais completo disto, ver, por exemplo, [1]) que exijam sua instanciao em
processos de raciocnio. No h regras que precisam ser selecionadas atravs da
equiparao de padres. No h escolhas a serem feitas. Em grande medida, o estado do
mundo determina a ao da Criatura. Simon [14] observou que a complexidade do
comportamento de um sistema no necessariamente inerente complexidade da criatura,
mas talvez complexidade do ambiente. Ele fez esta anlise em sua descrio de uma
Formiga caminhando na praia, mas ignorou suas implicaes no pargrafo seguinte ao falar
sobre os seres humanos. Nossa hiptese (seguindo Agre e Chapman) de que grande parte
at mesmo da atividade de nvel humana , de maneira similar, uma reflexo do mundo
atravs de mecanismos muito simples, sem representaes detalhadas.

6. A metodologia na prtica
Para construir sistemas baseados em uma decomposio de atividades, de modo que
sejam verdadeiramente resistentes, precisamos seguir uma metodologia cuidadosa.
6.1 Mximas metodolgicas
Em primeiro lugar, de importncia vital testar as Criaturas que construmos no
mundo real, isto , no mesmo mundo em que habitam os seres humanos. desastroso cair
na tentao de test-las primeiramente em um mundo simplificado, mesmo com as
melhores intenes de, mais tarde, transferir a atividade para um mundo no-simplificado.
Com um mundo simplificado (paredes pintadas com um acabamento fosco, vrtices
retangulares em toda parte, e blocos coloridos como os nicos obstculos), muito fcil
acabar construindo, acidentalmente, um submdulo do sistema que depende de algumas
destas propriedades simplificadas. Esta dependncia pode, ento, refletir facilmente nas
exigncias sobre as interfaces entre aquele submdulo e os outros. A doena ento se
espalha, e o sistema completo acaba dependendo sutilmente do mundo simplificado.
Quando chega o momento de seguir para o mundo no-simplificado, gradualmente e
dolorosamente nos damos conta de que cada pedao do sistema precisa ser reconstrudo. E
pior: pode ser necessrio repensar o projeto total, pois as questes podem mudar
completamente. Quanto ao procedimento de se testar Criaturas simplificadas, adicionandose camadas de controle mais sofisticadas com o tempo, ele nos parece razoavelmente
seguro, pois a evoluo teve sucesso utilizando justamente esta abordagem.
Em segundo lugar, cada camada vai sendo extensivamente testada no mundo real
enquanto construda. O sistema precisa interagir com o mundo real ao longo de perodos
extensos. Seu comportamento precisa ser observado e submetido a um processo de debug
cuidadoso e completo. Quando uma segunda camada adicionada a uma camada j
existente, h trs fontes possveis de bugs: a primeira camada, a segunda camada, e a
interao entre as duas camadas. Eliminar a possibilidade da primeira destas fontes de bug

faz com que seja muito mais fcil encontr-los. Alm disso, h apenas uma coisa a se variar
na tentativa de concertar os bugs: a segunda camada.
6.2 Um instanciamento da metodologia
Construmos uma srie de quatro robs baseados na metodologia da decomposio
por tarefas. Todos eles operam em um mundo dinmico que no sofreu interferncias (reas
de laboratrio e escritrio no Laboratrio de Inteligncia Artificial do MIT). Eles
funcionam adequadamente com pessoas que andam perto deles, pessoas que tentam
confundi-los deliberadamente, e pessoas que ficam paradas olhando para eles. Todos os
quatro robs so Criaturas no sentido de que, ao serem ligadas, elas existem no mundo e
interagem com ele, perseguindo mltiplos objetivos determinados por suas camadas de
controle que implementam diferentes atividades. Isto os diferencia dos robs que recebem
programas ou planos a serem seguidos para realizar uma misso especfica.
Os quatro robs so apresentados na Figura 1. Dois deles so idnticos, de modo que,
na verdade, h apenas trs projetos. Um deles usa uma mquina LIPS offboard para a
maioria das suas computaes, dois usam redes combinacionais onboard e o outro usa um
processador onboard paralelo customizado. Todos os robs implementam a mesma
arquitetura abstrata, que chamamos de arquitetura de subsuno (subsumption
architecture), e que incorpora as idias fundamentais da decomposio em camadas de
comportamentos de realizao de tarefas, e da composio incremental atravs de debug no
mundo real. Detalhes a respeito desta implementao podem ser encontrados em [3].
(o leitor convidado a reportar-se ao texto original na internet para visualizar a
figura)
Fig. 1. Os quatro Mobots do laboratrio de IA do MIT. extrema esquerda est Allen, o primeiro a ser
construdo, e que trabalha com uma mquina LISP offboard que d suporte computacional. extrema direita
est Herbert, que tem o centro do corpo envolvido por um processador CMOS de 24 ns ( nodes). Novos
sensores e processadores de viso mais rpidos ainda sero construdos e instalados. No meio esto Tom e
Jerry, baseados em chassis de brinquedo, e cujos controladores so PALs (Programmable Array of Logic)
avulsos.

Cada camada na arquitetura de subsuno composta de uma rede de topologia fixa


de mquinas de estado finito. Cada mquina de estado finito possui uma srie de estados,
um ou dois registradores internos, um ou dois timers internos, e acesso a mquinas
computacionais simples, que so capazes de computar somas de vetores e coisas deste tipo.
As mquinas de estado finito rodam assincronicamente, enviando e recebendo mensagens
de comprimento fixo (1 bit nos robs menores e 24 bits nos robs maiores) atravs de
cabos. Em nosso primeiro rob, usamos cabos foram virtuais; em nossos robs posteriores,
usamos cabos fsicos para conectar os componentes computacionais.
No h uma sede de controle. Ao invs disso, as mquinas de estado finito so
acionadas pelos dados contidos nas mensagens que recebem. A chegada de mensagens ou a
expirao de perodos de tempo designados faz com que as mquinas de estado finito
alterem seu estado. As mquinas de estado finito possuem acesso aos contedos das
mensagens e podem apresent-las como sada, test-las com um predicado e fazer um
desvio condicional (conditional branch) para um estado diferente, ou pass-las para
elementos de computao simples. No h possibilidade de acesso a dados globais, nem de
ligaes de comunicao dinamicamente estabelecidas. Assim, no h possibilidade de
controle global.Todas as mquinas de estado finito so iguais e, no entanto, so prisioneiras
das suas conexes de topologia fixa.
As camadas so combinadas atravs de mecanismos que chamamos de supresso (da
o nome arquitetura de subsuno) e inibio. Em ambos os casos, medida que as novas
camadas so adicionadas, faz-se uma conexo lateral (side-tap) em um dos cabos j
existentes. Uma constante de tempo j definida associada com cada conexo lateral. No
caso da supresso, a conexo lateral ocorre na conexo lateral de entrada da mquina de
estado finito. Se uma mensagem chega rede de cabos, ela direcionada para a porta de
entrada (input port) da mquina de estado finito, como se tivesse chegado pelo cabo j
existente. Alm disso, quaisquer novas mensagens no cabo j existente so suprimidas (isto
, rejeitadas) pelo perodo de tempo especificado. No caso da inibio, a conexo lateral
ocorre no lado de sada da mquina de estado finito. Uma mensagem no novo cabo
simplesmente inibe as mensagens sendo emitidas no cabo j existente pelo perodo de

tempo especfico: ao contrrio do que ocorre na supresso, a nova mensagem no


apresentada em lugar delas.
Consideremos, por exemplo, as trs camadas da Figura 2. H trs camadas de controle
que empregamos em nosso primeiro rob mvel por cerca de um ano. Os sensores
primrios do rob consistem em um anel de doze sonares ultrassnicos. A cada segundo,
estes sonares so ativados, dando doze medidas radiais de profundidade. A recepo do
sonar fica cheia de interferncia, devido ao fato de que muitos objetos so espelhos para o
sonar. H, assim, problemas com reflexo especular e com caminhos de retorno que seguem
mltiplas reflexes devido a deslizes de superfcie com baixos ngulos de incidncia
(menos de 30 graus).
Em termos mais detalhados, as trs camadas funcionam da seguinte maneira:
(1) A camada de nvel mais baixo implementa um comportamento que faz com que o
rob (a encarnao fsica da Criatura) evite bater em objetos. Ele desvia tanto dos objetos
estticos quanto dos objetos mveis, at mesmo daqueles que o esto atacando ativamente.
A mquina de estado finito chamada sonar simplesmente ativa os dispositivos de sonar e, a
cada segundo, emite um mapa instantneo com as leituras convertidas em coordenadas
polares. Este mapa passado para as mquinas de estado finito colidir e sentir-fora. A
primeira delas simplesmente observa para ver se h alguma coisa parada adiante e, em caso
afirmativo, ela envia uma mensagem de parar para a mquina de estado finito responsvel
por fazer com que o rob siga em frente: mas se esta mquina no estiver no estado correto,
a mensagem pode muito bem ser ignorada. Simultaneamente, a outra mquina de estado
finito computa uma fora repulsiva no rob, baseada em uma lei do inverso do quadrado,
na qual cada retorno do sonar considerado como indicando a presena de um objeto
repulsivo. As contribuies de cada sonar so adicionadas para produzir uma fora total que
age no rob. A sada passada pra a mquina fugir, que a filtra (thresholds) e encaminha
para a mquina virar que orienta o rob diretamente para longe da fora repulsiva
computada. Finalmente, a mquina adiante move o rob para frente. Sempre que esta
mquina recebe uma mensagem de parar enquanto o rob est se movendo para frente, ela
d um comando para que o rob pare.
Esta rede de mquinas de estado finito gera comportamentos que fazem com que o
rob se desvie de objetos. Se ele comea no meio de um quarto vazio, ele simplesmente

fica parado l. Se algum se mover em direo a ele, ele sai da frente. Se ele se move em
direo a outros obstculos, ele pra. De forma geral, ele capaz de existir em um ambiente
dinmico sem bater em outros objetos e evitando que outros objetos batam nele.
A prxima camada faz com que o rob se locomova, quando no est ocupado
evitando chocar-se com outros objetos. A mquina de estado finito locomover gera uma
direo randmica para o rob mais ou menos a cada 10 segundos. A mquina desviar trata
esta direo como uma fora atrativa, e soma-a com a fora repulsiva computada dos
sonares. Ela usa o resultado para suprimir o comportamento de nvel mais baixo, forando o
rob a mover-se em uma direo prxima que foi decidida pela mquina locomover mas,
ao mesmo tempo, evitando eventuais obstculos. Observe que se as mquinas de estado
finito virar e adiante estiverem ocupadas dirigindo o rob, o novo impulso para locomoverse ser ignorado.
O leitor fica convidado aqui a se reportar ilustrao no texto original na internet)
(Conectamos algumas mquinas de estado finito umas s outras atravs de cabos, formando camadas
de controle. Cada camada construda sobre as camadas j existentes. As camadas de nvel mais baixo nunca
dependem da existncia das camadas de nvel mais alto.)

(3) A terceira camada faz com que o rob tente explorar. Ele procura lugares distantes,
e ento tenta alcan-los. Esta camada suprime a camada de locomoo, e observa como a
camada inferior desvia o rob devido a obstculos (talvez obstculos dinmicos). Ela faz
correes em vista de eventuais divergncias, e o rob alcana seu objetivo.
A mquina de estado finito quando-olhar observa quando o rob no est ocupado
movendo-se, ento d partida mquina de estado finito que funciona como um buscador
de espao livre (chamado de stereo no diagrama). Ao mesmo tempo, ela inibe o
comportamento de locomoo, para que a observao feita permanea vlida. Quando um
caminho observado, ele enviado para a mquina de estado finito chamada planejarcaminho, a qual injeta um comando de direo na mquina de estado finito evitar. Desta
forma, o comportamento de se desviar de obstculos, promovido pelos nveis mais baixos
continua funcionando. Isso faz com que o rob siga para uma direo diferente daquela
desejada pelo planejar-caminho. Por esta razo, o caminho efetivo do rob monitorado
pela mquina de estado finito chamada integrar, que envia estimativas atualizadas para a
mquina planejar-caminho. Esta mquina ento atua como uma mquina diferencial que

fora o rob a seguir na direo desejada, compensando o caminho efetivo do rob na


medida em que ele evita obstculos.
Estas camadas particulares foram implementadas em nosso primeiro rob, conforme
explicamos com maiores detalhes em [3]. Brooks e Connell [5] discutem a implementao
de mais trs camadas neste rob.
7. Do que no se trata aqui
Vista por alto, a arquitetura de subsuno, com sua rede de mquinas simples, lembra
certas abordagens mecanicistas inteligncia, tais como o conexionismo e as redes neurais.
Mas h muitas diferenas com relao a estas perspectivas, e tambm com relao a
diversas outras tradies ps-Dartmouth em inteligncia artificial. Explicaremos
brevemente estas diferenas nas sees seguintes.
7.1 No se trata de conexionismo
Os conexionistas tentam fazer redes de processadores simples. Assim, as coisas que
eles constroem (apenas em simulao, pois nenhum conexionista jamais colocou nenhum
rob de verdade em um ambiente real, no importa quo simples) so similares s redes de
subsuno que construmos. Entretanto, seus ns de processamento tendem a ser uniformes,
e o que eles buscam (conforme sugere seu nome) so revelaes a respeito de como
conecta-los

corretamente

(algo

que,

geralmente,

significa

realizar

conexes

quantitativamente ricas). Nossos ns so mquinas de estado finito diferentes umas das


outras, e a densidade de conexes muito menor: certamente, no uniforme, e muito
baixa entre as camadas. Alm disso, os conexionistas parecem estar querendo que
representaes explcitas distribudas emirjam espontaneamente de suas redes. Ns no
temos esperanas deste tipo, porque acreditamos que as representaes no so necessrias,
e aparecem apenas no olho ou na mente do observador.
7.2 No se trata de redes neurais

A abordagem por redes neurais a disciplina original da qual o conexionismo a


encarnao mais recente. As pessoas que trabalham com redes neurais alegam que h
alguma significao biolgica em seus ns de redes: como se eles fossem modelos de
neurnios. A maioria dos modelos parece implausvel, pois o nmero de conexes
modeladas muito reduzido em comparao com as milhares de conexes que realmente
existem entre os neurnios. Quanto a ns, no pretendemos que nossa escolha por
mquinas de estado finito tenha qualquer significao biolgica.
7.3 No se trata de regras de produo
Cada camada individual de produo de atividade de nossa arquitetura poderia ser
vista como uma implementao de uma regra de produo. Quando as condies certas so
encontradas no ambiente, uma determinada ao realizada. Dizer que estamos
trabalhando com sistemas de produo de regras a mesma coisa que dizer que qualquer
programa em FORTRAN com sentenas IF est implementando um sistema de produo de
regras. Um sistema de produo de regras tpico muito mais do que isso, na verdade: ele
tem uma base de regras, na qual uma regra selecionada em funo de uma checagem das
precondies de todas as regras frente a um banco de dados. As precondies podem incluir
variveis que precisam ser comparadas com indivduos dentro do banco de dados, mas
nossas camadas funcionam em paralelo e no possuem variveis, e tampouco precisam de
procedimentos de comparao. Ao invs disso, extraem-se aspectos do mundo, os quais
disparam ou modificam certos comportamentos da camada.
7.4 No se trata de quadro negro
Talvez fosse possvel fazer uma analogia entre as nossas redes e uma arquitetura de
controle de quadro negro (blackboard control architecture). Algumas das mquinas de
estado finito seriam as fontes de conhecimento localizado. Outras, seriam os processos que
agem nestas fontes de conhecimento, encontrando-as no quadro negro. Entretanto, h um
ponto simplificador na nossa arquitetura: todos os processos sabem exatamente onde
procurar no quadro negro quando esto conectados ao lugar certo. Acho que esta analogia

forada indica sua prpria fraqueza. Quando um processo capaz de obter um


conhecimento apropriado, no h flexibilidade. A maioria das arquiteturas avanadas de
quadro negro fazem uma utilizao pesada do compartilhamento e disponibilidade gerais de
quase todo o conhecimento. Alm disso, pelo menos em esprito, os sistemas de quadro
negro tendem a esconder dos consumidores de conhecimento quem foram os produtores
dos conhecimentos. Este o meio primrio de abstrao em sistemas de quadro negro. Em
nosso sistema, utilizamos conexes deste tipo explicitamente e permanentemente.
7.5 No se trata de filosofia alem
Heidegger obteve muito crdito em determinados crculos que o tm como algum
que teria entendido a dinmica da existncia. Nossa abordagem tem algumas similitudes
com trabalhos inspirados por este filsofo alemo (por exemplo, [1]), mas nosso trabalho
no teve uma inspirao deste tipo. Baseamo-nos unicamente em consideraes de
engenharia. Entretanto, isso no impede que nosso trabalho possa ser utilizado em um
debate filosfico como um exemplo para sustentar qualquer das opinies envolvidas.
8. Limites para o crescimento
Uma vez que nossa abordagem baseada em performance, a performance dos
sistemas que construmos que precisa ser usada para medir sua utilidade e para apontar para
suas limitaes.
Estamos convencidos de que, at meados de 1987, utilizando a arquitetura de
subsuno para implementar Criaturas completas, possumos os robs mveis em tempo
real mais reativos que existem. A maioria dos outros robs ainda esto no estgio de
experimentos e testes individuais em ambientes estticos ou, no melhor dos casos, em
ambientes estticos completamente mapeados. Os nossos, por outro lado, operam de
maneira completamente autnoma em ambientes dinmicos complexos to logo apertamos
o boto de ligar, e continuam a operar at que suas baterias acabem. Acreditamos que
operam em um nvel de inteligncia que est mais prximo do nvel de inteligncia simples
de inseto do que do nvel de bactria. Nosso objetivo atingir o nvel simples de

inteligncia de inseto dentro de dois anos. A evoluo demorou 3 bilhes de anos para sair
das clulas individuais para os insetos, e mais 500 milhes de anos para sair da para os
seres humanos. No citamos estes dados para fazer estimativas sobre nossa performance
futura, mas para indicar como o nvel de inteligncia de inseto no algo trivial.
Apesar da boa performance at agora, h diversas questes muito srias a respeito de
nossa abordagem. Temos crenas e esperanas a respeito de como estas questes sero
resolvidas; contudo, de acordo com nossos critrios, o que importa realmente apenas a
performance. Fazer experimentos e construir de sistemas mais complexos algo que exige
muito tempo e, assim, em vista da advertncia de que os experimentos que descreveremos a
seguir no foram feitos ainda, esboaremos como atualmente vemos a progresso de nossos
esforos. Nossa inteno ao discutir isso indicar que h pelo menos um caminho plausvel
adiante que leva a mquinas mais inteligentes, partindo de nossa situao atual.
Nossa crena que os tipos de camadas de controle produtoras de atividade que
estamos desenvolvendo (tarefas relacionadas mobilidade, viso e sobrevivncia) so prrequisitos necessrios para o nvel mais alto de inteligncia que atribumos aos seres
humanos.
As perguntas mais srias e mais naturais relativas aos limites de nossa abordagem so
as seguintes:

Quantas camadas podem ser construdas atravs da arquitetura de subsuno antes que
as interaes entre as camadas se tornem complexas demais para continuarmos?

Quo complexos podem ser os comportamentos que so desenvolvidos sem o auxlio de


representaes centrais?

Podero funes de nvel mais alto, tais como aprendizado, ocorrer nestas redes de
topologia fixa de mquinas de estado finito simples?
Esboaremos, a seguir, nossas idias a respeito destas questes.
8.1 Quantas camadas?

At hoje, trs camadas foi o mximo que j pusemos para rodar em um rob fsico.
Em simulao, j rodamos seis camadas paralelas. A tcnica de submeter o rob a um
processo completo de debug em todas as camadas de produo de atividade antes de
desenhar e adicionar uma nova camada parece praticvel, pelo menos at agora.
8.2 A questo da complexidade
Atualmente, estamos trabalhando para alcanar um padro de comportamento
complexo que exigir aproximadamente quatorze camadas de produo de atividade
individuais.
O rob possui sensores infravermelhos de proximidade que ajudam a evitar
obstculos locais. Ele possui um manipulador onboard que pode segurar objetos que
estejam no cho ou na altura de uma mesa, e tambm determinar seu peso aproximado. A
mo possui sensores de profundidade montados nela, de modo que a aproximao a um
alvo a ser agarrado pode ser controlada diretamente. Estamos trabalhando em um scanner
estrutural a laser que ser colocado na parte dianteira do rob e ser capaz de fazer mapas
gerais de profundidade.
O comportamento de alto nvel que estamos tentando instigar nesta Criatura que ela
se locomova por reas de escritrio de nosso laboratrio, encontre portas abertas, encontre
latas de refrigerante vazias no alto de mesas bagunadas, e leve-as at um depsito central.
De modo a alcanar este comportamento total, diversos comportamentos de realizao
de atividades mais simples so necessrios. Estes comportamentos incluem: desviar-se de
objetos, seguir paredes, reconhecer portas, passar por elas, orientar-se em funo de certas
localizaes a serem aprendidas, aprender a encontrar no ambiente os pontos de referncia
que levam aos objetivos, localizar objetos semelhantes a mesas, aproximar-se deles,
procurar objetos cilndricos mais ou menos da altura de latas de refrigerante no alto das
mesas, utilizar o brao de manipulao, mover a mo at os objetos percebidos, utilizar o
sensor da mo para procurar objetos do tamanho de latas de refrigerante que estejam
ressaltando diante do fundo, segurar os objetos, se forem leves o suficiente, e depositar
objetos.

As tarefas individuais no precisam ser coordenadas por nenhum controle central. Ao


invs disso, elas podem ser indexadas a partir do estado do mundo. Por exemplo, o
comportamento de agarrar pode fazer com que o manipulador agarre qualquer objeto do
tamanho apropriado que seja visto pelos sensores da mo. O rob vai agarrar
randomicamente qualquer objeto, entretanto, pois apenas no momento em que outras
camadas de comportamento percebem um objeto mais ou menos da forma correta no alto
de um objeto semelhante a uma mesa que o comportamento de agarrar estar em uma
posio tal que sua percepo do mundo o dir como reagir. Se, visto de cima, o objeto no
parece mais uma lata de refrigerante, o rob no ter o reflexo de agarrar, e outros
comportamentos de nvel mais baixo faro com que ele procure novos candidatos em outro
lugar.
8.3 Ser possvel o aprendizado e outros comportamentos deste tipo?
Alguns insetos apresentam um tipo simples de aprendizado que foi batizado de
aprendizado por instinto [7]. A hiptese que as abelhas fabricantes de mel, por exemplo,
so pr-programadas (pre-wired) para aprender como distinguir certos tipos de flores, e
para aprender caminhos que vo desde a colmia at fontes de nctar. Outros insetos, as
borboletas, conforme foi demonstrado, so capazes de aprender a distinguir as flores, mas
possuem um limite na quantidade de informaes que podem reter [8]. Se elas so foradas
a aprender sobre um segundo tipo de flor, esquecem o que j sabiam a respeito da primeira
flor, o que sugere que a quantidade total de informao que elas sabem reter permanece
constante.
Descobrimos uma maneira de construir, a partir de nossas mquinas de estado finito, e
sob a forma de um subsistema isolado, redes de topologia fixa que so capazes de um
comportamento de aprendizado em um nvel comparvel ao dos exemplos dados. No
momento, claro, estamos numa posio idntica dos outros pesquisadores de IA que
esculhambamos no incio do presente artigo. Temos um mdulo isolado de sistema que
funciona, e as entradas e sadas esto dependuradas, sem conexo.
Estamos trabalhando para remediar esta situao, mas o trabalho experimental com as
Criaturas fsicas uma atividade nada trivial que consome um bocado de tempo.

Descobrimos que quase qualquer equipamento ou software pr-projetado contm tantos


preconceitos a respeito de sua utilizao que acabam no sendo flexveis o suficiente para
tornarem-se parte de um sistema completo. Assim, no meio de 1987, nosso trabalho a
respeito do aprendizado estancou, esperando a construo de um novo tipo de cmera de
vdeo e de caixa de processamento de alta velocidade e baixo consumo de energia para
rodar algoritmos de viso especialmente desenvolvidos a 10 frames por segundo. Cada um
destes passos constitui um esforo significativo em engenharia, que estamos realizando to
rapidamente quanto permitem nossos recursos.
Mas falar fcil e barato.
8.4 O futuro
Nossos experimentos com Criaturas reais em mundos reais podem responder as
dvidas naturais a respeito de nossa abordagem. S o tempo dir.
Agradecimentos
Phil Agre, David Chapman, Peter Cudhea, Anita Flynn, David Kirsh e Thomas Marill
nos ajudaram muito com seus comentrios a verses anteriores deste artigo.
Referncias
[1] P. E. Agre e D. Chapman: Unpublished memo. MIT Artificial Intelligence
Laboratory, Cambridge, MA (1986).
[2] R. J. Bobrow e J. S. Brown: Systematic understanding: synthesis, analysis and
contingent knowledge in specialized understanding systems. In: R. J. Bobrow e A. M.
Collins (eds.): Representation and Understanding. New York: Academic Press, 1975, pp.
103-129.
[3] R. A. Brooks: A robust layered control system for a mobile robot. In: IEEE J.
Rob. Autom. 2. 1986. pp. 14-23.

[4] R. A. Brooks: A hardware retargeatable distributed layered architecture for


mobile robot control. In: Proceedings IEEE Robotics and Automation. Raleigh, 1987, pp.
106-110.
[5] R. A. Brooks e J. H. Connell: Asynchronous distributed control system for a
mobile robot. In: Proceedings SPIE. Cambridge, 1986, pp.7-84.
[6] E. A. Feigenbaum e J. A. Feldman (eds.): Computers and Thought. San Francisco:
McGraw-Hill, 1963.
[7] J. L. Gould e P. Marler: Learning by instinct. In: Sci. Am., 1986, pp. 74-85.
[8] A. C. Lewis: Memory constraints and Rower choice in pieris rapae. In: Science
232 (1986), pp. 863-865.
[9] M. L. Minsky (ed.): Semantic Information Processing. Cambridge: MIT Press,
1968.
[10] M. K. Minsky: Society of Mind. New York: Simon and Schuster, 1986.
[11] H. P. Moravec: Locomotion, vision and intelligence. In: M. Brady e R. Paul
(eds.): Robotics Research 1. Cambridge: MIT Press, 1984, pp. 215-224.
[12] N. J. Nilson: Shakey the robot, Tech. Note 323, SRI AI Center, Menlo Park,
CA, 1984.
[13] E. H. Shortlife: MYCIN: Computer-Based Medical Consultations. New York:
Elsevier, 1976.
[14] H. A. Simon: The Sciences of the Artificial. Cambridge: MIT Press, 1969.
[15] J. Von Uexkll: Umwelt und Innenwelt der Tiere. Berlin, 1921.

Você também pode gostar