Uma Arquitetura Aberta Multi-Agente para o Pré

Transcrição

Uma Arquitetura Aberta Multi-Agente para o Pré
Uma Arquitetura Aberta Multi-Agente para o Pré-Atendimento Hospitalar
Dennys Machado, Dirceu Grein, Edson Emílio Scalabrin, João da Silva Dias
Programa de Pós-Graduação em Tecnologia em Saúde (PPGTS)
Pontifícia Universidade Católica do Paraná (PUC-PR), Brasil
Resumo – Este artigo apresenta a definição de uma arquitetura de agentes cognitivos independentes para o
pré-atendimento hospitalar. Neste contexto, a escolha de uma arquitetura distribuída e aberta baseou-se nos
seguintes critérios: a) Trata-se de um problema cuja decomposição em subproblemas é natural, à medida que
cada subproblema (Central Regulação, Unidade Móvel, etc) pode ser representado e implementado como um
agente autônomo e independente; b) a interação entre os agentes pode tornar o sistema de pré-atendimento
mais confiável, à medida que as trocas de informações entre os agentes podem resolver situações difíceis pelo
número de especialistas e recursos exigidos de forma dinâmica (ou sobre demanda); c) o paralelismo natural
dos sistemas multi-agentes podem contribuir de forma considerável na implementação de um sistema de alta
performance. Deve-se enfatizar que tais critérios, no contexto do pré-atendimento hospitalar, facilitam a
decomposição do problema em entidades fracamente acopladas e fortemente coesas que são os princípios
básicos para se construir sistemas eficientes e mais fáceis de mantê-los. Finalmente, será apresentado um
exame sobre o conceito de agente, sistema aberto, arquitetura de agente e sistema multi-agente, assim como
um estudo de caso.
Palavras-chave: Informática em Saúde, Agentes Inteligentes, Sistema Aberto, Pré-atendimento Hospitalar.
Abstract - This article presents the definition of an architecture of independent cognitive agents for the hospital
pre-attendance. On this context, the choice of a distributed and opened architecture was based on the following
condition: a) It’s about a problem which decomposition in subproblem is natural, as sar as each subproblem
(Central Regulation, Mobile Unit, etc) can be represented and be implemented as a selfs-sustained and
independent agent; b) the interaction between the agents can become the system of more trustworthy preattendance, as sar as the exchanges of information between the agents can solve difficult situations for it
number of specialists and demanded resources of dynamic form (or on demand); c) the natural parallelism of the
system multi-agent can contribute in a considerable form in the implementation of a system of high performance.
It must be emphasized that such criterials, in the context of the hospital pre-attendance, facilitates the
decomposition of the problem in entities weakly connected and strongly joined that are the basic principles to
construct efficient and easier systems to keep them. Finally, it will be presented an examination on the agent
concept, open system, agent’s architecture and multi-agent system, as well as a case study.
Key-words: Computer Science in Health, Intelligent Agents, Open System, Pre-attendance Hospital.
Introdução
A informática aplicada na área de saúde
busca através de técnicas computacionais contribuir
para o desenvolvimento dos diversos segmentos da
saúde. O pré-atendimento hospitalar é um segmento
multidisciplinar que envolve entidades de natureza
distinta como: Hospital, IML, Polícia, Central de
Regulação, Unidade Móvel, entre outras; com o
objetivo de prestar atendimento de urgência e
emergência médica à vítimas de traumas [1].
A natureza operacional do pré-atendimento
hospitalar é segmentada entre competências de
entidades distintas e distribuída fisicamente,
evidenciando a necessidade de comunicação e
colaboração mutua entre as entidades, a fim de
prover assistência à vítima. Desta forma, a
organização
do
pré-atendimento
hospitalar
caracteriza-se como um sistema distribuído e aberto,
por envolver competências multidisciplinares de
organizações dinâmicas e distribuídas. [1].
A Inteligência Artificial Distribuída estuda
sociedades de agentes de software para trabalhar
juntas resolvendo problemas de natureza distribuída,
ou seja, problemas complexos que não podem ser
resolvidos por uma única aplicação [2]. Não há uma
única definição para agente de software, na
literatura
encontram-se
conceitos
distintos
dependendo do foco do autor [3, 4]. Contudo estes
conceitos não se anulam, mas colaboram para um
entendimento genérico da concepção de um agente
de software. A aplicação de uma sociedade de
agentes para o pré-atendimento hospitalar é
fundamentada em entidades de agentes. Uma
entidade de agente é um software persistente que
permite a interoperabilidade entre sistemas
computacionais
de
organizações
distintas,
tipicamente devem possuir capacidade adaptativa
entre os ambientes heterogêneos das organizações,
caracterizando a necessidade de sistemas abertos
[3].
Agente de software é uma entidade de
software persistente dedicada para um propósito
específico. A capacidade de persistência do
software distingue agentes de sub-rotinas; agente
tem suas próprias concepções de como efetuar
tarefas [4]. Percepção das condições dinâmicas do
ambiente, ação para afetar condições no ambiente;
e raciocínio para interpretar percepções, resolver
problemas, projetar inferências e determinar ações
[5]. Agentes podem agir autonomamente para
cumprir um conjunto de objetivos [6].
Um agente possui um conjunto de
propriedades que o ajudam a permitir sua atuação
no ambiente que está inserido, desta forma um
agente pode ser ainda um sistema computacional
com habilidade de autonomia, capacidade social,
reatividade e pró-atividade [7].
As propriedades ou habilidades dos agentes
diferenciam a atuação de um agente com relação a
outro. Abaixo são apresentadas algumas das
propriedades que poderão ser encontradas em um
agente:
Reatividade: propriedade que permite aos agentes
perceberem seus ambientes e responderem
adequadamente às mudanças neles ocorridas [7];
Autonomia: capacidade de tomar iniciativa e ter um
controle sobre as suas próprias ações; Orientação
por Meta (Objetivo): capacidade de possuir objetivos
e trabalhar em virtude destes; Continuidade
temporal: capacidade de continuarem ativos após
uma mudança de ambiente; Coerência: propriedade
que agente possui de resolver conflitos entre
objetivos concorrentes ou conflitantes [8]; Habilidade
Social: habilidade que os agentes possuem de
interagir com os outros agentes ou pessoas, no
momento adequado, para concluir suas tarefas ou
ajudar outros agentes [9]; Confiabilidade: agentes
devem demonstrar veracidade e benevolência, ou
seja, os usuários precisam ter certeza de que os
agentes serão fidedignos nas ações e informações,
e irão agir em seu benefício [7]; Inteligência:
propriedade de um agente que o habilita a negociar
efetivamente com ambigüidades [10]; Capacidade
de Adaptação: a capacidade do agente de modificar
seu comportamento em função de experiências
anteriores [7]; Mobilidade: capacidade do agente de
transportar-se de uma máquina à outra [11];
Capacidade de Aprendizagem: capacidade que um
agente deve possuir para executar uma tarefa com
maior eficiência do que em execuções anteriores
[10]; Flexibilidade: habilidade dos agentes de
escolher dinamicamente as ações e a seqüência de
execução das mesmas, em resposta a um estado do
ambiente [10]; Persistência: necessidade de manter
um estado interno conciso através do tempo, sem
alterá-lo ao acaso [12]; Personalização: capacidade
do agente de personalizar tarefas e ajudar pessoas
a desenvolvê-las da melhor maneira possível [13].
O agente de software não necessita possuir
todas as habilidades descritas, as habilidades do
agente dependeram do contexto que está inserido e
do papel que está representando. Um agente
sempre estará interagindo com o meio externo.
Desta forma o agente deverá estar inserido em um
contexto previamente definido, onde a troca de
dados, informações ou conhecimento ocorre através
de um protocolo conhecido [9].
As propriedades do agente de software são
caracterizadas pela arquitetura do sistema. Através
da arquitetura do sistema são fornecidos e
gerenciados os recursos primitivos de um conjunto
de agentes [6], [7].
Sistemas Abertos
Esta tecnologia é usada em várias áreas da
ciência da computação: a) interconexão entre
arquiteturas de diferentes máquinas (modelo OSI)
[14]; b) Ligação dinâmica entre cliente e servidor
(modelo CORBA) [15]; c) Reconfiguração dinâmica e
seleção mútua (modelo Contract-Net) [16] e d)
integração dinâmica de um agente em um contexto
de trabalho (modelo agente) [17]. A integração
dinâmica de agentes implica na capacidade de
aprendizagem do agente sobre tarefas que estão
envolvidos. A complexidade e a dinâmica dos
sistemas levam a uma nova situação onde saber
como projetar sistemas computacionais eficientes,
confiáveis e corretos não é mais suficiente.
Jacques Ferber [18] argumenta que os novos
softwares devem facilitar adaptação, em particular,
as mudanças no contexto do trabalho, tais como: a)
mudança do sistema operacional; b) mudança do
sistema gerenciador de banco de dados; c)
mudança da interface gráfica; e d) inserção de um
novo software. O novo sistema computacional deve
ter capacidade que envolve situações como: a)
inclusão de novas funcionalidades; b) alteração do
modo de funcionamento do software; c) integração
do novo software. Neste sentido pode-se dizer que
sistemas abertos são fortemente adaptativos.
Sistemas
Multi-agente
são
candidatos
promissores para implementação de arquiteturas
distribuídas, heterogêneas, flexíveis e abertas,
capaz de oferecer uma grande quantidade de
serviço em ambientes de trabalho coletivo sem uma
estrutura prévia definida. Sistemas Multi-agente
podem ser classificados de acordo com a arquitetura
que possuem (organização global), o grau de
autonomia de cada agente, o tipo de protocolo
usado para comunicação, ou a sua complexidade. A
principal distinção está relacionada aos agentes
autônomos. Agentes reativos são muito simples sem
qualquer representação do seu ambiente. Eles
interagem com um tipo de comportamento estimuloresposta [14]. Assim, comportamentos inteligentes
podem emergir de uma população de numerosos
agentes [19]. Os agentes autônomos são mais
complexos [20], [21], [22], [23], [24].
Metodologia
Comunicação entre agentes
O pré-atendimento hospitalar é um contexto
multidisciplinar que envolve entidades de naturezas
distintas,
evidenciando
a
necessidade
de
comunicação e colaboração mutua entre as
entidades. Neste caso a ação coletiva entre os
agentes é suporta pela capacidade de comunicação
dos agentes [25], [22], [24]. O processo de
comunicação
entre
agentes
complexos
é
normalmente assíncrono, e é executado por meio de
vários protocolos. Por exemplo, a Knowledge Query
and Manipulation Language (KQML) é uma
linguagem que possibilita os agentes expressarem
as suas convicções, após escolherem uma
modalidade de comunicação [15]. KQML define o
formato de tipos de mensagens que descrevem a
atitude do remetente direcionando o conhecimento.
A Linguagem de Cooperação (CooL), é uma outra
linguagem onde a comunicação entre os agentes é
executada por formatos de tipos de mensagens,
chamadas de primitivas de cooperação [26]. O
princípio de cooperação em CooL pode ser
observado por exemplo, no protocolo de ContractNet [27].
Na arquitetura proposta foram utilizadas
performativas KQML como forma de comunicação
entre os agentes participantes. Desta forma, um
agente que desejar participar de um préatendimento deverá implementar na camada de
comunicação suportando a linguagem KQML.
Arquitetura
Independente da arquitetura, os agentes
devem possuir informações de sua localização e de
suas competências. A diferença é a forma de
armazenamento e recuperação destas informações.
Os modelos de arquitetura expostos a seguir
preocupam-se em prover uma forma de
comunicação entre dois ou mais agentes:
Quadro Negro – BlackBoard -- Neste tipo de
arquitetura todos os agentes de um determinado
contexto estão publicados em um único lugar de
acesso. Todos os agentes antes de solicitarem
comunicação
com
os
demais
devem
necessariamente buscar este local. No BlackBoard
encontram-se registrado o nome do agente,
localização e competência de cada agente
integrante da arquitetura. A única forma de um
determinado agente conseguir comunicar-se dentro
da arquitetura é estando registrado no blackboard
[9]. A desvantagem desta arquitetura ocorre quando
o BlackBoard está indisponível (sem comunicação),
neste caso nenhum agente da rede poderá se
comunicar. Outro problema é com relação à
concorrência de acesso ao BlackBoard, todos os
agentes estarão concorrendo com solicitações a um
mesmo local. Este problema pode ser agravado
quando a rede possui um grande número de
agentes com muitas transações, ocasionando
problemas de performance [9].
Agentes Facilitadores - Na estrutura de sistemas
multiagentes os agentes complexos chamados de
facilitadores, organizam o trabalho entre os agentes
mais simples [3]. O processo de coordenação é
conduzido a um facilitador; agentes de serviços
notificam o facilitador das tarefas que eles podem
tratar; e quando um agente envia um pedido ao
facilitador, posteriormente é localizado um agente
competente para executar a tarefa; então, o
facilitador retorna o resultado para ser transmitido ao
agente que solicitou. A arquitetura facilitadora
racionaliza recursos de comunicação. Porém, devido
ao facilitador operar como uma ponte entre agentes,
seu fracasso pode impedir a comunicação entre os
agentes.
Troca direta de mensagens – A troca direta de
mensagem ocorre quando um agente possui o
endereço e a competência de cada agente que
integrante da arquitetura. Todos os agentes
participantes dispõem de uma área reservada para o
armazenamento das informações dos demais
agentes. Para a entrada ou saída de um novo
agente na rede é necessários que o agente
comunique a todos os outros agentes a sua
identificação e suas competências.
Os agentes da rede deverão manter o
endereço e as competências de cada agente. Neste
caso a indisponibilidade do BlackBoard não causará
problema de falta de comunicação. Cada agente
poderá comunicar-se diretamente com outros
agentes sem intervenção d BlackBoard. Caso um
determinado agente esteja sem comunicação
apenas este não trocará informações, os demais
estarão realizando a comunicação normalmente [9].
Resultados
O modelo interno de um agente também é
uma característica importante [20]. O modelo de um
agente estrutura mecanismos que podem permitir o
agente: (a) planejar e coordenar suas ações; (b)
argumentar sobre as convicções e intenções de
outros agentes (desta forma, escolhendo o que
comunicar com os agentes) [28]; (c) coordenar suas
ações sem comunicação [29]; (d) tomar decisões
locais (controle descentralizado); (e) reduzir
comunicação
(somente
informação
útil
é
comunicada, com assinatura KQML [15]); (f) saber
quem faz o quê e para quem é útil pedir informação
[30].
Desta forma todo agente constante de uma
arquitetura possui um modelo de funcionamento. No
modelo definido neste artigo, o agente é subdividido
em algumas camadas:
- Comunicação e Percepção: Camada onde é
implementada a forma do agente comunicar-se com
os demais agentes da rede. Toda comunicação do
agente será realizada por recebimento e envio de
mensagens, que neste caso serão prerrogativas
KQML. Este modelo de agente tem a capacidade de
perceber o ambiente e postar as respostas ao que
foi questionado.
- Núcleo de Processamento: O processamento é
responsável pelas respostas que o agente poderá
fornecer.
- Representação de si: Guarda os dados e
informações utilizadas pelo agente para processar
as respostas necessárias. São armazenadas aqui
também as capacidades e as tarefas do agente.
- Representação Externa: Guarda as informações do
ambiente externo, principalmente das capacidades e
tarefas (Objetivos e conhecimento) dos demais
agentes.
O modelo de agente adotado para a
construção da arquitetura foi baseado no modelo de
agente do Centro de Inteligência Artificial da
Espanha, conforme ilustra figura abaixo [31]:
Após a definição do agente é importante
colocar como estes agentes estarão interagindo com
o ambiente.
O ambiente definido para operação dos
agentes que são necessários a um pré-atendimento
hospitalar pode ser alterado, independente de quais
instituições estejam envolvidas. Neste contexto, será
necessária a colaboração de três agentes
importantes no pré-atendimento hospitalar: a) central
de regulação; b) unidade móvel; c) hospital ou
clínica. Dependendo da alteração do ambiente,
outros agentes podem fazer parte do atendimento,
por exemplo, em uma catástrofe, podem ser
alocadas quantas unidades móveis, centrais de
regulação, hospitais e demais entidades forem
necessárias.
As entidades colaboram no atendimento por
meio de uma solicitação ou por iniciativa própria. A
rede de agentes do pré-atendimento ainda possui a
característica de registrar e desresgistrar agentes
participantes, o que traz a possibilidade de
contribuições de outras instituições a qualquer
ocorrência que esteja sendo atendido, esta
característica de rede aberta é ilustrada na figura a
seguir, junto com alguns agentes que podem fazer
parte de um atendimento. Por se tratar de uma rede
aberta a ilustração não representa todos os agentes
que poderão participar de um atendimento,
apresenta apenas os agentes importantes para o
pré-atendimento hospitalar.
Representação de si
Núcleo de
Processamento
Representação Externa
Núcleo de montagem (Codificação e Decodificação) de mensagens.
Comunicação e Percepção
Mensagens trocadas com outros
agentes
Agente A
Agente B
Figura 1 - Modelo de Agente
Agente N
Figura 2 - Estrutura básica da rede do Pré-atendimento
Cada agente envolvido na rede do préatendimento pode ser integrante de outras redes,
como é o caso da Central de Regulação.
A construção de uma arquitetura de agentes
sociais visa facilitar o acesso e a atualização das
informações decorrentes do pré-atendimento
hospitalar. A proposta para atender o préatendimento hospitalar é a utilização de uma rede
interna para controlar as informações específicas.
Esta rede seria abastecida por todos os agentes que
estiverem participando do pré-atendimento. Cada
agente da arquitetura possuíra uma configuração
específica para sua rede interna.
Para que um agente possa participar do préatendimento ele deverá utilizar o protocolo e a
linguagem de comunicação definidos. A partir do
momento da apresentação de um novo agente para
a rede do pré-atendimento este passará a contribuir
com suas informações e competências.
Para atender a esta flexibilidade o préatendimento necessitará de uma estrutura, onde
deverão ser definidos papeis distintos a cada
membro participante, esta estrutura é exclusiva para
atender ao pré-atendimento e não necessariamente
deverá ser a mesma de outros agentes
participantes. A intenção de criar estes conceitos e
definições (papéis) é de organização. Cada agente
interno da estrutura possuirá suas atribuições para
que todas as informações de um pré-atendimento
possam ser mantidas e gerenciadas.
Agente Controlador de Repositório
Este agente irá realizar a interação com a
base de dados, todas as solicitações de informações
serão dirigidas a este agente, assim como
solicitações de inclusão e manutenção das
informações. É necessária a existência deste agente
sempre que se desejar controlar as informações de
um determinado contexto. Neste caso o préatendimento que estará sendo controlado. A
arquitetura possibilitará que as informações do préatendimento sejam utilizadas por qualquer agente
integrante da rede.
Agente User
Este agente é responsável em realizar a
integração com as demais estruturas que fazem
parte do pré-atendimento hospitalar. Estas
estruturas podem ser hardwares, softwares
(processos, sistemas) ou outros agentes. Esta
arquitetura existe para possibilitar a portabilidade de
um pré-atendimento. A comunicação com demais
objetos (agentes) passa a ser imprescindível quando
o sistema é aberto para utilização por órgãos que
trabalham de maneira distinta inclusive em locais
físicos diferentes.
Agente de processamento
Este agente estará sempre prestando serviços
a outros agentes, será responsável pelos
processamentos
necessários
para
o
préatendimento hospitalar, operando em conjunto com
o Agente Controlador de Repositório. Este agente
estará trabalhando para o pré-atendimento, os
mantenedores do negócio poderão solicitar para
este agente, informações mantidas por todos os
participantes da rede pré-atendimento. Este agente
também possibilita que a mesma rede seja
implementada em qualquer outro contexto. A
contextualização do negócio passa a ficar ao
encargo destas entidades, e se estas entidades
estiverem trabalhando, por exemplo, para uma rede
de supermercados, o negócio a que estará tratando
será de um supermercado. Isto torna uma
arquitetura portável.
A ilustração a seguir mostra a estrutura de
funcionamento da rede interna do agente Central de
Regulação:
Figura 3 - Estrutura do Agente Central de Regulação
Conhecendo o modelo de agente e os dois
modelos de arquitetura propostos procurou-se dispor
os agentes para disponibilizar as informações do
pré-atendimento. Desta forma foi criada uma
estrutura para acesso a base de dados que estará
sendo mantida e consultada pelos agentes
participantes da rede. A idéia é que toda solicitação
de informação e toda manipulação de dados sejam
realizadas através desta estrutura.
O fluxo das informações ocorrerá conforme
indicado. As solicitações da rede serão captadas
pela área de comunicação e percepção do agente
User, cuja principal funcionalidade é justamente
realizar esta interface. Após identificadas e
devidamente filtradas, no sentido de responder a
rede se a mesma poderá ser atendida, as
solicitações são encaminhadas ao agente de
Processamento, responsável por identificar qual
conjunto de dados é necessário para responder a
solicitação que lhe foi encaminhada pelo agente
User. O agente de processamento deverá repassar
ao agente Controlador de Repositório todos os
dados necessários para resolver a solicitação. O
agente Controlador de Repositório elaborará as
consultas necessárias à base de Dados do préatendimento assim como as manipulações de dados
exigidas pelo negócio. Prontamente o fluxo de
informações retorna a sua origem passando
novamente pelos agentes que fizeram o seu
encaminhamento. Desta forma o Agente Controlador
de Repositório devolve os dados solicitados pelo
agente de processamento, este monta a solução
com as informações solicitadas e devolve ao agente
User que disponibiliza a informação montando a
resposta ao agente da rede que a solicitou.
Discussão e Conclusões
O ideal para o pré-atendimento é prover uma
estrutura para atender a um único chamado, onde
estaria se ocupando apenas uma unidade móvel
uma central de regulação e um hospital ou clínica.
Mas também ter capacidade de atender, por
exemplo, a uma catástrofe, onde estariam presentes
várias unidades móveis, integradas a muitas centrais
de regulação utilizando diversas clínicas e hospitais
além dos demais órgãos que prestam apoio nas
ocorrências.
Logo abaixo é apresentado um diagrama de
seqüência, representando o pré-atendimento
hospitalar, ilustrando todos os passos necessários a
um atendimento e a ação de cada agente que pode
colaborar no pré-atendimento. Observando o
diagrama, consegue-se verificar com mais clareza a
viabilidade de utilização do modelo proposto.
A validação do modelo, para este artigo, será
realizada de acordo com um relato de um préatendimento hospitalar. Este relato estará sendo
acompanhado pelo diagrama de seqüência onde
será possível visualizar a ação dos agente da rede
de pré-atendimento no momento em que se está
atendendo uma ocorrência.
Relato de Acidente de Trânsito
“Um acidente de trânsito acontece, um
automóvel em alta velocidade choca-se contra uma
arvore. No carro um condutor e 3 passageiros, todos
ficam presos nas ferragens. O acidente ocorre por
volta das 4:00h da madrugada de sábado,
imediatamente pessoas da localidade acordadas
pelo barulho acionam o fone reservado ao serviço
de pré-atendimento. As informações são captadas
pelo atendente responsável pelo atendimento. Neste
momento o que se sabe é que se tem 4 pessoas
todas presas em ferragens, o endereço da
ocorrência e características do mesmo (veículo de
passeio conduzido em alta velocidade choca-se
contra uma árvore). Após esta prévia coleta de
informações realizadas pelo atendente o médico é
acionado recebendo a ligação. As informações
neste caso são outras, paralelo ao atendimento do
médico a unidade móvel já está se conduzindo ao
local da ocorrência. O médico capta novas
informações com relação as vítimas. Estas
informações são capazes de conduzir a próxima
ação a ser tomada. Informações como escoriações
externas, possibilidade de óbito no local, grandes
números de vítimas presas em ferragens, são
definitivas na decisão de encaminhamento do
médico até o local da ocorrência. Tais informações
são coletadas e o médico se dirige para o
atendimento. No momento da liberação da unidade
móvel, o que ocorreu antes da decisão da presença
medica, sabendo que seria necessária a utilização
de equipamentos especiais para recortar as
ferragens do veículo. Os paramédicos que
chegaram primeiro ao local do acidente realizaram o
trabalho de remoção das vítimas de dentro do
veículo, sempre apoiados pelo atendimento médico
da Central de Regulação responsável pelo
atendimento, quando a presença médica foi
requerida o mesmo estava presente para estabilizar
a situação dos feridos, durante o atendimento existe
a necessidade de consultar especialistas médicos, a
solicitação da Unidade foi prontamente atendida por
uma Clínica Especializada. O atendimento recebeu
o auxilio dos oficiais que respondem ao
departamento de trânsito. Duas unidades móveis do
tipo UTI foram utilizadas para a remoção dos feridos
além da unidade móvel médica. Os 3 passageiros
do veículo foram encaminhados ao hospital e
receberam os primeiros atendimentos logo após a
colisão, o que evitou o óbito dos 3, já o condutor do
veículo entrou em óbito no local do acidente antes
mesmo da equipe de socorro prestar atendimento,
devido a tal fato este foi atendido pelos profissionais
do Instituto Médico Legal.”
Contextualização do Cenário
A ação dos agentes dentro de um préatendimento é variável, ou seja, em cada chamado a
atuação pode existir ou não, assim como a própria
tarefa que o agente executa pode ser diferenciada.
No caso descrito acima, por exemplo, o agente
clínica especializada prestou auxilio ao médico que
fora deslocado ao local da ocorrência com relação a
traumas generalizados, o que não impede que em
uma próxima ocorrência o mesmo agente clínica
especializada venha a fornecer auxilio a um para
médico sobre um caso clínico.
O pré-atendimento exige em seus requisitos
mais básicos um grande número de agentes
distintos com atitudes diferentes e que possam agir
correspondendo as necessidades de cada
atendimento. Este modelo é fortemente inspirado
nas relações humanas que atualmente atendem as
necessidades
das
ocorrências.
Com
essa
arquitetura almeja-se conseguir controlar os diversos
órgãos quando estes se fizerem necessários dentro
de uma ocorrência, unir uma grande massa de
dados e informações capaz de auxiliar nos mais
variados métodos de atendimento hospitalar de
urgência/emergência, fornecer meios de criação de
melhores técnicas de pré-atendimento hospitalar e
principalmente fornecer um melhor auxilio aos
usuários dos serviços de pré-atendimento hospitalar
de uma determinada região. A seguir é apresentado
um diagrama de seqüência para ilustrar como as
mensagens são trocadas entre os agentes definidos
para o pré-atendimento descrito neste artigo.
Figura 4 - Diagrama de seqüência do cenário exposto
Agradecimentos
Agradecemos aos nossos orientadores Edson
Emílio Scalabrin e João da Silva Dias, pelo apoio
fornecido durante a pesquisa.
Referências
Machado, Dennys Grein, Dirceu Rutz, Linnyer Dias,
João D., (2000), Gerenciamento de Emergências
Médicas, Workshop de Informática em Saúde Hospital Universitário Cajurú - HUC, Curitiba.
Scalabrin, E., Carvalho, D., Angelotti, E., Azevedo,
H., Ramos, M. An Open Mutiagent Architecture to
Improve Reliability and Adaptability of Systems
Genesereth M.R., Ketchpel S. P., (1994), Software
Agents. Communications of the ACM. Vol. 37 (7).
July 48-53.
Smith, D. C., Cigra e J. Spoher. (1994), "KidSim:
Programming Agents Whithout a Programming
Language", Communications of the ACM, vol. 37
Hayes-Roth, B. (1995), "An Arquitecture for Adaptive
Intelligent Systems", Artificial Intelligence: Special
Issue on Agent and Interactivity, vol. 72
Maes, Pattie, (1995), "Artificial Life Meets
Entertainment: Life Like Autonomous Agents",
Communications of the ACM, vol. 38.
Wooldridge, Michael & Jennings, Intelligent Agents:
Theory
and
pratice.
[URL:
http://www.inf.pucrs.br/~nani/agenteWeb.htm#ag
enteinteligente], acessado em 26/02/2004.
Lemon, Bill; Pynadath, David; Taylor, Glenn (1996),
Cognitive
achitectures.
[URL:
http://krusty.eecs.umich.edu/cogarch4/toc.html],
acessado em 11/2003.
Paraiso, Emerson C. MASC, (1996) Sistema MultiAgente para Monitoração e Controle de
Processo. International ICSC Symposium on
Engineering of Intelligent Systems - Tenerife,
Espanha.
Auer, Karl, Agentes [URL: http://www.pcug.org.
au/~kauer/project/main] , 1995, acessado em
10/2003
Franklin, Stan; Graesser, Art Is it an Agent, or just a
Program?: A Taxonomy for Autonomous Agents,
proceedings of the Third International Workshop
on
Agent
Theories,
Architectures,
and
Languages, published as Intelligent Agents III, pp
21-35, Springer-Verlag
Belgrave, Marc, (1995) The unified agent
architecture.
[URL:
http://www.ee.mcgill.ca/
~belmarc/uaa_paper.html] acessado em 02/2004.
Foner, Lenny, "What's an Agent, Anyway? A
Sociological
Case
Study",
[URL:
http://foner.www.media.mit.edu/people/foner/Julia
/Julia.html], acessado em 26/02/2004.
Ferber J., Drogoul A., (1992), Using Reactive MultiAgent Systems in Simulation and Problem
Solving. In Avouris N.M., Gasser L., eds.,
Distributed Artificial Intelligence: Theory and
Praxis, Kluwer Academic Publishers, 53-80.
Finin T., Weber J., Wiederhold G., Genesereth M.,
Fritzson F., McKay D., McGuire J., Pelavin P.,
Shapiro S., (1993), Specification of the KQML
Agent-Communication
Language,
Technical
Report EIT TR 92-04, Enterprise Integration
Technologies, Palo Alto, CA, Updated in July.
Freitas, A.A. Lavington, S.H., (1998), Mining Very
Large Databases with Parallel Processing, MA:
Kluwer Academic Publishers.
Freitas, A, (1999), On Rule Interestingness
Measures. Knowledge – Based Systems Journal
12 (5-6): 309-315.
Ferber J., (1995), Les Systemes Multi-Agents.
Interéditions, Paris.
Brooks R. A., (1991), Intelligence without
representation. Vol.47. Artificial Intelligence, 139159.
Scalabrin, E. E. (1996), Conception et Realisation
d’environnement de développement de systemes
d’agents cognitifs. PhD Thesis. Université de
Technologie de Compiégne, France, 169.
Beer R.D., (1992), A Dynamical Systems
Perspective on Autonomous Agents. In: Special
Issue of the AI Journal on Computational
Theories of Interaction and Agency.
Demazeau Y., Müller J-P., (1990), Decentralized
Artificial Intelligence. In Demazeau Y., Mÿller JP., Decentralized AI, Elsevier Science Publishers.
Castelfranchi C., (1990), A Pont Missed in MultiAgent, DAI and HCI. Decentralized AI, Y.
Demazeau & J-P. Müller (Eds), Elsevier Science
Publisher B.V. (North-Holland), 49-62.
Wooldridge M. J., Jennings N. R., (1994), Agent
Theories, Architectures, and Languages: A
Survey,
Workshop
on
Agent
Theories,
Architectures
and
Laguages,
ECAI94,
Amsterdam.
Bond H., Gasser L., (1988), What is DAI?. In
Reading in Distributed Artificial Intellingence.
Morgan Kaufman Publishers.
Kolb M., (1995), CooL Specification. Technical
Report, SIEMENS AG.
Smith R. G., (1980), The Contract Net Protocol:
High-Level Communication and Control in a
Distributed Problem Solver. C29 (12). IEEE
Trans. On Computers 1104-1113.
Gasser L., (1992), An Overview of DAI. In:
Distributed Artificial Intelligence: Theory and
Praxis, N.M. Avouris & L. Gasser, editors, Kluwer
Academic Publishers 9-30.
Genesereth M. R., Ginsberg M.L., Rosenschein J.S.,
(1988), Cooperation without Communication. In:
Readings in Distributed Artificial Intellingence, A.
H. & L. Gasser, editors, Morgan Kaufmann
Publishers, San Mateo, California 220-226.
Smith R.G., Davis R., (1981), Frameworks for
Cooperation in Distributed Problem Solving. IEEE
Transactions on Systems, Man and Cybernectics.
Halfpap, Dulce M., Belli, Mauro J.(1997), O Papel de
Sistemas Inteligentes para o desenvolvimento de
Organizações Virtuais no ambiente Internet,
Universidade Federal de Santa Catarina.
[www.ufsc.br}. Acessado em 10/2003.
Contato
Dennys Andrei Machado - Analista de Sistema,
mestrando em Programa de Pós-Graduação em
Tecnologia em Saúde (PPGTS) da PUCPR –
Pontifícia Universidade Católica do Paraná.
Dirceu Grein – Analista de Sistema, mestrando em
Programa de Pós-Graduação em Tecnologia em
Saúde (PPGTS) da PUCPR – Pontifícia
Universidade Católica do Paraná.
Edson Emílio Scalabrin – Prof. Dr. do Programa de
Pós-Graduação em Tecnologia em Saúde (PPGTS)
da PUCPR – Pontifícia Universidade Católica do
Paraná.
João da Silva Dias – Prof. Dr. Eng. do Programa de
Pós-Graduação em Tecnologia em Saúde (PPGTS)
da PUCPR – Pontifícia Universidade Católica do
Paraná.
Endereço: Av. Imaculada Conceição, 1155 – Curitiba
– Paraná – Brasil.
Fone: 55 (41) 330-4553
Fax:
55 (41) 330-4571
Email: [email protected]
[email protected]
[email protected]
[email protected]