Autor: Benjamin Grando Moreira

Implementação de SMA no Python e utilizando SPADE

SPADE é uma plataforma para o desenvolvimento de sistemas multiagentes (SMA) na linguagem Python e cuja mensagens trocadas são baseadas no protocolo de mensagens instantâneas XMPP. A nova versão do SPADE foi implementada para Python 3 e representa uma significativa melhoria com relação a sua versão para Python 2.7. Embora a essência de funcionamento seja […]

Read More

Lista de softwares para Sistemas a Eventos Discretos

Lista de ferramentas para projeto de Sistemas a Eventos Discretos: TCT: é uma poderosa ferramenta com diversos algoritmos associados com W.M. Wonham. Sua desvantagem é ser um editor por linha de comando e pouco intuitivo, embora tenha processamento rápido, o que permite cálculos de supervisores complexos que outras ferramentas não suportam. DESUMA: integra UMDES-LIB e GIDDES […]

Read More

Música com Inteligência Artificial

Sempre que vejo algo sobre composição musical através de algoritmos eu me lembro do TCC do Fernando Augusto Paz, que orientei em 2010, intitulado Biblioteca de Composição Musical Algorítmica. Foi publicado um artigo que fala sobre a questão computacional do desenvolvimento do framework e um sintetizando a composição musical. É possível ouvir a composição através […]

Read More

Programação na literatura

A ideia nesse post é trazer alguns textos relacionados com programação e presente em obras da literatura. Por enquanto só tem um, mas a ideia é ir adicionando com o tempo. “Se você quiser mesmo entender alguma coisa, a melhor maneira de fazer isso é tentar explicá-la para alguém. Isso o obriga a destrinchá-la em […]

Read More

Consulta ao AMS no SPADE

Esse tutorial é de uma versão antiga do SPADE (para Python 2.7) Nesse tutorial eu demonstro como identificar e listar o nome dos agentes existentes no ambiente. O SPADE possui um agente chamado AMS, que é a implementação do componente AMS proposto pela FIPA e que tem por finalidade gerenciar os agentes do sistema. O […]

Read More

Exercício UML – Elevador

O sistema de controle do elevador de uma empresa precisa ser desenvolvido. A empresa precisa que o acesso ao elevador seja realizado através de um cartão de identificação. Somente pessoas com esse cartão podem chamar o elevador. Existem 3 tipos de cartões: cartão de funcionário, cartão de visitante e cartão de fornecedores. Cartões de funcionário […]

Read More

Aplicação em outro exemplo do trabalho intitulado “supervisory control architecture for discrete-event systems”

Esse post complementa o tutorial postado anteriormente (Tutorial sobre o trabalho: supervisory control architecture for discrete-event systems), em que se propõem um método para encontrar um coordenador para conflitos encontrados entre supervisores locais. Nessa postagem eu disponibilizo uma apresentação onde exemplifico os passos mostrados no tutorial através de um outro exemplo, o de uma pequena […]

Read More

Tutorial sobre o trabalho: supervisory control architecture for discrete-event systems

O objetivo de tutorial é explicar o artigo de [1] com um passo-a-passo mais detalhado com a solução apresentada no trabalho. O sistema modelado é automatic guided vehicles (AGV) que atende a uma célula de manufatura. O sistema é originário de [2, Sec. 4.7] e seus modelos são apresentados no trabalho. O sistema foi simplificado […]

Read More

Comportamento OneShot no SPADE

Esse tutorial é de uma versão antiga do SPADE (Python 2.7) O comportamento do tipo oneshot é um comportamento que realiza o processamento uma vez apenas e termina o comportamento. O código a seguir ilustra 3 comportamentos, sendo o primeiro um comportamento cíclico e os dois são os comportamentos do tipo oneshot. O comportamento cíclico […]

Read More

Filtrando mensagens no SPADE

Esse tutorial é de uma versão antiga do SPADE (Python 2.7) No código a seguir demonstro como filtrar as mensagens que são recebidas por um comportamento. O comportamento em si é bastante simples, consistindo de um comportamento cíclico chamado M1 e que fica aguardando receber uma mensagem. Quando a mensagem é recebida ele simplesmente imprime […]

Read More