• Nenhum resultado encontrado

2.3 Modelo MM de Diagn´ostico Baseado em Compara¸c˜oes

2.3.2 t-Diagnosticabilidade (t-Diagnosability)

Sengupta e Dahbura [169] solucionaram o problema da t-diagnosticabilidade (t-Diagnosability) para um certo valor inteiro t sobre o modelo MM. ´E importante lembrar que um sistema ´e t-diagnostic´avel se todas as unidades falhas do sistema puderem ser identificadas desde que o n´umero de unidades falhas n˜ao seja maior que t. Al´em disso, em um sistema t-diagnostic´avel, para cada s´ındrome existe um conjunto ´unico de unidades falhas que pode produzir aquela s´ındrome, desde que o n´umero de unidades falhas n˜ao seja maior que t.

Sejam S1e S2conjuntos de unidades. Um par (S1, S2) tal que S1, S2 ⊂ V e |S1|, |S2| ≤ t ´e definido como distingu´ıvel ou indistingu´ıvel da seguinte forma. Seja σ(F ) o conjunto de s´ındromes que podem ser geradas se F ´e o conjunto de nodos falhos. O par de conjuntos S1, S2 | S1 6= S2 ´e dito ser indistingu´ıvel se e somente se σ(S1) ∩ σ(S2) 6= ∅; caso contr´ario ele ´e considerado distingu´ıvel.

Para provar que um par (S1, S2) ´e distingu´ıvel, pelo menos uma das seguintes trˆes condi¸c˜oes devem ser satisfeitas:

1. ∃i, j ∈ V − S1− S2 e ∃k ∈ (S1− S2) ∪ (S2− S1) tal que (j, k)i ∈ C; 2. ∃i ∈ V − S1− S2 e ∃j, k ∈ S1− S2 tal que (j, k)i ∈ C;

3. ∃i ∈ V − S1− S2 e ∃j, k ∈ S2− S1 tal que (j, k)i ∈ C.

Sengupta e Dahbura provam que um sistema S com N nodos ´e t-diagnostic´avel se e somente se para cada par de conjuntos S1, S2 ∈ V | S1 6= S2 e |S1|, |S2| ≤ t, (S1, S2) ´e um par distingu´ıvel. Em outras palavras, considerando o conjunto σ(S1) que ´e o conjunto de s´ındromes que podem ser produzidas se S1 ´e o conjunto de nodos falhos e considerando o conjunto σ(S2) analogamente definido, σ(S1) ∩ σ(S2) = ∅.

Eles tamb´em provam que para um sistema com N nodos ser t-diagnostic´avel, N ≥ 2t + 1 e cada nodo deve possuir grau maior ou igual a t, isto ´e, a sa´ıda de cada nodo deve ser comparada com as sa´ıdas de pelo menos outros t nodos. Al´em disso, para cada conjunto X ⊂ V tal que |X| = N − 2t + p e 0 ≤ p ≤ t − 1, os autores provam que |T (X)| > p, onde T (X) = {k | (j, k)i ∈ C e i, j ∈ X e k ∈ V − X}. Em outras palavras: para um dado conjunto X ⊂ V , T (X) denota o conjunto de unidades em V − X que s˜ao comparadas com alguma unidade em X e por algum unidade de X.

Sengupta e Dahbura tamb´em definem um conjunto U ⊂ V como um AFS (Allowable Fault Set), ou poss´ıvel conjunto de unidades falhas, para a s´ındrome σ de S, se para quaisquer trˆes unidades i, j, k tal que (j, k)i ∈ C, j, k ∈ N(i) e j 6= k, as seguintes condi¸c˜oes s˜ao satisfeitas:

— se i ∈ V − U e j, k ∈ V − U ent˜ao r((j, k)i) = 0 — se i ∈ V − U e {j, k} ∩ U 6= ∅ ent˜ao r((j, k)i) = 1

Em outras palavras, para verificar se um conjunto U ´e um AFS, para cada compara¸c˜ao (j, k)i realizada no sistema, a primeira condi¸c˜ao indica que: se a unidade comparadora i n˜ao estiver no AFS e tamb´em ambas as unidades j, k comparadas tamb´em n˜ao estiverem no AFS – ou seja i, j, k /∈ U – ent˜ao o resultado da compara¸c˜ao (j, k)i deve indicar igualdade. Al´em disso, com base na segunda condi¸c˜ao, se unidade comparadora i n˜ao estiver no AFS mas ao menos uma das unidades comparadas j, k estiverem no AFS, ent˜ao o resultado da compara¸c˜ao deve indicar diferen¸ca. Como exemplo, considere um sistema com 8 unidades, onde U = {u6, u7, u8} e as compara¸c˜oes (u2, u3)u1 e (u2, u6)u1 s˜ao duas das compara¸c˜oes realizadas no sistema. Se o resultado destas compara¸c˜oes forem respectivamente r((u2, u3)u1) = 1 e r((u2, u6)u1) = 1, ent˜ao o conjunto U = {u6, u7, u8} n˜ao ´e um AFS, pois a primeira condi¸c˜ao n˜ao ´e satisfeita. Por outro lado, quando o resultado destas compara¸c˜oes forem r((u2, u3)u1) = 0 e r((u2, u6)u1) = 0, ent˜ao o mesmo conjunto U tamb´em n˜ao ´e um AFS, pois agora a segunda condi¸c˜ao n˜ao ´e satisfeita.

m´ınimo de σ, e denotado por MASF (σ). Denota-se por t-AFS um conjunto AFS com no m´aximo t unidades. Os autores ent˜ao apresentam que dado um sistema t-diagnostic´avel com no m´aximo t unidades falhas e uma s´ındrome de compara¸c˜oes σ, resolver o problema do diagn´ostico do sistema ´e encontrar um MASF (σ). Al´em disso, como em um sistema t-diagnostic´avel o conjunto de unidades falhas F ´e ´unico e |F | ≤ t, ent˜ao existe apenas um ´unico conjunto AFS como no m´aximo t unidades, isto ´e, existe apenas um t-AFS.

2.3.2.1 t/x-Diagnosticabilidade e t[x]-Diagnosticabilidade

Sengupta e Rhee em [170] definem a t/x-diagnosticabilidade e a t[x]-diagnosticabilidade. Um sistema ´e t/x-diagnostic´avel se todos os processadores falhos podem ser identificados unicamente a partir do conjunto dos resultados das compara¸c˜oes sempre que n˜ao exista mais de t processadores falhos e que a quantidade de resultados de compara¸c˜oes ausentes seja no m´aximo x. Os autores consideram a t/x-diagnosticabilidade para casos onde o resultado de uma compara¸c˜ao pode estar ausente devido a uma falha na transmiss˜ao da tarefa de entrada ou ainda na transmiss˜ao do resultado da tarefa executada. Um sistema ´e t[x]-diagnostic´avel se todos os processadores falhos podem ser identificados unicamente a partir do conjunto dos resultados das compara¸c˜oes sempre que n˜ao exista mais de t processadores falhos e que a quantidade de resultados de compara¸c˜oes que levem a identifica¸c˜ao incorreta seja no m´aximo x. Este ´ultimo conceito ´e usado para representar, por exemplo, nodos com falhas intermitentes.

Sejam dois conjuntos de processadores S1, S2 ∪ V , X(S1, S2) = {(i, j)k | k ∈ S1 e {i, j} ⊂ S1 ∪ S2 e {i, j} ∩ S2 6= ∅}. Em outras palavras, X(S1, S2) denota o con-junto de compara¸c˜oes onde o comparador est´a em S1 e um dos processadores comparados est´a em S2 e o outro processador comparado est´a em S1 ∪ S2. ´E provado que um sis-tema ´e t/x-diagnostic´avel se e somente se, para todo S1, S2 ⊂ V , tal que |S1|, |S2| ≤ t, CT (V − S1 − S2, S1 − S2) + CT (V − S1 − S2, S2 − S1) > x onde CT (S1, S2) denota a cardinalidade do conjunto X(S1, S2). Tamb´em ´e provado que um sistema ´e t[x]-diagnostic´avel se e somente se: (a) para todo S1 ⊂ V , tal que |S1| = t, e para todo

i ∈ S1, CT (V − S1, {i}) > x; e, (b) para todo S1, S2, tal que S1, S2 ⊂ V , e |S1| = |S2| = t, pelo menos uma das seguintes condi¸c˜oes ´e satisfeita:

— CT (V − S1− S2, S1− S2) > x; — CT (V − S1− S2, S2− S1) > x.

2.3.2.2 Outras Extens˜oes do Modelo MM

Em [33] uma extens˜ao do modelo MM ´e apresentada. Este modelo considera ambas as falhas de processadores que s˜ao comparados e de comparadores de forma separada. Um processador ou executa tarefas ou realiza compara¸c˜oes. Os autores mostram que a diagnosticabilidade do sistema ´e t ≤ ⌊δ/2⌋, onde δ ´e o grau do nodo de menor grau no sistema. Entretanto, eles tamb´em mostram que se o n´umero de comparadores falhos ´e menor que a quantidade dos outros processadores falhos, a diagnosticabilidade ´e de t ≤ δ. Os autores tamb´em apresentam um algoritmo ´otimo O(|E|) para o diagn´ostico se t ≤ ⌊δ/2⌋, e um algoritmo O(|E|2) para o diagn´ostico se t ≤ δ, onde E ´e o conjunto de comparadores.

Em [166] falhas de unidades comparadoras e tamb´em do observador central s˜ao con-sideradas. Para realizar o diagn´ostico das unidades comparadoras, os autores prop˜oem uma estrat´egia para executar exaustivamente compara¸c˜oes entre unidades sem-falha e unidades comparadoras. Estes testes s˜ao realizados testando diferentes tarefas de en-trada e assume-se que uma unidade, mesmo que esteja falha, sempre produz a mesma resposta para uma mesma tarefa de entrada. Os autores aplicam a abordagem proposta para circuitos integrados, apresentando uma solu¸c˜ao de um projeto de circuitos com bom custo-benef´ıcio [166]. Em [141] os autores apresentam uma solu¸c˜ao de diagn´ostico, base-ado no modelo MM, que ´e aplicada para a localiza¸c˜ao de falhas em arrays de processbase-adores bidimensionais, onde processadores s˜ao interconectados em malhas horizontais e verticais. Wang, Blough e Alkalaj em [187, 188] apresentam novas condi¸c˜oes necess´arias e sufi-cientes para um sistema ser t-diagnostic´avel sobre o diagn´ostico baseado em compara¸c˜oes

de ambos o modelo MM e o modelo apresentado por Sengupta e Dahbura. Eles mostram que um sistema ´e t-diagnostic´avel se e somente se para todo Z ⊆ V com Z 6= ∅, e para todo Z1, Z2 que particiona Z, |N1(Z)| + |N2(Z)| + CMV C(G3(Z)) + max(|Z1| + |Z2|) > t, onde: CMV C(G3(Z)) representa a cardinalidade de um conjunto m´ınimo de cobertura de v´ertices do G3(Z); e N1(Z) = {v ∈ V − Z | ∃z ∈ Z com (v, z)v ∈ C}, isto ´e, proces-sadores em V − Z que comparam a si pr´oprios com pelo menos um processador em Z; N2(Z1) = {u ∈ V − Z − N1(Z) | ∃v, w ∈ Z1 com (v, w)u ∈ C}, isto ´e, processadores em V − Z − N1(Z) que comparam dois processadores em Z1; G3(Z) = (N3(Z), E3(Z)) tal que N3(Z) = {u ∈ V −Z−N1(Z)−N2(Z) | ∃v ∈ Z e w ∈ V −Z−N1(Z)−N2(Z) com (v, w)u ∈ C ou (u, v)w ∈ C} e E3(Z) = {{(u, v)} ∈ N3(Z) | ∃w ∈ Z com (v, w)u ∈ C}. Os autores tamb´em apresentam um algoritmo para este modelo e conduzem experimentos atrav´es de simula¸c˜oes onde ´e mostrado que com um n´umero reduzido de testes o algoritmo realiza o diagn´ostico do sistema desde que o n´umero de processadores falhos seja relativamente pequeno.

2.4 Algoritmos Polinomiais para Diagn´ostico de Sistemas de