As empresas têxteis que possuem instalações de tingimento próprias têm grande dificuldade em otimizar o uso de máquinas de tingimento devido às diversas limitações que as máquinas e os tecidos apresentam. Para que uma máquina de tingimento seja eficaz, ela deve ser utilizada em sua capacidade máxima na inicialização. Para serem unidos, os lotes deverão ter o mesmo tipo de composição, a mesma cor de tinta, e a soma dos seus pesos não deverá ultrapassar a capacidade máxima da máquina.
Este projeto se baseia nesta definição e propõe a construção de uma ferramenta que utiliza um framework de sistemas multiagentes para alocação de máquinas de tingimento.
PROBLEMATIZAÇÃO
Formulação do Problema
Neste projeto o objetivo principal é iniciar a alocação com as características mais perceptíveis que seriam o peso do OTN e a cor da cor, com esses itens é possível ter uma ideia de quão viável é uma solução com uso seriam as drogas, com resposta ao final deste TCC.
Solução Proposta
OBJETIVOS
Objetivo Geral
Objetivos Específicos
METODOLOGIA
ESTRUTURA DO TRABALHO
No Capítulo 2, Fundamentação Teórica, é apresentada uma revisão bibliográfica dos temas envolvidos no projeto como: Inteligência artificial, agentes, sistemas multiagentes bem como o estudo do framework JADE que implementa sistemas multiagentes que serão utilizados no projeto. O Capítulo 3, Desenvolvimento, apresenta um projeto detalhado do sistema produzido, bem como sua modelagem de acordo com os conceitos estabelecidos pela UML. O capítulo também discute como o sistema foi desenvolvido, sua metodologia utilizada e os testes realizados para avaliar seu desempenho.
PROCESSOS INDUSTRIAIS
Armazenamento
Após a inspeção, a tela é empilhada em paletes ou em caixas próprias para armazenamento e armazenada em estoque até ser necessária ao setor de tinturaria. Em estoque, são divididos em lotes, onde cada rolo ou rede embrulhada recebe identificação, quando foi produzida, o tipo de rede e o peso.
Seleção das Malhas
Envio para Máquina
INTELIGÊNCIA ARTIFICIAL
O campo da inteligência artificial tem uma abordagem enorme que varia no sentido de como adquiri-la, armazená-la e utilizá-la. De acordo com a Figura 4, a inteligência artificial é classificada de acordo com o método de solução, incluindo inteligência artificial simbólica, inteligência artificial conexionista, inteligência artificial evolutiva e inteligência artificial híbrida. Para o desenvolvimento deste projeto será utilizada a abordagem IAD (Inteligência Artificial Distribuída) com a utilização da plataforma JADE para implementação de agentes inteligentes.
INTELIGÊNCIA ARTIFICIAL DISTRIBUIDA
AGENTES INTELIGENTES
- Racionalidade do Agente
- Ambiente de Tarefas
- Estrutura do Agente
- Programa de Agentes
- Arquitetura do Agente
- Multiagentes
A função do agente mapeia qualquer sequência de percepção específica para uma ação e assim define o comportamento do agente (RUSSEL & NORVIG, 2004). A Figura 5 mostra a forma de interação entre o agente e seu entorno e como funciona o fluxo de dados interno do agente. Um agente conceitualmente racional é aquele que faz tudo certo; em sua tabela de sequência de percepção, todos os registros correspondentes à função do agente são preenchidos corretamente.
Para medir o sucesso do agente, é realizada uma análise das ações do agente no ambiente. As ações do agente fazem com que o ambiente passe por uma série de estados. Totalmente observável ou parcialmente observável: um ambiente é totalmente observável se os sensores do agente detectarem todos os aspectos relevantes para a escolha da ação. Episódica ou Sequencial: Em um ambiente episódico, as experiências do agente são divididas em episódios atômicos.
Cada episódio consiste na percepção do agente e depois na execução de uma ação, esta ação em nada afeta o próximo episódio. A tarefa da Inteligência Artificial é criar o programa do agente que programa a função do agente que mapeia as percepções em ações. O programa do agente apenas toma como entrada a percepção atual, pois nada mais está disponível do ambiente, se as ações do agente dependerem de toda a sequência de percepções, o agente terá que memorizar as percepções (RUSSEL & NORVIG, 2004).
Um conjunto de módulos e suas interações descrevem como os dados recebidos do ambiente e o estado interno do agente determinam suas ações. Interface com o ambiente: o agente deve ser capaz de detectar mudanças e atuar no ambiente; Isso é.
FRAMEWORK
JADE
Este exemplo mostra que FIPA-ACL é semelhante ao KQML: a estrutura da mensagem é a mesma, os campos de atributos da mensagem também são muito semelhantes. A diferença mais importante entre as duas linguagens está no conjunto de performativos que oferecem (WOOLDRIDGE, 2002). Toda a comunicação utilizada no JADE para comunicação entre agentes ocorre através de trocas de mensagens.
Também trata de todos os aspectos que não fazem parte apenas do agente e são independentes de aplicações como transporte de mensagens, codificação e interpretação de mensagens e ciclo de vida dos agentes (SILVA, 2003). Os agentes são implementados como threads Java e são incorporados em repositórios de agentes chamados contêineres que possuem todo o suporte para execução do agente; Ambiente de agente compatível com especificações FIPA: todo o framework foi desenvolvido seguindo padrões e especificações FIPA;
Automação de cadastro: o desenvolvedor abstrai alguns detalhes, como o cadastro ou cancelamento de agentes que acontece automaticamente com o SMA; Serviço de nomenclatura padronizado de acordo com a FIPA: quando criados, os agentes recebem sua identificação única de acordo com as especificações da FIPA; Isso é. Para criar um agente JADE, você precisa estender a classe Agent, implementar o comportamento da aplicação, instanciá-la e associá-la ao agente.
Para baixar o JADE, acesse o site http://jade.tilab.com/ e crie uma conta gratuita: Com a conta criada, basta entrar na área de download e dentre as opções disponibilizadas, selecionar a primeira conforme mostra a Figura 9, isso incorpora todos os itens abaixo, como JADE, sua documentação, códigos-fonte e exemplos. Após compilar a classe, execute o comando ilustrado na Figura 11, a mensagem “Hello World” será exibida na tela, com este exemplo podemos observar que a plataforma JADE está funcionando.
SISTEMAS SIMILARES
O sistema foi desenvolvido observando uma deficiência existente nas empresas calçadistas em geral. Embora possuam maquinário moderno para fabricação de calçados, encontram dificuldades quando começam a produzir um novo modelo de calçado. Uma das dificuldades encontradas é a configuração das correias de produção para a produção de calçados, ou seja, o alinhamento das correias (VIÉGAS, 1998).
Sua função é colocar as células de produção em uma determinada ordem para que os calçados possam ser fabricados. A proposta é o desenvolvimento de um SMA que possa auxiliar na configuração da esteira de produção. No processo de configuração das esteiras de produção, cada modelo recebido exige uma especificação de equipamentos e pessoal (células).
Muitas empresas calçadistas possuem mais de uma linha de produção controlada por gerentes de transportadores, as linhas organizadas em uma ordem física e lógica adequada à situação. Este é o sistema utilizado atualmente na empresa, foi desenvolvido para tentar facilitar o trabalho realizado por quem trabalha no setor de PCP e é responsável por selecionar e programar os iniciadores de tingimento das máquinas, para que a maioria dos as máquinas podem funcionar sem parar por falta de serviço e também aproveitar ao máximo a capacidade de tingimento do equipamento, pois na hora de tingir, independente de qualquer cor por exemplo, não importa se a máquina utilizou 50% ou 99% da sua capacidade, o tempo que será gasto no trabalho é igual ao tempo que será utilizado para fixar a cor. A tela criada para o sistema pode ser vista na figura 13, ao carregar as informações mostra todas as máquinas do lado esquerdo, dando o tempo de carregamento que cada uma possui, ao clicar em uma das máquinas de tingimento no canto superior direito aparece lista com todas as OTNs já alocadas na máquina e o agrupamento é demonstrado com o campo grouper que quando duas ou mais OTNs possuem o mesmo número elas são entendidas como agrupadas.
Ao pressionar o botão para iniciar a alocação automática, o sistema cria uma lista de todas as OTNs sem máquinas e gera um número de agrupamento para OTNs do mesmo grupo que contenham a mesma cor de corante. Este capítulo contextualiza o problema e o sistema de trabalho de uma empresa têxtil que opera seu próprio setor de tinturaria.
CONTEXTUALIZAÇÃO DO PROBLEMA
Mensagem performativa CFP: nesta opção o agente de controle pergunta ao agente máquina se ele está apto a fazer uma alocação. Caso sua capacidade seja maior ou igual ao peso da OTN, o agente constrói uma mensagem com todas as suas características de conteúdo e com performativo AGREE retornado ao agente de controle; ou. Calcula o peso correspondente à diferença entre a capacidade da máquina e o peso da OTN e gera uma mensagem ao agente de controle com o conteúdo “NECEDIDO”, mais a diferença calculada, e aguarda o retorno do agente de controle.
Quando isso acontece, o agente de controle procura outra máquina para alocar a OTN; ou. Com este método, o agente de controle busca no DF todas as máquinas que foram instanciadas e cadastradas, em seguida gera uma lista com o nome de todas as máquinas do sistema e retorna ao método "void setup()" onde está armazenado. Com essas informações, o agente de controle gera uma mensagem com o performativo CFP, e seu conteúdo é o peso da OTN.
O Agente de Controle analisa a resposta de todos e os agentes do Motor recebem a mensagem e, dependendo das condições explicadas acima, retornam mensagens de desempenho AGREE ou REJECT. O agente de controle ignora todas as máquinas que recusaram (a mensagem de retorno foi performativa REJECT) e gera uma lista de possíveis máquinas para compartilhar com aquelas que aceitaram, recuperando e armazenando as informações da máquina contidas no conteúdo da mensagem. Com a lista de máquinas ordenadas por prioridade gerada, o agente de controle começará a tentar alocá-las à máquina de maior prioridade (menor número).
Caso nenhuma atenda aos requisitos, o agente de controle cria uma mensagem com o conteúdo “FINISHED” para a máquina, informando que a mesma não possui mais uma OTN com as mesmas características; ou. A forma final de retorno pode ser uma mensagem cujo conteúdo inicia com “SELECTED”: quando isso acontece, o Agente Máquina conseguiu atender todas as condições para a atribuição e então retorna a OTN ou a lista de OTNs ao Agente Controle. usado para alocação. O agente de controle lê o conteúdo da mensagem e marca todas as OTNs como atribuídas, concluindo uma atribuição bem-sucedida.
Quando não há mais OTNs livres para alocar, o agente de controle cria uma mensagem contendo todas as máquinas e informando ao receptor que o processo de alocação foi encerrado, encerrando assim todos os agentes.