• Nenhum resultado encontrado

DIEGO MAURICIO TUSSI. Multi-organization Scheduling: Estudo do problema de escalonamento multiorganização utilizando programação inteira mista

N/A
N/A
Protected

Academic year: 2021

Share "DIEGO MAURICIO TUSSI. Multi-organization Scheduling: Estudo do problema de escalonamento multiorganização utilizando programação inteira mista"

Copied!
17
0
0

Texto

(1)

ESCOLA DE ARTES, CIˆ ENCIAS E HUMANIDADES

PROGRAMA DE P ´ OS-GRADUAC ¸ ˜ AO EM SISTEMAS DE INFORMAC ¸ ˜ AO

DIEGO MAURICIO TUSSI

Multi-organization Scheduling : Estudo do problema de escalonamento multiorganiza¸ c˜ ao utilizando programa¸ c˜ ao inteira mista

S˜ ao Paulo

2019

(2)

1 Introdu¸ c˜ ao

1.1 Tema

Problemas de otimiza¸c˜ ao combinat´ oria englobam uma grande variedade de proble- mas que buscam solu¸c˜ oes que realizem o melhor aproveitamento dos recursos dispon´ıveis.

Nesses tipos de problemas, n˜ ao basta encontrar uma solu¸c˜ ao poss´ıvel, mas sim encon- trar uma solu¸c˜ ao ´ otima e que atenda aos objetivos alvos. Dentre esses objetivos, alguns caracter´ısticos dos problemas de otimiza¸c˜ ao combinat´ oria s˜ ao: maximiza¸c˜ ao de lucros, diminui¸c˜ ao de gastos, otimiza¸c˜ ao do processo produtivo, melhoramento no escalonamento de tarefas, aperfei¸coamento na atribui¸c˜ ao de recursos, obter os melhores trajetos para transporte, etc.

De forma caracter´ıstica, os problemas de otimiza¸c˜ ao combinat´ oria, podem ser de minimiza¸c˜ ao ou de maximiza¸c˜ ao e possuem uma fun¸c˜ ao objetivo aplicada a um dom´ınio, que em geral ´ e profuso. Por conter um dom´ınio muito amplo faz-se necess´ ario a aplica¸c˜ ao de t´ ecnicas mais elaboradas para encontrar solu¸c˜ oes otimizadas.

Em rela¸c˜ ao aos problemas de otimiza¸c˜ ao combinat´ oria, o alvo desta pesquisa, aborda problemas de escalonamento com gest˜ ao de recursos, mais especificamente o problema de escalonamento multiorganiza¸c˜ ao.

1.2 Motiva¸ c˜ ao

Com os avan¸cos nas plataformas de computa¸c˜ ao de alto desempenho e na capacidade de processamento dos computadores, agora contendo muitos n´ ucleos em sua arquitetura, houve tamb´ em acentuado aumento na cria¸c˜ ao e disponibiliza¸c˜ ao de sistemas computacionais distribu´ıdos em larga escala.

Sistemas computacionais distribu´ıdos geralmente s˜ ao utilizados por organiza¸c˜ oes

que controlam agrupamentos de computadores (clusters). Quando um usu´ ario de uma

organiza¸c˜ ao envia sua tarefa para processamento essa tarefa ´ e submetida para um sistema

de escalonamento que pode ent˜ ao escolher qualquer m´ aquina dispon´ıvel nos agrupamentos

para a execu¸c˜ ao. Contudo, cada organiza¸c˜ ao que tem os recursos compartilhados, possu´ı

como objetivo extrair o m´ aximo proveito dos seus pr´ oprios recursos computacionais

(COHEN et al., 2010). Desta forma, suas pr´ oprias tarefas devem ser priorizadas em seus

(3)

recursos computacionais, entretanto mantendo uma coopera¸c˜ ao efetiva com as demais organiza¸c˜ oes que compartilham os recursos computacionais na plataforma.

Embora cada usu´ ario envie tarefas localmente em sua pr´ opria organiza¸c˜ ao e tenha seus pr´ oprios objetivos de performance, ´ e necess´ ario otimizar a aloca¸c˜ ao das tarefas para toda a plataforma, a fim de alcan¸car um bom desempenho. Desta forma, obter um escalonamento eficiente para as tarefas utilizando os recursos computacionais dispon´ıveis ´ e um problema essencial.

Para utilizar de forma eficiente os recursos computacionais obtendo os melhores desempenhos no escalonamento de tarefas faz-se necess´ ario o uso de mecanismos otimizados de escalonamento.

O problema de escalonamento multiorganiza¸c˜ ao, aborda os aspectos supracitados e ser´ a apresentado a seguir.

1.3 Problema e Lacuna

O problema do escalonamento multiorganiza¸c˜ ao (do inglˆ es Multi-Organization Sche- duling Problem - MOSP) foi proposto por Pascual (PASCUAL et al., 2009) e aborda como escalonar de forma eficiente tarefas paralelas em plataformas de grades computacionais. O aperfei¸coamento do problema proposto por Pascual ´ e que, no contexto de MOSP, cada organiza¸c˜ ao possui um objetivo de desempenho para suas pr´ oprias tarefas (makespan ou o tempo m´ aximo de t´ ermino das tarefas) e o escalonador ´ e respons´ avel por maximizar a utiliza¸c˜ ao dos recursos computacionais de toda a plataforma, ou seja, ´ e respons´ avel por minimizar o makespan global.

Em rela¸c˜ ao ao makespan (C

max

) ele pode ser definido como o max (C

1

, ..C

n

), que

´ e equivalente ao tempo de t´ ermino da ´ ultima tarefa a deixar o sistema. Um makespam m´ınimo geralmente implica em uma boa utiliza¸c˜ ao dos recursos (PINEDO M., 2016).

De acordo com Pascual (PASCUAL et al., 2009) as nota¸c˜ oes e o modelo de grade computacional para o MOSP s˜ ao os seguintes:

Por O = {O

1

, ..., O

n

}, denotamos o conjunto de organiza¸c˜ oes independentes que

formam a grade computacional. Cada organiza¸c˜ ao O

k

possu´ı um cluster M

k

. Cada cluster

M

k

tem m processadores identicos. Por M , denotamos o conjunto de todos os clusters.

(4)

O conjunto de todas as tarefas produzidas por O

k

´ e denotada por I

k

, com elementos {J

k,i

}. Por J

k

n´ os denotamos o conjunto de tarefas executadas na organiza¸c˜ ao O

k

no cluster M

k

. Se J

k,i

∈ J

k

, a tarefa ´ e executada localmente, caso contr´ ario ela ´ e migrada.

A tarefa J

k,i

deve ser executada em paralelo nos q

k,i

processadores de exatamente um cluster durante p

k,i

unidades de tempo. N˜ ao ´ e poss´ıvel dividir a tarefa entre dois, ou mais, clusters. N´ os denotamos por p

max

= maxp

k,i

o tamanho m´ aximo da tarefa. J

k,i

´ e baixa se ela precisa n˜ ao mais que a metade dos processadores do clusters q

k,i

m2

, caso contr´ ario ela ´ e considerada alta.

Por C

k,i

n´ os denotamos o tempo de conclus˜ ao da tarefa J

k,i

i. Para a organiza¸c˜ ao O

k

n´ os podemos computar o tempo m´ aximo de t´ ermino (makespan) como C

max

(O

k

) = max

k,i

{C

k,i

: J

k,i

∈ I

k

}. O makespan global C

max

´ e o makespan m´ aximo das organiza¸c˜ oes, C

max

= max

k

C

max

(O

k

).

Para o cluster M

k

, um escalonamento ´ e o mapeamento das tarefas J

k

para pro- cessadores e tempo de in´ıcio de tal forma que, a cada vez, nenhum processador est´ a atribu´ıdo a mais de uma tarefa. N´ os podemos definir o makespan C

max

(M

k

) do clus- ter M

k

como o tempo de t´ ermino m´ aximo das tarefas J

k

atribu´ıdos para o cluster, C

max

(M

k

) = max

i

{C

j,i

: J

j,i

∈ J

k

}. Em qualquer tempo t, a utilizan¸c˜ ao U

k

(t) de M

k

´ e a raz˜ ao do n´ umero de processadores atribu´ıdos para o total de n´ umero de processadores m.

Um escalonador ´ e um aplicativo que produz escalonamentos, dado os conjuntos de tarefas produzidos por cada organiza¸c˜ ao.

Para o problema MOSP, foi considerado escalonamento clarividente sem preemp¸c˜ ao no compartilhamento de tempo dos processadores. Essas suposi¸c˜ oes s˜ ao bastante real´ısticas na maioria dos sistemas de escalonamento existentes para sistemas que usam processamento em lote (batches) e que requerem que o usu´ ario defina o tempo de execu¸c˜ ao das tarefas publicadas (SHMOYS et al., 1995).

Cada organiza¸c˜ ao O

k

deseja minimizar a data C

max

(O

k

) em que todas as tarefas produzidas localmente I

k

s˜ ao finalizadas. A organiza¸c˜ ao O

k

n˜ ao se importa com o desem- penho das outras organiza¸c˜ oes, nem com o atual makespan C

max

(M

k

) no cluster local M

k

, se a ´ ultima tarefa a ser executada n˜ ao pertencer a pr´ opria organiza¸cao O

k

. Todavia, C

max

(O

k

) leva em considera¸c˜ ao as tarefas de propriedade de O

k

e executadas em clusters n˜ ao locais, se existirem.

O MOSP ´ e a minimiza¸c˜ ao do makespan de todas as tarefas com a restri¸c˜ ao adicional

que n˜ ao ocorre o aumento do makespan quando comparado ao escalonamento preliminar

(5)

onde todos os clusters calculam apenas as tarefas produzidas localmente pela organiza¸c˜ ao.

Mais formalmente, isso denota que C

maxLoc

(O

k

) ´ e o makespan de O

k

quando J

k

, o conjunto de tarefas executadas por M

k

´ e igual ao conjunto de tarefas produzidos localmente, ou seja J

k

= I

k

. Assim, o MOSP pode ser definido como:

minC

max

k

C

max

(O

k

) ≤ C

maxLoc

(O

k

) (1) A figura a seguir apresenta um exemplo de escalonamento em 3 organiza¸c˜ oes. O

1

produz as tarefas em cinza claro, O

2

produz as tarefas em cinza e O

3

em cinza escuro.

O cluster M

1

´ e usado para executar as tarefas de outras organiza¸c˜ oes. O makespan de M

1

corresponde ao ´ ultimo tempo de t´ ermino da tarefa pertencente a O

2

assim, ´ e igual a C

max

(O

2

). O makespan global C

max

´ e determinado por O

3

no M

3

(DUTOT et al., 2011).

Figura 1 – Exemplo de escalonamento considerando 3 organiza¸ c˜ oes

Fonte: DUTOT et al.(2011, p.3)

Se o n´ umero de organiza¸c˜ oes for restringido para n = 1 e o tamanho do cluster para m = 2 e as tarefas para sequenciais (q

k,i

= 1), n´ os obtemos um problema cl´ assico NP-dif´ıcil para escalonamento de tarefas sequenciais (GAREY; JOHNSON, 1979) em dois processadores 2|p

j

|C

max

. Desta forma, o MOSP tamb´ em ´ e NP-dif´ıcil.

Uma vez apresentado o problema MOSP e verificada a literatura e os respectivos

trabalhos que abordam a resolu¸c˜ ao deste problema, n˜ ao encontramos estudos que tratem

(6)

o problema sob o aspecto de modelagem e programa¸c˜ ao inteira mista. Desta forma, essa ´ e a lacuna que pretendemos enfatizar neste trabalho de pesquisa.

1.4 Objetivos e hip´ otese

Com o prop´ osito de tratar o problema MOSP, utilizando uma t´ ecnica n˜ ao explorada anteriormente, a presente proposta de pesquisa enseja fornecer uma nova alternativa de resolu¸c˜ ao do problema de escalonamento multiorganiza¸c˜ ao em rela¸c˜ ao as abordagens previamente aplicadas.

Neste contexto, o objetivo geral deste projeto de pesquisa ´ e modelar e implementar o problema de escalonamento multiorganizacao utilizando a t´ ecnica de programa¸c˜ ao inteira mista.

Para atingir o objetivo geral os seguintes objetivos espec´ıficos foram determinados:

• Formular o modelo matem´ atico do problema de escalonamento multiorganiza¸c˜ ao;

• Realizar a implementa¸c˜ ao deste modelo;

• Preparar as instˆ ancias do problema para testes;

• Realizar os experimentos a partir das instˆ ancias;

• Avaliar e apresentar os resultados.

1.5 Justificativa

Em caso de sucesso na formula¸c˜ ao do modelo e implementa¸c˜ ao do problema MOSP aplicando t´ ecnicas de programa¸c˜ ao inteira mista, ficar´ a dispon´ıvel como resultado um modelo matem´ atico, uma implementa¸c˜ ao deste modelo e os respectivos experimentos.

Os artefatos resultantes abrem possibilidades aos pesquisadores da ´ area de sistemas

distribu´ıdos, otimiza¸c˜ ao combinat´ oria e progragrama¸c˜ ao inteira, que poder˜ ao ampliar

ou evoluir a pesquisa dentro de outros aspectos ou varia¸c˜ oes do problema de escalona-

mento multiorganiza¸c˜ ao, objetivanto a otimiza¸c˜ ao global do tempo de t´ ermino das tarefas

escalonadas nestes contextos.

(7)

2 Proposta de projeto

O projeto de pesquisa est´ a subdividido em quatro fases. A primeira fase estabelece a concep¸c˜ ao inicial do projeto tendo como atividades a revis˜ ao bibliogr´ afica e a defini¸c˜ ao da proposta. A segunda fase trata do planejamento e execu¸c˜ ao do projeto englobando as atividades de formula¸c˜ ao do modelo, implementa¸c˜ ao, prepara¸c˜ ao das instˆ ancias do problema e realiza¸c˜ ao dos experimentos. A terceira fase contempla a avalia¸c˜ ao e controle do projeto, tendo como atividade a an´ alise de resultados. A an´ alise de resultados verificar´ a se a solu¸c˜ ao encontrou resultados ´ otimos bem como os tempos de execu¸c˜ ao para as instˆ ancias utilizadas. A quarta fase ter´ a ˆ enfase na documenta¸c˜ ao e divulga¸c˜ ao. A figura 2 mostra uma vis˜ ao do projeto por fases e o fluxo de intera¸c˜ oes entre as atividades planejadas.

Figura 2 – Fases do projeto e fluxo de atividades

2.1 Atividades planejadas e cronograma

A seguir s˜ ao detalhadas as atividades planejadas para este projeto de pesquisa. Na

tabela 1 ´ e apresentado o cronograma das atividades planejadas.

(8)

1. Revis˜ ao bibliogr´ afica: essa atividade contempla uma revis˜ ao sistem´ atica da literatura para compreender o estado da arte em rela¸c˜ ao as abordagens para o tratamento do problema de escalonamento multiorganiza¸c˜ ao.

2. Defini¸c˜ ao da proposta: essa atividade consiste na avalia¸c˜ ao e defini¸c˜ ao da proposta para o projeto de pesquisa.

3. Formula¸c˜ ao do modelo: essa atividade envolve a formula¸c˜ ao do modelo matem´ atico para o problema de escalonamento multiorganiza¸c˜ ao a ser implementado na atividade subsequente.

4. Implementa¸c˜ ao do modelo: essa atividade compreende a implementa¸c˜ ao do mo- delo matem´ atico para o problema de escalonamento multiorganiza¸c˜ ao utilizando programa¸c˜ ao inteira mista.

5. Prepara¸c˜ ao das instˆ ancias: essa atividade engloba a prepara¸c˜ ao de instˆ ancias do problema para possibilitar a realiza¸c˜ ao posterior dos experimentos do projeto.

6. Realiza¸c˜ ao dos experimentos: essa atividade envolve a realiza¸c˜ ao dos experimentos do projeto utilizando a implementa¸c˜ ao realizada e as instˆ ancias previamente preparadas.

7. An´ alise dos resultados: essa atividade contempla a compila¸c˜ ao, avalia¸c˜ ao e an´ alise dos resultados obtidos mediante aos experimentos realizados.

8. Preparo da qualifica¸c˜ ao: essa atividade envolve a prepara¸c˜ ao do documento de qualifica¸c˜ ao do projeto.

9. Exame de qualifica¸c˜ ao: essa atividade consiste na realiza¸c˜ ao da apresenta¸c˜ ao da qualifica¸c˜ ao para a banca examinadora.

10. Reda¸c˜ ao da disserta¸c˜ ao: essa atividade envolve a escrita da disserta¸c˜ ao.

11. Reda¸c˜ ao de artigo: essa atividade constitui a escrita de um artigo cient´ıfico para ser publicado em per´ıodico da respectiva ´ area alvo do trabalho.

12. Divulga¸c˜ ao: essa atividade compreende a divulga¸c˜ ao do artigo previamente escrito

em conferˆ encias e/ou peri´ odicos da ´ area. Compreende tamb´ em a finaliza¸c˜ ao da

disserta¸c˜ ao, dep´ osito da disserta¸c˜ ao e apresenta¸c˜ ao para banca examinadora.

(9)

Tabela 1 – Cronograma das atividades realizadas e previstas

Atividades 2019 2020

8 9 10 11 12 1 2 3 4 5 6 7 8 9 10 11 12

1 X X X X X X X X X X X X X X

2 X X X

3 X X X

4 X X X X

5 X X

6 X X X

7 X X

8 X X X X X X X X X X

9 X

10 X X X X X X X X X X X X X X

11 X X X

12 X X X X

2.2 Contribui¸ c˜ oes

Este trabalho de pesquisa pretende ampliar o marco de conhecimento no que disrespeito ao problema de escalonamento multiorganiza¸c˜ ao (MOSP). Espera-se ao final deste trabalho as seguintes contribui¸c˜ oes:

• Disponibilizar a formula¸c˜ ao do modelo para o problema MOSP;

• Ampliar os conhecimentos da ´ area utilizando a aplica¸c˜ ao deste modelo;

• Fornecer uma implementa¸c˜ ao do modelo utilizando programa¸c˜ ao interira mista;

• Proporcionar o avan¸co nos estudos de escalonamento com programa¸c˜ ao inteira mista;

• Elaborar e disponibilizar os experimentos realizados;

• Fornecer os m´ etodos para que a pesquisa possa ser reproduzida;

• Apresentar a avalia¸c˜ ao e o conjunto de resultados desta pesquisa.

(10)

2.3 Escopo

O escopo deste trabalho de pesquisa abrange o MOSP em sua concep¸c˜ ao original sendo explorado com as t´ ecnicas de programa¸c˜ ao inteira mista. N˜ ao faz parte do escopo deste projeto:

• Trabalhar variantes do MOSP;

• Utilizar tarefas n˜ ao sequenciais;

• Utilizar escalonamento n˜ ao clarividente;

• Considerar escalonamento preempitivo;

• Outros modelos de escalonamento n˜ ao previstos no MOSP.

(11)

3 Revis˜ ao Bibliogr´ afica

Neste cap´ıtulo ´ e apresentada a revis˜ ao da literatura relacioanada ao problema de escalonamento multiorganiza¸c˜ ao (MOSP).

Em rela¸c˜ ao aos trabalhos encontrados na literatura, podemos destacar que o estudo do MOSP e a sua proposi¸c˜ ao inicial foi realizada por Pascual et al. (PASCUAL et al., 2009), onde denota que o problema consiste na minimiza¸c˜ ao do makespan de todas as tarefas no contexto global, levando em considera¸c˜ ao, como uma restri¸c˜ ao, que n˜ ao ocorra o aumento do makespan quando comparado ao escalonamento preliminar onde todos os clusters calculam apenas as tarefas produzidas localmente.

V´ arios fatores podem motivar as organiza¸c˜ oes a cooperar e aceitar tarefas n˜ ao locais, mesmo levando em conta o fato de que a configura¸c˜ ao resultante n˜ ao ´ e necessariamente uma solu¸c˜ ao globalmente ´ otima. Uma solu¸c˜ ao n˜ ao cooperativa (sem grade computacional)

´ e onde todas as organiza¸c˜ oes calculam suas tarefas em seus clusters locais. No entanto, essa solu¸c˜ ao pode chegar a ser at´ e n vezes pior do que o ideal (Figura 3).

Figura 3 – (a) Executa todas as tarefas localmente podendo ter uma rela¸ c˜ ao de aproxima¸ c˜ ao n se comparado a solu¸ c˜ ao globalmente ´ otima (b).

Fonte: PASCUAL et al.(2009, p.3)

Solu¸c˜ oes bilateralmente vantajosas s˜ ao poss´ıveis, ao combinar certos tipos de tarefas

(conforme destacado na Figura 4).

(12)

Figura 4 – Combinando certos tipos de tarefas, a solu¸ c˜ ao cooperativa (b) entrega melhores makespans para ambas organiza¸ c˜ oes do que a solu¸ c˜ ao de escalonar todas as tarefas localmente (a). As tarefas cinza claro s˜ ao produzidas na organiza¸ c˜ ao O

1

, as cinza escuro na organiza¸ c˜ ao O

2

.

Fonte: PASCUAL et al.(2009, p.4)

Entretando, um determinado pre¸co deve ser pago para produzir solu¸c˜ oes nas quais todas as organiza¸c˜ oes tem incentivo para participar. Pode ser visualizado na figura 5, uma instˆ ancia em que o n´ıvel global ´ e ´ otimo. A solu¸c˜ ao amplia o makespan de uma das organiza¸c˜ oes. Consequentemente, todos atendem ` a restri¸c˜ ao tendo pelo menos a raz˜ ao de aproxima¸c˜ ao de

32

em rela¸c˜ ao a solu¸c˜ ao globalmente ´ otima.

Figura 5 – A solu¸ c˜ ao globalmente ´ otima (b) n˜ ao ´ e poss´ıvel, pois ela amplia o makespan da organiza¸ c˜ ao O

1

em compara¸ c˜ ao com a solu¸ c˜ ao local (a). A melhor solu¸ c˜ ao n˜ ao amplia o makespan da organiza¸ c˜ ao O

1

que ´ e

32

da solu¸ c˜ ao global ´ otima (c).

Fonte: PASCUAL et al.(2009, p.4)

Pascual et al., tamb´ em apresenta um algoritmo que endere¸ca a solu¸c˜ ao do problema de escalonamento multiorganiza¸c˜ ao (MOSP). Trata-se do algoritmo de balanceamento de carga multiorganiza¸c˜ ao (do inglˆ es Multi-Organization Load Balancing Algorithm - MOLBA). O respectivo algoritmo garante que a raz˜ ao de aproxima¸c˜ ao em rela¸c˜ ao ao makespan global, ao mesmo tempo em que n˜ ao piora as solu¸c˜ oes locais produzidas pelas organiza¸c˜ oes calculadas de forma independente. O MOLBA calcula um limite inferior do makespan global e depois move todas as tarefas iniciadas at´ e o dobro desta data para o final dos escalonamentos dos clusters menos sobrecarregados.

O problema MOSP ´ e abordado por Cohen et al. (COHEN et al., 2010)), onde ´ e

realizada uma an´ alise te´ orica do problema usando abordagens cl´ assicas de otimiza¸c˜ ao

(13)

combinat´ oria. A principal contribui¸c˜ ao dos autores ´ e a extens˜ ao e an´ alise do problema para o caso em que tarefas seq¨ uenciais s˜ ao enviados por organiza¸c˜ oes ego´ıstas que podem lidar com diferentes objetivos locais (makespan e m´ edia do tempo de t´ ermino de tarefas).

S˜ ao introduzidas novas restri¸c˜ oes no escalonamento que levam em conta a no¸c˜ ao de organiza¸c˜ oes ego´ısta (selfish organizations), ou seja, organiza¸c˜ oes que se recusam a cooperar se seus objetivos puderem ser melhorados apenas executando mais cedo uma de suas tarefas em uma de suas pr´ oprias m´ aquinas.

Os autores tamb´ em prop˜ oem uma valida¸c˜ ao de resultados atrav´ es do uso de duas m´ etricas de justi¸ca. Caso seja injusti¸ca nos resultados obtidos da organiza¸c˜ ao, pode ser considerado um bom apontador para que a organiza¸c˜ ao desista de cooperar com as demais organiza¸c˜ oes na execu¸c˜ ao das tarefas.

O problema de escalonamento multiorganiza¸c˜ ao, neste trabalho, ´ e estendido para o MOSP ( P C

i

) com outro objetivo local. Al´ em do algoritmo ILBA (do inglˆ es Iterative load balancing algorithm), que ´ e uma heur´ıstica para redistribuir a carga das organiza¸c˜ oes mais sobrecarregadas (PASCUAL et al., 2008), o estudo tamb´ em aborda outros 3 algoritmos (LPT-LPT, SPT-LPT e Less Helped First ).

LPT-LPT e SPT-LPT s˜ ao duas heur´ısticas baseadas nos algoritmos cl´ assicos LPT (do inglˆ es Longest Processing Time First (GRAHAM, 1969)) e SPT (do inglˆ es Smallest Processing Time First (BRUNO et al., 1974)), o primeiro para resolver o MOSP e o segundo para resolver o MOSP ( P C

i

). As duas heur´ısticas atuam em duas fases. Na primeira fase, todas as organiza¸c˜ oes minimizam os seus pr´ oprios objetivos locais. Na segunda fase todas as organiza¸c˜ oes cooperam para minimizar o makespan global, sem piorar qualquer objetivo local.

Less Helped First, assim como os dois anteriores, atua em 2 fases. Na primeira cada organiza¸c˜ ao ´ e classificada de acordo com o total de tarefas originalmente submetido por um usu´ ario que foram executadas por diferentes organiza¸c˜ oes. Localmente a ordem das tarefas ´ e arbitr´ aria (por instancia, por ordem de submiss˜ ao, etc). Na segunda fase, cada vez que o processador fica ocioso, o algoritmo prioriza a organiza¸c˜ ao que recebeu menos ajuda das outras, ou seja que teve menos tarefas executadas por outras organiza¸c˜ oes.

Em outro estudo o MOSP ´ e espandido para ter objetivos locais mais relaxados

(OOSHITA; IZUMI, 2009). Chamada de α-Cooperative Multi-Organization Scheduling

Problem (abreviada para α − M OSP ), onde foi introduzido o parˆ ametro α ≥ 1, que

representa o grau de coopera¸c˜ ao. Nesta vers˜ ao o α − M OSP minimiza o makespan global

(14)

sob a restri¸c˜ ao de que o tempo de t´ ermino de cada organiza¸c˜ ao ´ e limitado por α. Quando o α > 1, cada organiza¸c˜ ao ´ e mais cooperativa ao passo que permite que o tempo de t´ ermino seja sacrificado para o benef´ıcio global (menor makespan global).

O principal objetivo do trabalho ´ e mostrar se o grau de cooperatividade α afeta o makespan global de α − M OSP (OOSHITA; IZUMI, 2009).

A primeira parte do estudo apresenta a rela¸c˜ ao entre o grau da cooperatividade α e da composi¸c˜ ao global da α − M OSP . A segunda parte do trabalho demonstra uma an´ alise da complexidade do algoritmo α − M OSP .

Cohen et al. utiliza uma abordagem fundamentada em modelo te´ orico de jogos (game theoretic) para a analisar o problema de escalonamento multiorganiza¸c˜ ao (COHEN et al., 2015) . S˜ ao consideradas cargas de trabalho sequenciais (tamb´ em conhecidas como bag-of-tasks ), que s˜ ao um dos modelos computacionais mais comuns para as plataformas paralelas. Eles s˜ ao populares porque escalam com eficiˆ encia e s˜ ao f´ aceis de programar.

A principal contribui¸c˜ ao do trabalho em quest˜ ao ´ e disponibilizar um modelo te´ orico de jogos para a resolu¸c˜ ao do problema MOSP que leva a configura¸c˜ oes com um custo muito pr´ oximo ao equil´ıbrio de Nash puro e com um pre¸co da anarquia limitante.

Figura 6 – Pre¸ co da Anarquia para o MOSP dando prioridade para organiza¸ c˜ oes

Fonte: COHEN et al.(2015, p.7)

A figura 6 mostra um exemplo deste contexto. O estado inicial da instancia ´ e

apresentado no primeiro momento (a). Em um segundo momento (b) ´ e mostrada a

configura¸c˜ ao ´ otima para a instˆ ancia. O pior equil´ıbrio de Nash poss´ıvel e apresentado

em (c). Nesta ´ ultima configura¸c˜ ao as tarefas come¸cam depois do tempo K + 1 para

organiza¸c˜ oes {O

1

, ..., O

k−1

}. s˜ ao remarcadas nas ´ ultimas K organiza¸c˜ oes, de forma que

a tarefa migrando da organiza¸c˜ ao O

i

, seja reescalonada para o tempo i + 1. As tarefas

de cores diferentes, servem para destacar que pertecem a organiza¸c˜ oes diferentes. O pior

(15)

makespan ´ e dado pela organiza¸c˜ ao O

k

e ´ e igual a 1 + (K − 1) + K = 2K. A instancia apresenta como pre¸co da anarquia para o MOSP como

K+12K

, que para grandes valores de k

´

e assintoticamente igual a 2.

Muitos trabalhos analisam o problema dando ˆ enfase em outros aspectos, como caracteriza¸c˜ ao de piores casos de equil´ıbrio (worst-case equilibria) (CARAGIANNIS et al., 2006), tempo de convergˆ encia para um equil´ıbrio de Nash (Nash equilibrium ) (EVEN-DAR et al., 2007), etc.

Outros trabalhos, mais espec´ıficos, analisam o MOSP sob aspectos de consumo

total de energia do sistema (COHEN et al., 2014).

(16)

Referˆ encias

1

BRUNO JL., COFFMAN EG. Jr, SETHI R. Scheduling independent tasks to reduce mean finishing time. Communications of the ACM, p. 382–387, 1974.

CARAGIANNIS I., FLAMMINI M., KAKLAMANIS C., KANELLOPOULOS P., MOSCARDELLI L. Tight bounds for selfish and greedy load balancing. Proceedings of the 33rd International Colloquium on Automata, Languages and Programming, Lecture Notes in Computer Science. Springer: Berlin, v. 5, p. 311–322, 2006.

COHEN, J., CORDEIRO, D., TRYSTRAM, D., WAGNER, F. Analysis of Multi- Organization Scheduling Algorithms em The 16th International Conference on Parallel Computing (Euro-Par) Ischia, Italy (eds. D’Ambra, P., Guarracino, M. & Talia, D.), Springer, Heidelberg, p. 367–379, 2010.

COHEN, J., CORDEIRO, D., TRYSTRAM, D. Coordination mechanisms for decentralized parallel systems. Concurrency and Computation: Practice and Experience, ed. 27, p. 1255–1272, 2015.

COHEN, J., CORDEIRO, D., RAPHAEL, P. Energy-Aware Multi-Organization Scheduling Problem. Euro-Par Parallel Processing: Porto, Portugal, v. 8632, 2014.

DUTOT P., PASCUAL, F., RZADCA, K., TRYSTRAM, D. Approximation algo- rithms for the Multi-Organization Scheduling Problem. IEEE Transactions on Parallel and Distributed Systems, v. 22, p. 1888-1895, 2011.

EVEN-DAR E., KESSELMAN A., MANSOUR Y. Convergence time to nash equilibria. ACM Transactions on Algorithms, p. 32, 2007.

GRAHAM RL. Bounds on multiprocessing timing anomalies. SIAM Journal on Applied Mathematics, p. 416–429, 1969.

GAREY, M., JOHNSON, D. Computers and Intractability: A Guide to the Theory of NP-Completeness. WH Freeman & Co. New York, NY, USA, 1979.

OOSHITA F, IZUMI T. A generalized multi-organization scheduling on unrelated parallel machines. International Conference on Parallel and Distributed Computing, Appli- cations and Technologies (PDCAT). IEEE Computer Society: Los Alamitos, CA, U.S.A., p. 26–33, 2009.

1

De acordo com a Associa¸ c˜ ao Brasileira de Normas T´ ecnicas. NBR 6023.

(17)

PASCUAL, F., RZADCA, K., TRYSTRAM, D. Cooperation in multi-organization scheduling. Concurrency and Computation: Practice & Experience, p. 905–921, 2008.

PASCUAL, F., RZADCA, K., TRYSTRAM, D. Cooperation in multi-organization scheduling. Concurrency and Comp.: Practice & Experience 21 (eds. Boug´ e, L. & Lengauer, C.), p. 905–921, 2009.

PINEDO, M. Scheduling Theory, Algorithms, and Systems. New York: Springer, 2016. v. 5.

SHMOYS, D., WEIN, J., WILLIAMSON, D. Scheduling parallel machines on-line.

SIAM Journal on Computing, ed. 24, 1995.

Referências

Documentos relacionados

rgeom(n, p) distribui¸ c˜ ao Geom´ etrica(p) runif(n, a, b) distribui¸ c˜ ao Uniforme(a,b) rexp(n, lambda) distribui¸ c˜ ao Exponencial(lambda) rnorm(n, mean, sd) distribui¸ c˜

Um procedimento ´ e um bloco de programa, contendo in´ıcio e fim e ser´ a identificado por um nome atrav´ es do qual ser´ a referenciado em qualquer parte do programa principal ou

1 o /03/11 Raz˜ ao de ser da disciplina; objetivos e metodologia; apresenta¸c˜ao breve dos conte´ udos de cada unidade do curso; os crit´erios de avalia¸c˜ao.. Os n´ umeros

Para evitar isso, vocˆ e pode mover os dois comandos do preˆ ambulo para algum lugar ap´ os o comando \tableofcontents ou definitivamente n˜ ao us´ a-los, porque vocˆ e ver´ a que

No ´ ultimo cap´ıtulo deste trabalho, Cap´ıtulo 5, usaremos o grau to- pol´ ogico para mostrar a existˆ encia de solu¸ c˜ oes para um sistema de equa¸ c˜ oes diferenciais n˜

Caso o usu´ ario deseje executar novamente um mesmo comando ´ e necess´ ario apenas cha- mar na shell uma referˆ encia ao comando desejado com o caracter “!”, como mostra o exemplo

ramdomSeed(analogRead(0)); - Determina valores aleat´ orios a partir de um valor inicial definido pela entrada anal´ ogica.. random(valor maximo); - Gera um valor aleat´ orio dentro

Adapte o programa desta aula para que os os LED’s sejam acessos dois a dois, come¸ cando do centro, indo at´ e as extremidades e voltando para