• Nenhum resultado encontrado

2.2 Escalonamento Ótimo de Tarefas em Sistemas Distribuídos

2.2.1 Escalonamento de Tarefas para Processos em Batelada

Como se trata de um problema multidisciplinar, planejamento e escalonamento de tarefas não é apenas abordado na Engenharia Elétrica ou na Ciência da Compu- tação. Na Engenharia Química, o problema é amplamente estudado e é de grande importância. Segundo Mendezet al [32], a Programação da Produção é crítica para processos em batelada, já que ela é crucial para aumentar o desempenho da pro- dução. Ainda de acordo com os autores, nos últimos 20 anos houve um progresso significativo na área de escalonamento de curto prazo para processos em batelada, incluindo a solução de problemas de tamanho industrial.

Para o escalonamento de curto prazo para processos em batelada, modelos são criados frequentemente através de Programação Linear Inteira Mista (MILP). Re- visões do assunto para futura leitura podem ser encontradas em [13, 14, 32]. Uma breve visão geral está presente em [19].

Há uma forte correlação entre o problema de escalonamento para a rede FF H1 e para processos em batelada. Dispositivos de campo podem ser tratados como unidades que executam tarefas especificadas e produzem dados para outras tarefas. Com isso, a abordagem através de MILP é muito adequada para isto e os modelos encontrados na literatura da Engenharia Química podem ser adaptados para o caso FF H1.

Dentre as associações entre o caso FF H1 e processos em batelada, destacam-se: 1. Dispositivos de campo e a rede são equivalentes aos equipamentos da indústria química. São os executores de tarefas, sendo que algumas várias tarefas es- tão associadas a equipamentos/dispositivos específicos. Da mesma forma que uma mistura de produtos deve ser executada no misturador que a recebe, a leitura de uma variável de temperatura só pode ser feita pelo transmissor de temperatura associado.

2. Tarefas nos dois casos têm um tempo para serem executadas (esse tempo pode ser variável na Engenharia Química) e dependem de certas condições

para poderem ser ativadas. Estas condições em geral estão relacionadas às execuções de tarefas precedentes, direta ou indiretamente.

3. Relações de exclusão também existem por dispositivo ou equipamento. Um dispositivo/equipamento não pode executar duas tarefas distintas ao mesmo tempo.

4. Um macrociclo para o caso FF H1 equivale a uma batelada. É o período em que todas as tarefas serão executadas para um dado fim. Por mais que o macrociclo se repita, isso não faz diferença enquanto se faz o escalonamento das tarefas dentro de um macrociclo.

Existem duas principais abordagens no que tange à representação temporal para a programação da produção de processos em batelada: tempo discreto e tempo con- tínuo. Na representação por tempo discreto, o tempo é dividido em intervalos de duração fixa e as execuções das tarefas são alocadas nestes intervalos. Na repre- sentação por tempo contínuo, os tempos de início e fim de execução de cada tarefa são variáveis contínuas. Como será visto adiante, os objetivos tratados neste tra- balho envolvem os instantes de execução diretamente. Para processos em batelada, as abordagens de tempo discreto ou contínuo competem em tempo para resolver e acurácia dos resultados. No caso do problema para FF H1, a abordagem por tempo contínuo é mais apropriada, pois permite tratar os objetivos de maneira direta, sem adaptações.

Uma modelagem eficiente usando a abordagem de tempo contínuo foi criada por Ierapetritou e Floudas em [22]. Neste artigo, os autores atingem bons resultados em escala e tempo para resolver. O modelo envolve o conceito de pontos de evento específicos para cada unidade. Trata-se de pontos na linha do tempo para um número pré-fixado de eventos que podem acontecer, onde eventos incluem o início e o fim de execuções. É importante notar que os instantes dos eventos não são predeterminados, mas variáveis, com a restrição de que um evento sempre ocorre antes que um evento subsequente, desde que referentes ao mesmo equipamento – não existe associação de eventos para equipamentos distintos. Variáveis binárias indicam o começo e o término de cada execução de uma tarefa num dado ponto de evento. Segundo Ierapetritou e Floudas, a contribuição que permitiu os bons resultados foi a desassociação dos eventos de tarefas dos eventos de unidades, introduzindo restrições de sequenciamento temporal e garantindo linearidade.

Dentre esses trabalhos mais recentes, destaca-se [38], onde uma abordagem de modelagem unificada é proposta para escalonamento de curto prazo para processos em batelada. Para tal, mesclam-se problemas envolvendo ou não restrições de recur- sos, criando uma estrutura genérica comum. Alguns avanços com relação ao trabalho

seminal de Ierapetritou e Floudas encontram-se neste artigo, melhorando o desem- penho da otimização. Além disso, não existem restrições de recursos (no sentido de matéria-prima) para o caso FF H1, senão por meio das relações de precedência.

Por fim, nota-se que existe uma grande correlação entre os temas. Na verdade, pode-se encarar o caso FF H1 como um caso particular de processo em batelada, onde algumas simplificações existem:

• Os tempos de todas as tarefas são fixos.

• O número de execuções de cada tarefa é fixo e conhecido. Em processos em batelada, podem haver múltiplas campanhas que cheguem a um resultado ótimo, e seu número é desconhecido de antemão.

• Com essas duas características, o número de pontos de evento no caso FF H1 pode ser predeterminado com exatidão, o que não acontece em processos em batelada, onde estimativas têm que ser feitas.

• Não há diferenciação entre materiais nem quantidades. Em processos, há requisitos de quantidade de certos materiais, chamados de estados. No caso FF H1, a relação é meramente de existência ou não dos dados da tarefa precedente. • Da mesma forma, as capacidades dos equipamentos pode ser desconsiderada. • Custos e receitas podem ser desconsiderados.

Com essas simplificações, restam a atribuição de tarefas a pontos de evento e a determinação dos instantes de execução de cada tarefa. A atribuição a pontos de evento de certa forma se resume a um problema de ordenação se a alocação de tarefas for conhecida, como se verá no capítulo 3. Por outro lado, num caso em que múltiplos ciclos diferentes coexistem num mesmo macrociclo, o caso FF H1 ganha uma característica de periodicidade em que tarefas de ciclos distintos são realizadas num mesmo dispositivo. Essa característica não foi encontrada nos trabalhos aqui estudados.

2.2.2 Planejamento e Escalonamento Ótimos de Tarefas em