• Nenhum resultado encontrado

UAVs de asa fixa. Um deles é o desenvolvimento de Modelos Digital de Elevação (MDE), que é uma representação quantitativa da superfície terrestre que fornece informações básicas sobre o relevo do terreno. Os MDE podem ser produzidos a partir de imagens Shuttle Radar Topography Mission (SRTM), TOPODATA ou, ainda, a partir de levantamentos topográficos realizados em campo.

As imagens SRTM são fruto da missão SRTM, resultado da cooperação entre a National Aeronautis and Space Administration (NASA) e a National Imagery and Mapping Agency (NIMA), do Departamento de Defesa dos Estados Unidos e das Agências Espaciais da Alemanha e da Itália - Deutsches Zentrum für Luft- und Raumfahrt (DLR). As imagens foram obtidas em fevereiro de 2000, entre as latitudes 60ºN e 56ºS, por meio do radar SIR-C/X-SAR (Spaceborne Imaging Radar-C/X-Band Synthetic Aperture Radar) a bordo do ônibus espacial Endeavour, com resolução espacial de 30 metros para os Estados Unidos e de 90 metros para os demais países do mundo. A resolução de 90 metros, muitos vezes, não é precisa devido aos problemas de leitura (Valeriano, 2005).

Segundo Miranda (2005), a EMBRAPA (Empresa Brasileira de Pesquisa Agropecuária),

todavia, utilizou as imagens SRTM do território brasileiro disponibilizadas e realizou um

tratamento matemático de modo que foi possível obter medidas precisas para altitudes distantes

umas das outras em 90 metros para o território brasileiro.

Já as imagens Topodata, por sua vez, resultam de um projeto iniciado pelo Instituto Nacional de Pesquisas Espaciais (INPE) sendo utilizadas imagens SRTM disponibilizada que tiveram os dados processados, inspecionados, revisados e, posteriormente, aprimorados e corrigidos por profissionais do INPE em 2008 e 2009, a fim de obter uma resolução espacial de 30 metros. Visando uma expansão do projeto, em 2011 foi desenvolvida uma metodologia que capacitava a sua aplicação em qualquer dado SRTM pelo processo de interpolação por krigagem (Valeriano, 2005).

Entretanto, para ambos os casos, o uso destas imagens não se torna interessante para pequenos terrenos ou terrenos muito acidentados, que comumente encontram-se na região sul do país. Nesses casos, para um melhor detalhamento, é necessária a interpolação de dados, sendo calculada a diferença de altitude entre dois pontos conhecidos, traçado uma reta entre elas, permitindo estimar a altitude de outros pontos, o que é muito pouco preciso.

Desta forma, a maneira mais precisa de se ter um MDE de terrenos muito acidentados é realizando o levantamento in loco. Em pequenas propriedades é possível realizar esse levantamento com uso de instrumentos, com um teodolito. Já em grandes propriedades, o uso de UAVs voando em baixa velocidade facilitaria a obtenção de tais informações.

De posse de um MDE, é possível obter informações de uma área de terra, tais como:

• Mapas de fluxo - identifica o sentido e a intensidade de escoamento da água após uma chuva;

• Mapas de fluxo acumulado - identifica os pontos nos quais se acumulam água após a chuva, assim como a quantidade acumulada;

• Hipsométrico - representação da elevação de um terreno por meio de cores. As cores utilizadas possuem equivalência com a cota do terreno;

• Mapa de orientação de vertente: documento cartográfico que indica a declividade das encostas.

Dada a importância da criação de um MDE, iniciativas do governo incentivam pesquisas nessas áreas, tais como o PronaSolo do Governo Federal (Embrapa, 2016).

Na proposta do PronaSolo, o Instituto Brasileiro de Geografia Estatística (IBGE) criará uma base de dados para acesso da população e dos gestores sobre a elevação do solo no território nacional. A execução do projeto está prevista para um horizonte de 30 anos com um investimento do Governo Federal de R$ 80 milhões para todo o Brasil (Embrapa, 2016). Uma das propostas do PronaSolo é criar dados que subsidiarão técnicas que permitam eliminar as curvas de níveis, as quais dificultam a operacionalização do solo.

Segundo o site do Governo Federal, os mapas atuais não possuem escala viável para o manejo de solo em nível de propriedade e muito menos para planejamento de microbacias. A Embrapa estima um custo benefício de R$ 185,00/ha para cada real investido no projeto. Hoje é possível a confecção de mapas menos precisos em escalas maiores. Segundo Embrapa (2016), o Brasil perde cerca de $ 5 bi/ano em função do processo erosivos.

A utilização de Drones para o mapeamento do solo é uma opção muito eficiente, já que

estes veículos aéreos podem possuir, além das tradicionais câmeras, sensores ativos. Os sensores

ativos, tais como infravermelho e ultrassom permitem uma maior qualidade dos dados lidos, uma

vez que dados obtidos por meio de câmeras podem vir distorcidos, já que algumas áreas de solo

podem estar obstruídas por florestas, edificações, vegetações com cortes mais rasteiros, entre

outros, o que dificulta a leitura do solo.

Este capítulo apresentou uma contextualização do problema de pesquisa, iniciando com os motivos que levaram a escolha de Drones para o monitoramento agrícola, assim como a abordagem exploratória do cenário de Interface Homem Computador (IHC) que permitiram a definição do cenário de pesquisa, que em conjunto com o mapeamento sistemático realizado forneceram informação suficiente para a definição do Modelo Aplicado de Otimização de Voo de Grupo de Drones.

Dos trabalhados selecionados para a leitura após o mapeamento, 8 foram escolhidos para serem utilizados como parâmetros de comparação, um deles envolvendo um algoritmo de otimização para ambientes dinâmicos e os outros sete para uma comparação qualitativa com o presente modelo.

Em seguida, o capítulo apresentou com detalhes o Modelo Aplicado de Otimização de Voo para Grupo de Drones, como ele proverá a abertura, a dinamicidade e a otimização e, ainda, algumas simplificações que serão consideradas para os testes e como será realizada a validação do modelo.

Ao final, este capítulo apresentou um cenário que poderia ser beneficiado com o voo de

grupo de Drones, aplicando na estimativa de MDE do terreno.

3 FUNDAMENTAÇÃO TEÓRICA

Este capítulo apresenta conceitos fundamentais sobre as principais técnicas e modelos utilizados no desenvolvimento do presente trabalho. Inicialmente são apresentados os conceitos básicos sobre Sistemas Multiagentes e Organização. Na sequência é apresentado o modelo BDI, que permite o desenvolvimento de agentes cognitivos. Após é apresentada a técnica de negociação baseada em leilões e, por fim, uma seção sobre Complexidade Computacional de Algoritmos de Otimização, que caracteriza o problema de otimização a resolvido por esta tese.

3.1 SISTEMAS MULTIAGENTES

Os Sistemas Multiagentes são entidades compostas por agentes de software, que possuem as características de cooperarem entre si para a resolução de problemas que fogem das capacidades individuais dos agentes. Para o desenvolvimento dessas entidades virtuais é necessário utilizar o conhecimento de outras áreas para auxiliar na concepção desse contexto computacional.

Assim como a orientação a objetos recebeu uma grande contribuição da matemática, a representação do conhecimento e raciocínio receberam contribuições da psicologia, da lógica e da biologia concebendo-se, assim, as redes neurais, PSO, AG e outras técnicas de otimização. A área de Sistemas Multiagentes é influenciada pela sociologia, vislumbrando uma concepção de sistema com propriedades que até então somente sociedades reais possuíam (Hübner e Sichman, 2003).

Os Sistemas Multiagentes são formados por quatro aspectos que são:

1. Os agentes;

2. A interação entre os agentes;

3. O ambiente de execução dos agentes;

4. A organização social dos agentes.

Agentes são softwares autônomos e essa autonomia significa que um agente existe independente dos demais e do problema a ser solucionado. Nessa autonomia de existência, um agente não precisa de outro para existir, mesmo que para alcançar seus objetivos ele eventualmente precise da ajuda dos demais.

A interação entre os agentes é obtida por troca de mensagens, como em muitas situações os agentes se localizam em diferentes máquinas da rede, é necessário que tais mensagens sejam compatíveis com o protocolo de comunicação da rede. Além disso, é necessário que as mensagens possuam um protocolo próprio, para que os diferentes agentes, que eventualmente se encontram em plataformas diferentes, consigam manter coerência na comunicação, além de facilitar a inclusão de novos agentes ao sistema. Entre os protocolos de comunicação de agentes destacam-se o Foundation for Intelligent Physical Agents - Agent Communication Language (FIPA ACL) (FIPA, 2012) e o Knowledge Query and Manipulation Language (KQML) (Finin et al., 1994).

O ambiente no qual os agentes são executados trata-se de um local perceptivo, que

interage com os agentes, provendo informações necessárias para a tomada de decisão. Esse

ambiente também pode ter seu estado modificado pelas ações executadas pelos agentes.

concepção dos modelos e o problema, isto é, os modelos não são desenvolvidos para solucionar um problema específico.

Levando em consideração o ponto de vista de desenvolvimento de modelo, um Sistema Multiagente pode ser definido por modelos genéricos de agentes, interação e organização, que possam ser instanciados dinamicamente em um ambiente de execução para solucionar os problemas que surgem.

A seguir estão quatro características para o desenvolvimento de Sistemas Multiagentes (Alvares e Sichman, 1997):

1. Os agentes são concebidos independentemente de um problema particular;

2. A interação entre os agentes não é projetada anteriormente, busca-se definir protocolos que possam ser utilizados em situações genéricas;

3. A decomposição de tarefas para solucionar um dado problema pode ser feita pelos próprios agentes;

4. Não existe um controle centralizado da resolução do problema.

3.1.1 Modelos Organizacionais de Agentes

Pode-se definir organização de agentes como a maneira em que estes se organizam para executar ações com o objetivo de levar o ambiente a um estado satisfatório a todos. Lemaítre e Excelente (1998) relatam a existência de duas abordagens para a compreensão de como é a organização de um grupo de agentes: centrada nos agentes e centrada na própria organização.

Nas organizações centradas nos agentes, os agentes não possuem uma representação explícita da organização. Essa representação está distribuída no código dos agentes e um observador externo (ou outro agente) pode apenas inferir de forma subjetiva a organização por meio de observação do comportamento dos agentes. Esta descrição é chamada de organização observada. Pode-se citar como exemplo, a organização de formigas em um formigueiro. Cada indivíduo que observar um formigueiro formará uma opinião diferente sobre a organização, já que não existe uma descrição única da sua real organização, pois está distribuída e implícita no DNA das várias formigas do formigueiro.

Na abordagem centrada na organização, há uma representação explícita da organização e

o observador ou um agente pode obter informação formal de como o sistema está organizado. Esta

descrição é chamada de sociedade institucionalizada. Pode-se utilizar como exemplo um time de

futebol, que recebe as instruções vindas do técnico e os jogadores devem cooperar mutuamente de

Figura 3.1: Tipos de organizações de agentes (Hübner e Sichman, 2003)

acordo com as instruções. Neste caso, os observadores conseguem representá-la explicitamente, sem precisar observar seu comportamento ou considerar os agentes que a compõem.

Em Hübner e Sichman (2003), é proposta uma sub-divisão nas duas abordagens citadas anteriormente. Em uma delas, os agentes são capazes de representar subjetivamente a organização na qual eles estão inseridos e na outra os agentes não são capazes de tal representação. Assim, são duas abordagens centradas no agente e duas centradas na organização.

A Figura 3.1 apresenta as quatro abordagens segundo Hübner e Sichman (2003), sendo que em (a) apenas o observador consegue modelar o comportamento do sistema de forma subjetiva, em (b) a organização é construída pelos próprios agentes de forma subjetiva, cada agente pode construir uma representação organizacional diferente (na figura, os quadrados preenchidos ilustram as diferentes representações subjetivas). Em (c), embora o sistema tenha uma organização, os agentes são incapazes de conhecê-la. Já em (d), os agentes podem conhecer a organização tanto de forma subjetiva (cada agente terá uma visão da organização) ou adquirindo informações formais da organização (institucionalizada).

A seguir, uma descrição detalhada de cada abordagem:

Tipo AR: as organizações tipo AR são concebidas com uma visão centrada nos agentes. Os agentes não representam e não raciocinam sobre a organização observada.

Eles são incapazes de gerar uma representação interna de sua organização. Nesse ambiente os agentes possuem comportamentos elementares e a partir deles, por meio da interação entre os agentes e o ambiente, podem surgir comportamentos complexos.

Evidentemente, nesse ambiente os agentes são incapazes de alterar sua organização, já

que não a conhecem. Como exemplo pode-se citar a organização de um formigueiro;

conhecimento para a realização das tarefas. Nesse modelo, os agentes não podem mudar a organização. Cita-se como exemplo algumas redes de espionagem, nas quais, embora haja uma organização, os espiões são incapazes de representá-las;

Tipo OC: concebidas com uma visão centrada na organização, os agentes têm ca-pacidade de representar internamente a organização institucionalizada, possuem seu comportamento parcialmente determinado pela organização, percebem como esta inter-fere internamente no seu comportamento e no comportamento dos demais agentes do sistema. Os agentes são capazes também de utilizar essas informações para melhorar o seu funcionamento. O tipo de restrição imposta por esse tipo de organização é chamada de restrição fraca, pois como os agentes conhecem a organização institucionalizada podem fugir do comportamento que a organização estabelece para promover os objetivos.

Por exemplo, em um time de futebol, o zagueiro pode sair de sua posição original e participar de uma jogada no ataque.

Deve-se também levar em consideração as características de autonomia dos agentes dentro das organizações, sendo chamada autonomia organizacional a capacidade do agente de agir de forma diferente ao pré-estabelecido. Para organizações do tipo OC, a autonomia é uma possibilidade. Para organizações do tipo OR não existe autonomia organizacional, já que os agentes são inteiramente dependentes do comportamento estabelecido pela organização e não conseguem modificá-la. Já nas organizações centradas nos agentes (AR e AC) não pode ser definida autonomia organizacional, já que não existem restrições organizacionais.

O modelo MOISE+ desenvolvido por Hübner e Sichman (2003), será utilizado para representar a organização de agentes na presente tese e é detalhado na Seção 4.1. Este é um modelo centrado na organização, distribuído, onde todos os agentes possuem explicitamente uma representação da organização.

3.2 AGENTES DE SOFTWARE COGNITIVO

Dentre os segmentos da Inteligência Artificial, alguns são dedicados ao estudo de arquiteturas de agentes cognitivos baseados em estados mentais. As arquiteturas BDI caracterizam-se por utilizarem os estados mentais de crenças, decaracterizam-sejos e intenções.

Os estados mentais humanos possuem vínculo com o ambiente, estabelecendo uma

relação de existência e significância. Para o agente, os estados mentais indicam uma propriedade

de direcionamento do mundo para o agente e vice-versa. Como exemplo, a afirmação "a porta

está fechada"é uma crença sobre a porta, do mundo para o agente e "entrar na sala"é um desejo, do

Figura 3.2: Componentes da arquitetura BDI (de Oliveira Zamberlam e Giraffa, 2001)

agente para o mundo. As intenções são um sub-conjunto de desejos, que podem ser consideradas as ações que o agente deve executar para satisfazer um desejo.

Os agentes tratam as crenças como verdades sobre o ambiente, utilizando-as para expressar suas expectativas sobre possíveis estados futuros. Um agente pode ter crenças sobre o mundo, sobre outros agentes, sobre interações com outros agentes e crenças sobre suas próprias crenças, inclusive, as crenças podem ser contraditórias.

Os desejos, ao contrário dos estados representados pelas crenças, representam estados desejáveis que o sistema pode apresentar.

As intenções são um subconjunto dos desejos. Se um agente decide seguir uma meta específica, então essa meta torna-se uma intenção. São as intenções que determinam o processo de raciocínio prático, definindo as ações que serão realizadas. Uma vez adotada uma intenção haverá um direcionamento no raciocínio prático futuro, ou seja, enquanto se tem uma intenção específica, somente serão consideradas as ações que são consistentes para a realização desta intenção.

Sendo assim, no modelo BDI as decisões são logicamente restritas pelas crenças dos agentes, os quais representam o ambiente, o estado mental dos outros agentes e suas capacidades.

Com base nesses estados mentais, um agente pode possuir desejos. Esses desejos podem depender exclusivamente do agente em questão, de alguns ou de todos os agentes que fazem parte de uma sociedade. Um sub-conjunto de desejos,as intenções do agente, pode traçar uma meta para que o desejo seja satisfeito.

Ao projetar um agente baseando-se no modelo BDI, são especificadas suas crenças e seus desejos, mas a escolha das intenções fica sob responsabilidade do próprio agente, isto é, de uma auto-análise desses estados inicialmente disponíveis.

Em de Oliveira Zamberlam e Giraffa (2001) são definidos sete componentes importantes de uma arquitetura BDI. Os componentes são descritos na sequência e representados na Figura 3.2:

• Um conjunto de crenças atuais, que representam as informações que o agente tem sobre

seu ambiente atual;

• Uma função de seleção, que determina uma ação para executar, tendo como base as intenções atuais.

Dentre as linguagens de programação que utilizam a arquitetura BDI, uma merece atenção especial: a linguagem AgentSpeak(L), primeiramente apresentada por Rao (1996).

Essa linguagem foi projetada para a programação de agentes BDI na forma de planejamento reativo ( reactive planning systems). Esses sistemas são aplicativos em execução permanente, respondendo a eventos que ocorrem no ambiente que eles estão situados, por meio de execução de planos que se encontram em uma biblioteca. Para a presente tese foi utiliza a linguagem JASON, detalhada na Seção 4.2, que permite desenvolver agentes cognitivos baseados em BDI por meio da linguagem AgentSpeak.

3.2.1 Linguagem de Programação BDI - AgentSpeak(L)

A linguagem de programação AgentSpeak(L) é um extensão natural da programação em lógica, porém focada na arquitetura de agentes BDI, representando um modelo abstrato para a programação de agentes (Wooldridge, 1997).

A linguagem possui uma sintaxe semelhante ao paradigma de programação em lógica, tal como a aplicada no ambiente PROLOG. Assim, um agente codificado em AgentSpeak(L) corresponde a um conjunto de crenças e planos que formarão a base de conhecimento inicial.

Uma unidade de crença corresponde a um predicado de primeira ordem na programação em lógica e as literais de crenças são unidades de crenças ou suas negações.

Em Hübner et al. (2004) são apresentados dois tipos de objetivos para um agente em AgentSpeak(L): objetivos de realização (achievement goals) e objetivos de teste (test goals).

Objetivos de realização e de teste são predicados da programação em lógica tradicional, tais como crenças, porém com operadores prefixados ’!’ e ’?’, respectivamente.

Objetivos de realização expressam que o agente quer alcançar um estado no ambiente,

sendo o predicado associado ao objetivo verdadeiro. Na prática, esses objetivos iniciam a

execução de sub-planos. Um objetivo de teste retorna a unificação do predicado de teste com

uma crença do agente, ou falha caso não seja possível a unificação com nenhuma crença do

agente. Um evento ativador (triggering event) define quais eventos podem iniciar a execução

de um plano. Um evento pode ser interno, quando gerado pela execução de um plano em que

um subobjetivo precisa ser alcançado, ou externo, quando gerado pelas atualizações de crenças

que resultam da percepção do ambiente. Eventos ativadores são relacionados com a adição e

a remoção de atitudes mentais (crenças ou objetivos) que são representadas pelos operadores

prefixados (’+’) e (’-’) (Hübner et al., 2004).

Planos fazem referência a ações básicas que um agente é capaz de executar em seu ambiente. Em Hübner et al. (2004), essas ações são definidas por predicados com símbolos predicativos especiais (chamados símbolos de ação) usados para distinguir ações de outros predicados. Um plano é formado por um evento ativador (denotando o propósito do plano), seguido de uma conjunção de literais de crença representando um contexto. O contexto deve ser consequência lógica do conjunto de crenças do agente no momento em que o evento é selecionado pelo agente para o plano ser considerado aplicável. O restante é uma sequência de ações básicas ou subobjetivos que o agente deve atingir ou testar quando uma instância do plano é selecionada para execução.

Duas estruturas importantes para o interpretador são o conjunto de eventos e o conjunto

de intenções. Intenções são ações com as quais um agente se compromete a executar quando um

evento é chamado. Eventos causam o início da execução de planos que tem eventos ativadores

correspondentes. Eles podem ser externos, quando originados da percepção do ambiente

(exemplo: a adição ou a remoção de crenças); ou internos, quando chamados por meio da

execução de planos do agente (um subobjetivo em um plano gera um evento do tipo "adição de

objetivo de realização"). Eventos externos criam novas intenções representando diferentes focos

Duas estruturas importantes para o interpretador são o conjunto de eventos e o conjunto

de intenções. Intenções são ações com as quais um agente se compromete a executar quando um

evento é chamado. Eventos causam o início da execução de planos que tem eventos ativadores

correspondentes. Eles podem ser externos, quando originados da percepção do ambiente

(exemplo: a adição ou a remoção de crenças); ou internos, quando chamados por meio da

execução de planos do agente (um subobjetivo em um plano gera um evento do tipo "adição de

objetivo de realização"). Eventos externos criam novas intenções representando diferentes focos

Documentos relacionados