You are here

Parte 03 - Setting Up & Using the Goal Structure

Este tutorial é bastante simples e tem o objetivo de apresentar estruturas que compõem as METAS que são possíveis de estabelecer para o funcionamento do agente e também permitem manipulá-las.
 
Embora apresente tais estruturas, pouco é indicado a respeito da forma de utilização das METAS, o que é deixado para outros tutoriais ou até mesmo o auto-aprendizado sobre os códigos exemplos fornecidos.
 
 
 

GoalChunks e "Goal Structure"

 
São as estruturas que representam as METAS criadas para o agente; como todos objetos declarativos, são construídos a partir do singleton "World", via método específico - "World.NewGoalChunk()".
 
Sendo um CHUNK, um GoalChunk pode armazenar qualquer quantidade de pares DV, podendo constituir em estruturas complexas.
 
 
Embora criados via classe "World" e manipulados via classe "Agent", os GoalChunks são armazenados na Goal Structure, localizada no nível superior do Subsistema Motivacional (MS).
 
 
O tutorial apresenta 2 parâmetros configuráveis para o Goal Structure, também acessíveis via classe Agent:
 
Agent.MS.Parameters.CURRENT_GOAL_ACTIVATION_OPTION = MotivationalSubsistem.CurrentGoalActivationOptions.FULL;
Agent.MS.Parameters.GOAL_STRUCTURE_BEHAVIOR_OPTION = MotivationalSubsistem.GoalStructureBehaviorOptions.STACK;
 
 
O primeiro parâmetro indica o nível de ativação da META, quando selecionada; pela documentação do Clarion os valores possíveis são:
 
 
 
Já o segundo parâmetro indica o modelo de funcionamento da Goal Structure: se for PILHA, os diversos GoalChunks são inseridos e ativados de acordo com a abordagem de acesso de uma pilha, onde a META ativa é a do topo; se for LISTA, a ativação dos GoalChunks pode ocorrer em qualquer ordem; portanto, os valores possíveis para esse parâmetro são:
 
 
 
Um GoalChunk pode fazer parte dos parâmetros de ENTRADA de IDNs do ACS; embora não diretamente citado neste tutorial, o código exemplo "HelloWorld - Full.cs" faz essa utilização:
 
 
 
 

Ativação de METAS

 
O tutorial apresenta 2 formas de ativar metas; a primeira - chamada de "manual" - é através de uma interface direta da classe "Agent":
 
Agent.SetGoal (<GoalChunk>, <activation-level>)
 
Agent.ResetGoal (<GoalChunk>)
 
 
A segunda forma de manipular a ativação de METAS é através da classe "GoalStructureUpdateActionChunk", também obtida através do singleton "World", e que permite a criação de uma sequência de ações de manipulação de METAS:
 
 
 
As ações possíveis de serem incluídas em um "GoalStructureUpdateActionChunk" são as seguintes:
 
 
 
 

Comentários finais

 
Como mencionado, este tutorial apenas apresenta algumas das ferramentas necessárias para criar e manipular METAS, mas pouco indica de como elas podem ser utilizadas, limitando-se a mencionar que os GoalChunks podem servir de entrada para IDNs dentro do ACS, indicando que essa pode ser uma maneira das METAS influenciarem nas ações definidas pelo agente.
 
Indica os comandos para ATIVAR as metas, porém nada indica em como utilizá-los.
 

Theme by Danetsoft and Danang Probo Sayekti inspired by Maksimer