Agenda do Curso

  • Introdução (Aula 1)

    fábrica da Rima ImpressorasRdP da circulação de AGVs na fábrica da RIMA

    Desde a sua criação em 1960 as redes de Petri só fizeram ampliar o seu escopo de aplicação. Parelelamete, o formalismo também foi ampliado e aperfeiçoado, ao tempo em que várias extensões surgiram para atender a domínios de aplicação localizados (embora muito importantes). Assim, a chegada do século XXI marca um período de grade profusão e até alguma confusão sobre o formalismo base, o que é também um requisito para a difusão das Redes de Petri, especialmente no meio industrial.

    Um grupo de especialistas passou a discutir um formalismo base que viria a se tornar uma norma, premido pela grande difusão das RdP inclusive para a área de software, análise de requisitos, etc., além do seu uso normal como esquema para a modelagem de sistemas discretos e para simulação destes sistemas.

    Esta semana veremos uma breve introdução, ainda intuitiva, sobre as redes de Petri, e especialmente sobre os conceitos da modelagem de sistemas discretos.Também será aboradado brevemente os paradigmas de desenvolvimento e modelagem, sempre priorizando a modelagem de sistemas dinâmicos discretos seguindo a linha da modelagem estado/transição.

  • Modelando processos simples

    Nesta semana tratamos de forma mais concreta do processo de modelagem de sistemas discretos, primeiro de uma forma mais intuitiva. Para isso tomaremos o problema dos trens que ligam Lucerne, Engelsbert e Stans (a foto acima é da estação de Stans), que, embora seja de fato um problema real, é pequeno o suficiente para o nosso propósito nesta parte do curso.

    Vimos portanto os princípios de modelagem e como usá-los concretamente de modo a modelar um sistema de controle para o problema dos trens que ligam as estações de Ski da Suiça de modo a garantir a segurança do processo e a impossibilidade de acidentes graves, como o choque das composições no trecho unificado.

    Associado à resolução deste problema temos a nossa primeira lista de exercícios.

                                                                                                                    .

    A lista de exercícios 1 está de fato inserida nas transparências de aula. Revisando o material vi que o exercício 2 não existe e acabo de inseri-lo. Vocês poderão achar a lista completa no novo arquivo para download que se encontra logo abaixo.  Se tiverem alguma dúvida sobre os problemas consulte o forum no link logo abaixo.

  • Modelando sistemas produtivos

    Nesta semana faremos uma breve revisãodo que já vimos até aqui, especialmente na definição de propriedades e atributos das Redes Elementares, enfatizando o tipo de modelagem que se pode fazer com estas redes. Veremos que se trata de uma modelagem abstrata, com ações simples, e explorando muito pouco dos aspectos distribuídos dos sistemas.

    Veremos em seguido os desafios para modelar sistemas produtivos, especialmente os sistemas de manufatura, e ainda de forma mais destacada os sistemas de manufatura flexível. Neste caso a concorrência entre linhas por uma mesma máquina, que por sua vez pode desempenhar várias funções, acrescenta uma considerável complexidade ao processo de modelagem. Por outro lado aparece aí a necessidade de modelar não somente o controle ou o fluxo de controle mas também o fluxo de ítens no processo, ainda na hipótese da indistinguibilidade das marcas.

    Assim, introduziremos as redes lugar/transição, ou Place/Transition, como a rede mais abstrata entre as redes clássicas, de onde todas as demais podem ser derivadas impondo restrições de segurança e capacidade dos lugares. A introdução estas redes será feita por um exemplo reaístico, para depois introduzir o formalismo.

    Na próxima aula todos devem trazer o Milestone 2 coms os ítens dewcritos ao lado

    A lista de exercícios 2 será divulgada como um artigo PDF.

    Os itens para submissão do artifo final são:

    Título
    Abstract (em inglês)
    Relação de palavras-chave
    Introdução explicando e motivando o tema

  • Redes Place/Transition

    Nesta aula introduzimos as redes Place/Transition, mostrando que para modelar sistemas onde seja necessário ter em conta o workflow, isto é, o fluxo de itens e de controle, é necessário mais do que pode prover as redes Elementares. Estendemos portanto o coceito inicial para uma rede mais abrangente, que pode ter as redes elementares como caso especial, onde se reduz o peso dos arcos a no máximo 1, assim como a capacidade dos lugares.

    Os problemas para simulação da rede foram inteiramente resolvidos com um teorema associado à construção das redes completas. Também se analisa o comportamento das redes P/T com a condição de disparo estrita e não-estrita, onde se libera a capacidade dos lugares para crescer de forma irrestrita

    Finalmente se discute as possibilidades e os recursos de modelagem que temos até este momento e que serão usados na resolução dos exercícios da semana.

  • Propriedades das Redes Clássicas

    Esta semana discutimos sobre as propriedades das redes clássicas sempre voltando a discussão para a possibilidade de obtenção de novos recursos para a modelagem e o design de sitemas automatizados discretos.

    As propriedades das redes clássicas se dividem em dois blocos: as propriedades comportamentais, que dependem da marcação inicial, e as propriedades estruturais, que dependem mais da estrutura relacional da rede. Em ambos os casos, sistemas reais podem ser mapeados com repeito a propriedades dita desejáveis e que se enquadrem em um destes blocos. Assim, uma das estratégias de análise dos modelos é justamente a análise destas propriedades. Em sala recuperamos problemas da lista 1 e da lista de exercícios 2 para ilustrar estes pontos.

    Certamente, um dos problemas dignos de nota é a dependencia que ainda temos (até este nivel da exposição sobre redes de Petri) dos métodos voltados a atingibilidade ou ao grafo de cobertura. Vamos avançar um pouco mais na discussão sobre propriedades na aula que vem e então voltaremos a este ponto no futuro, buscando novas redes e novos métodos de análise.

    Para a aula que vem não esqueçam de avançar na pesquisa bibliográfica sobre o tema do artigo que será o trabalho final do curso.

    Vejam ainda o link (abaixo) para o site onde é possível fazer o download do CPN Tools, ambiente para programação de redes coloridas. Este será o assunto de aulas futuras mas para os que pretendem trabalhar com estas redes no artigo final será bom adiantar o processo. Notem que o CPN Tools roda em Windows ou em Linux somente. É difícil usar o Mac como plataforma por causa da biblioteca OpneGL que não pode ser instalada usando um emulador de Windows.

    Clique aqui para fazer o download do CPN Tools

  • Redes de Alto Nível - Redes PrT

    Nesta aula vamos introduzir a discussão sobre as redes não-clássicas, especificamente as redes de alto nível. Começaremos pela discussão do problema de simetria e do dobramento das redes, para logo depois introduzir as redes Predicado-Transição. Estas têm uma grande importância (histórica) no estudo das redes de Petri, por guardar consigo a idéia bastante atraente de utilizar os invariantes (facts) no próprio processo de modelagem ao invés de ser uma propriedade a ser analisada depois de ter um modelo pronto.

    Apesar das dificuldades formais esta idéia é ainda atraente e pode ser levada adiante em outras classes de rede. Outra coisa imprtante é a própria exploração da simetria criand um novo sistema híbrido, composto por uma rede mais reduzida e um conjunto de inscrições e sorts, agora inseparáveis da rede em si.

    Portanto uma questão importante pode ser levantada, qual seja: quando devemos optar pela modelagem usando redes clássicas e quando devemos optar por uma rede de alto nível. Esta questão aparece como um exercício da lista no. 3 que é disponibilizada abaixo. Os exercícios devem ser feitos até a próxima aula.

    Juntamente com os exercícios, todos devem (ou pelo menos aqueles que ainda não chegarm a este ponto) produzir mais uma seção do artigo final, onde se descreve as técnicas e formalismos que serão utilizados no artigo. Algo como uma seção de "background". Este novo artigo também deve ser feito para a próxima aula.

    Verifique que na aula de Redes Place/Transition, logo abaixo do link para "retorno da 2a. lista de exercícios" tem un ícon com o label PMR 5237. Este é um link para um forum de discussão que vocês podem usar para tirar dúvidas, colocar opiniões que serão compartilhadas por todos.

  • Redes HLPN

    Nesta aula passaremos à discussão das redes de alto nível, incluindo agora a definição do padrão ISO/IEC 15.909-1 e o modelo semântico das redes de alto nível. Como sempre, o nosso objetivo é adquirir conhecimento e habilidade no manuseio das redes de Petri para aplicar na modelagem e design de sistemas em geral. Portanto uma questão fundamental é se o processo de projeto destes sistemas deve ser iniciado com uma rede P/T e depois gerar uma rede HLPN ou se, ao contrário existem casos onde a modelagem direto na redes HLPN é mais promissora.

    No final desta aula apresentaremos um exercício simples onde esta questão pode aparecer de forma bem menos trivial do que pode parecer em princípio. Trata-se da aplicação da modelagem em redes para problemas de planejamento de atividades, no caso a montagem de blocos utilizando um robô manipulador. Para evidenciar a inversão no processo de projeto este caso deve ser tomado como um exercício (a lista 4) e deve ser resolvido como listado na última transparencia de aula, juntamente com as perguntas adicionais.

    Fica também como exercício para a aula que vem o Milestone no.2 (repetimos o primeiro) onde o artigo final deve ser ampliado agora para acrescentar ao ítens já inseridos (Titulo, abstract, introdução), uma seção de background, onde se discute as teorias envolvidas no artigo (além das redes de Petri), se discute que tipo de rede será usado, e uma seção com a proposta de como as redes de Petri seriam inseridas no trabalho.

    Na leitura da semana temos o artigo do Einar Smith sobre redes HLPN, um texto que pertence à Escola internacional de redes de Petri, e outro artigo que resume a última versão da orama ISO/IEC 15.909-1 antes de ser publicada em 2004.

  • Redes Coloridas

    Um caso especial das redes de alto nível são as redes coloridas. Estas redes surgiram nos anos 80 justamente com a proposta de estender o escopo de aplicação das redes de Petri para o design de sistemas, e portanto associar a modelagem gráfica e algébrica à linguagem de especificação funcional Standard ML (Milner). Com isso se poderia ampliar o nivel de abstração das redes, explorar simetrias - sempre uma perspectiva tentadora no design de sitemas e no design em geral.

    No final dos anos 80 e inicio dos anos 90 surgiu o ambiente Design CPN proposto e mantido pelo grupo da Ahrus, Dinamarca, associado ao proponente das redes CPN, Kurt Jensen. Este ambiente evoluiu para o hoje ambiente integrado CPN Tools. (A foto acima mostra a modelagem no CPN Tools do problema de alocação de recursos em fábrica.)

    Mas o importante é entender que as redes coloridas são um caso especial das redes HLPN e portanto devidamente incorporadas no novo padrão das redes. O grande desafio é abdicar do apelo bem mais intuitivo das redes clássicas e aprender a modelar sistemas diretamente nas redes CPN, o que é o foco da nossa discussão esta semana.

    Como leitura da semana um artigo com uma introdução prática às redes CPN do Kurt Jensen.

  • Redes Coloridas e extensões

    Na semana passada introduzimos o conceito de rede colorida como um caso especial das redes HLPN. A exploração direta da simetria produziu redes menores, mais compactas, mas com a mesma expressividade das redes clássicas. Ainda mais, o poder de expressão das redes de fato não se alterou, e o que conseguimos foi, explorando a simetria, combinar a representação gráfica com declarações de tipo e com uma abordagem mais abstrata, que pode ser de grande valia na modelagem e design de sistemas de grande porte.

    Entretanto dois aspectos ficaram ainda por serem avaliados: a necessidade de ter que explorar a análise de propriedades - de fato os problemas de análise das redes não desapareceram - e de lidar com o problema da atingibilidade. Outro aspecto igualmente importante é a necessidade de inserir extensões, já discutido quando da apresentaçào das redes clássicas.

    Duas extensões forma particularmente discutidas: a inclusão de gates (externos) e inclusão de componenetes hierárquicos. A discussão feita anteriormente foi bastante superficial, portanto, vamos agora voltar a esta discussão, primeiramente através dos conceitos, mas de forma abrangente, isto é, incluindo tanto o uso destes elementos no design com redes clássicas e/ou com redes de alto nível.

    Para a aula que vem teremos uma lista de exercícios e tabém um novo milestone para o trabalho final, que agora deve incluir: Título, autoria, abstract, introdução, capítulo de background e agora tembém uma primeira versão da proposta de uso das redes de Petri no escopo do trabalo. Lembrando que na semana que vem, não teremos aula devido ao feriado de 1o. de mail.

    ............................................................................................................................

    Seguiremos o cronograma discutido em sala, e termos mais 3 aulas até encerrar o curso. Teremos mais três aulas até o final, sendo a próxima sobre redes orientadas a objeto. Em seguida uma discussão geral sobre propostas, métodos consolidados e em fase de desenvolvimento para análise de redes de Petri e redes temporizadas. A última aula fará um apanhado geral sobre a pesquisa na área e sobre o uso prático atual e perspectias para o futuro das Redes de Petri e da modelagem de sistemas discretos em geral.

    Dirimida a dúvida sobre a quarta lista poderemos manter o plnao original de ter uma quinta lista, o que é importante para consolidar as idéias sobre redes coloridas e sobre redes coloridas hierárquicas. Vajem o material de apoio, que são transparencias bem didáticas do Will van der Aalst e nelas alguns exercícios interessantes que foram inseridos na lista cinco abaixo.

  • Redes Estendidas e Orientadas a Objetos

    Completando o nosso estudo sobre extensões das redes de Petri introduziremos o seu aspecto mais abstrato e sutil, que são as redes Orientadas a Objetos. Até aqui o eleco das extensões foi composto pela abstração, vista na aula passada, e uma breve menção aos gates, como elementos capazes de propagar informação mas não fluxo concreto de marcas (ou de ítems, ou de controle, ou qualquer que seja a interpretação dada ao esquema de rede).

    Hoje veremos com mais detalhe os gates e uma nova face do problema da estruturação de redes e, associado a isto, o conceito de hirarquia, tanto nas redes clássicas como nas redes de alto nível e orientadas a objetos. Finalmente, introduziremos as redes orientadas a objetos, aproveitando para discernir entre hierarquia e herança (simples). Em especial introduziremos também o sistema GHENeSys (General Hierarchical Enhanced Petri Nets) como uma implementação do conceito de redes unificadas, que segue a norma ISO/IEC 15.909 já publicada e avança para as extensões, que ainda estão em discussão.

  • Voltando aos métodos de design

     ss

    Depois de avançar nas redes de Petri e especialmente nos novos modelos orientados a objeto é hora de re-pensar nos modelos de modelagem formal e de como estes também apresentam novos desafios para o Design em Engenharia. 

    O aumento da complexidade levou  a dois novos paradigmas: um que se apresenta como um desafio de modelar serviços, com um dinâmica própria e um grande grau de interação e co-criação com os seus usuários, e outro se apresenta como uma forma de integrar serviços e sistemas já existentes em sistemas maiors chamados sistemas de sistemas. 

    Neste módulo vamos considerar como as dificuldades que já temos de modelagem e design se ampliam na perspectiva de enfrentar estes novos desafios, e como novos métodos podem surgir para enfrentar estes problemas, acabando por trazer novas perspectivas para resolver os problemas antigos. Em ambos os casos temos novos desafios para o uso das Redes de Petri.

  • Introduzindo o tempo

     

    Nesta fase do curso estaremos discutindo somente tópicos de pesquisa em redes de Petri e não definições de redes e novos tipos de rede. Na verdade pensando na classificação atural e na norma ISO/IEC 15.909 estamos ainda discutingo extensões. Uma destas exteensões, cuja definição está ainda em aberto - do ponto de vista da norma - é a estensão que introduz tempo na análise de redes.  

    Existem basicamente duas formas de fazer isso, uma seria usando intervalos deterministicos de tempo (slices) e que foi proposta por Ramchandani em 1974. Outra forma, também da mesma época é creditada a Merlin e propõe um intervalo fechado da reta real como intervalo de tempo em que as transições podem ocorrer.

    Seja qual for a opção isso abre um novo leque de possibilidades na modelagem de sistemas, agora incluindo os sistemas embarcados e os sistemas de tempo real, com um novo impacto em aplicações de workflow, de redes e protocolos de comunicação, além de possibilitar um considerável aumento de precisão em aplicações de transporte e sistemas inteligentes.

    Entretanto, há um custo no aumento da complexidade do formalismo e consequentemente dos modelos gerados com este. Discutiremos brevemente isso nesa aula e na seguinte entrareos mas especificamente nos processos de model checking. 

     

  • Encerramento do curso

    Encerramos o curso e creio que atingimos algumas metas e objetivos, apesar de termos um ciclo meio conturbado pelos meus problemas de saúde. Peço desculpas por isso, mas espero ter passado alguns conceitos sobre modelagem de sistemas distribuidos e discretos, que responde por uma gama considerável dos sistemas usados em automação. 

    Agradeço a todos pela boa discussão que tivemos durante o curso e espero ter contribuído para a formação de vocês.

    O milestone final está agora disponível e fechará neste sábado ao meio-dia.

    Um abraço,

    Reinaldo