O objetivo desta aula é estudar o exemplo DemoLIDA do uso da arquitetura cognitiva LIDA para controlar o WorldServer3D e promover seu aperfeiçoamento por meio de novos módulos e funções.
Antes de mais nada, faça o "Pull from ..." do GitHub da versão mais nova do WorldServer3D. Foram modificadas algumas funções do mesmo para ele funcionar com o DemoLIDA e portanto a versão antiga pode não funcionar a contento. Se necessário, faça também o "Pull from" do WS3DProxy.
Faça o download do código do DemoLIDA e estude o código do mesmo com o auxílio do Netbeans.
Observe atentamente os arquivos no diretório configs do DemoLIDA. Ali estão os arquivos de configuração que são imprescindíveis para o framework LIDA conseguir funcionar.
A inicialização do programa está na classe Run. O método AgentStarter.main do Framework LIDA é utilizado para invocar a inicialização do LIDA. O AgentStarter.main procura então o arquivo configs/lidaConfig.properties, que aponta para os diversos outros arquivos utilizados pelo LIDA.
O arquivo configs/Agents.xml é um arquivo XML contendo toda a descrição dos módulos do framework a serem carregados e inicializados. É nele que estão definidos os subsistemas do LIDA que serão utilizados, bem como os detectors e modules desenvolvidos para controlar o WorldServer3D. Abra o arquivo Agents.xml e procure entender como é feito o binding dos detectors e modules desenvolvidos no DemoLIDA.
Os arquivos LidaFactories.xsd e LidaXMLSchema.xsd são Arquivos XSD (XML Schema Definition) utilizados para descrever o “formato/padrão” que os arquivos XML utilizados pelo LIDA devem seguir, ou seja, eles indicam quais tags XML podem ser utilizadas e de que maneira devem ser utilizadas nos arquivos XML do LIDA. Esses arquivos são utilizados internamente pelo Framework LIDA para fazer o parsing dos arquivos XML do LIDA e verificar sua integridade.
O arquivo factoryData.xml complementa as informações disponíveis no arquivo Agents.xml, com dados de inicialização do framework.
Os arquivos guiCommands.properties e guiPanels.properties são utilizados para customizar a janela de controle que o LIDA disponibiliza para o usuário visualizar os detalhes internos da arquitetura em funcionamento. O usuário pode utilizar controles padrões fornecidos pelo LIDA, ou pode criar seu próprio controle para visualizar os estados internos da arquitetura.
O arquivo logging.properties permite a configuração de alguns detalhes do mecanismo de logging utilizado pelo Framework.
O janela de controle do LIDA está desabilitada por default no DemoLIDA. Habilite a janela de controle do LIDA, alterando a propriedade lida.gui.enable=false para lida.gui.enable=true no arquivo lidaConfig.properties.
Desenvolva um painel para ser acoplado na interface de controle do LIDA, que indique a ação sendo realizada a cada instante pela arquitetura.
Implemente no DemoLIDA um mecanismo por meio do qual a criatura consiga detectar blocos a partir do ambiente, e consiga se movimentar de uma origem até um destino sem colidir com os blocos (desviando-se deles). Teste esse novo mecanismo criando um ambiente com múltiplos blocos.
Theme by Danetsoft and Danang Probo Sayekti inspired by Maksimer