• Nenhum resultado encontrado

Algoritmo de Hertel e Mehlhorn

N/A
N/A
Protected

Academic year: 2022

Share "Algoritmo de Hertel e Mehlhorn"

Copied!
56
0
0

Texto

(1)

Geometria Computacional

Cristina G. Fernandes

Departamento de Ciência da Computação do IME-USP

http://www.ime.usp.br/˜cris/

segundo semestre de 2018

GeoComp 2018 – p. 1/30

(2)

Algoritmo de Hertel e Mehlhorn

Problema: Dado P, determinar uma partição de P por diagonais, em um número mínimo de partes convexas.

Seja Φ o número mínimo de diagonais que resulta em uma partição convexa de P.

Algoritmo de aproximação: produz uma partição convexa de P por diagonais com no máximo αΦ diagonais, e consome tempo polinomial.

Um tal algoritmo é chamado de α-aproximação, e α é sua razão de aproximação.

O algoritmo de Hertel e Mehlhorn produz uma partição de P por diagonais, sempre com no máximo 4Φ diagonais, ou seja, é uma 4-aproximação.

(3)

Algoritmo de Hertel e Mehlhorn

Problema: Dado P, determinar uma partição de P por diagonais, em um número mínimo de partes convexas.

Seja Φ o número mínimo de diagonais que resulta em uma partição convexa de P.

Algoritmo de aproximação: produz uma partição convexa de P por diagonais com no máximo αΦ diagonais, e consome tempo polinomial.

Um tal algoritmo é chamado de α-aproximação, e α é sua razão de aproximação.

O algoritmo de Hertel e Mehlhorn produz uma partição de P por diagonais, sempre com no máximo 4Φ diagonais, ou seja, é uma 4-aproximação.

(4)

Algoritmo de Hertel e Mehlhorn

Problema: Dado P, determinar uma partição de P por diagonais, em um número mínimo de partes convexas.

Seja Φ o número mínimo de diagonais que resulta em uma partição convexa de P.

Algoritmo de aproximação: produz uma partição convexa de P por diagonais com no máximo αΦ diagonais, e consome tempo polinomial.

Um tal algoritmo é chamado de α-aproximação, e α é sua razão de aproximação.

O algoritmo de Hertel e Mehlhorn produz uma partição de P por diagonais, sempre com no máximo 4Φ diagonais, ou seja, é uma 4-aproximação.

(5)

Algoritmo de Hertel e Mehlhorn

Problema: Dado P, determinar uma partição de P por diagonais, em um número mínimo de partes convexas.

Seja Φ o número mínimo de diagonais que resulta em uma partição convexa de P.

Algoritmo de aproximação: produz uma partição convexa de P por diagonais com no máximo αΦ diagonais, e consome tempo polinomial.

Um tal algoritmo é chamado de α-aproximação, e α é sua razão de aproximação.

O algoritmo de Hertel e Mehlhorn produz uma partição de P por diagonais, sempre com no máximo 4Φ diagonais, ou seja, é uma 4-aproximação.

(6)

Algoritmo de Hertel e Mehlhorn

Considere uma partição convexa de P por diagonais.

Vértice reflexo: vértice com ângulo interno maior que π.

Uma diagonal d é essencial para um vértice v se

a remoção de d torna v reflexo (e a partição deixa de ser convexa). Algoritmo de Hertel e Mehlhorn:

Construa uma triangulação de P e

remova, enquanto houver, diagonais não-essenciais. Devolva a partição que resultar disso.

Consumo de tempo: linear, usando o algoritmo de triangulação de Chazelle (que não vimos). Por que ele é uma 4-aproximação?

(7)

Algoritmo de Hertel e Mehlhorn

Considere uma partição convexa de P por diagonais.

Vértice reflexo: vértice com ângulo interno maior que π. Uma diagonal d é essencial para um vértice v se

a remoção de d torna v reflexo (e a partição deixa de ser convexa).

Algoritmo de Hertel e Mehlhorn: Construa uma triangulação de P e

remova, enquanto houver, diagonais não-essenciais. Devolva a partição que resultar disso.

Consumo de tempo: linear, usando o algoritmo de triangulação de Chazelle (que não vimos). Por que ele é uma 4-aproximação?

(8)

Algoritmo de Hertel e Mehlhorn

Considere uma partição convexa de P por diagonais.

Vértice reflexo: vértice com ângulo interno maior que π. Uma diagonal d é essencial para um vértice v se

a remoção de d torna v reflexo (e a partição deixa de ser convexa).

Algoritmo de Hertel e Mehlhorn:

Construa uma triangulação de P e

remova, enquanto houver, diagonais não-essenciais.

Devolva a partição que resultar disso.

Consumo de tempo: linear, usando o algoritmo de triangulação de Chazelle (que não vimos). Por que ele é uma 4-aproximação?

(9)

Algoritmo de Hertel e Mehlhorn

Considere uma partição convexa de P por diagonais.

Vértice reflexo: vértice com ângulo interno maior que π. Uma diagonal d é essencial para um vértice v se

a remoção de d torna v reflexo (e a partição deixa de ser convexa).

Algoritmo de Hertel e Mehlhorn:

Construa uma triangulação de P e

remova, enquanto houver, diagonais não-essenciais.

Devolva a partição que resultar disso.

Consumo de tempo: linear, usando o algoritmo de triangulação de Chazelle (que não vimos).

Por que ele é uma 4-aproximação?

(10)

Algoritmo de Hertel e Mehlhorn

Considere uma partição convexa de P por diagonais.

Vértice reflexo: vértice com ângulo interno maior que π. Uma diagonal d é essencial para um vértice v se

a remoção de d torna v reflexo (e a partição deixa de ser convexa).

Algoritmo de Hertel e Mehlhorn:

Construa uma triangulação de P e

remova, enquanto houver, diagonais não-essenciais.

Devolva a partição que resultar disso.

Consumo de tempo: linear, usando o algoritmo de triangulação de Chazelle (que não vimos).

Por que ele é uma 4-aproximação?

(11)

Algoritmo de Hertel e Mehlhorn

Algoritmo de Hertel e Mehlhorn:

Construa uma triangulação de P e

remova, enquanto houver, diagonais não-essenciais.

Devolva a partição que resultar disso.

Por que ele é uma 4-aproximação?

Lema: Em uma partição convexa por diagonais, existem no máximo duas diagonais essenciais por vértice reflexo. Prova: Feita na aula.

Teorema: O algoritmo de Hertel e Mehlhorn é uma 4-aproximação. Prova: Feita na aula.

(12)

Algoritmo de Hertel e Mehlhorn

Algoritmo de Hertel e Mehlhorn:

Construa uma triangulação de P e

remova, enquanto houver, diagonais não-essenciais.

Devolva a partição que resultar disso.

Por que ele é uma 4-aproximação?

Lema: Em uma partição convexa por diagonais, existem no máximo duas diagonais essenciais por vértice reflexo.

Prova: Feita na aula.

Teorema: O algoritmo de Hertel e Mehlhorn é uma 4-aproximação. Prova: Feita na aula.

(13)

Algoritmo de Hertel e Mehlhorn

Algoritmo de Hertel e Mehlhorn:

Construa uma triangulação de P e

remova, enquanto houver, diagonais não-essenciais.

Devolva a partição que resultar disso.

Por que ele é uma 4-aproximação?

Lema: Em uma partição convexa por diagonais, existem no máximo duas diagonais essenciais por vértice reflexo.

Prova: Feita na aula.

Teorema: O algoritmo de Hertel e Mehlhorn é uma 4-aproximação. Prova: Feita na aula.

(14)

Algoritmo de Hertel e Mehlhorn

Algoritmo de Hertel e Mehlhorn:

Construa uma triangulação de P e

remova, enquanto houver, diagonais não-essenciais.

Devolva a partição que resultar disso.

Por que ele é uma 4-aproximação?

Lema: Em uma partição convexa por diagonais, existem no máximo duas diagonais essenciais por vértice reflexo.

Prova: Feita na aula.

Teorema: O algoritmo de Hertel e Mehlhorn é uma 4-aproximação.

Prova: Feita na aula.

(15)

Algoritmo de Hertel e Mehlhorn

Algoritmo de Hertel e Mehlhorn:

Construa uma triangulação de P e

remova, enquanto houver, diagonais não-essenciais.

Devolva a partição que resultar disso.

Por que ele é uma 4-aproximação?

Lema: Em uma partição convexa por diagonais, existem no máximo duas diagonais essenciais por vértice reflexo.

Prova: Feita na aula.

Teorema: O algoritmo de Hertel e Mehlhorn é uma 4-aproximação.

Prova: Feita na aula.

(16)

Partição convexa ótima

Greene apresentou o primeiro algoritmo que

encontra uma partição convexa por diagonais ótima.

Consumo de tempo: O(r2n2) = O(n4), onde n é o número de vértices e r é o número

de vértices reflexos do polígono.

Posteriormente, Keil propôs um outro algoritmo que encontra uma partição convexa por diagonais ótima. Consumo de tempo: O(r2n lg n).

Os dois algoritmos são de programação dinâmica.

Se a partição é por segmentos, o problema fica mais complicado. Há um algoritmo de Chazelle que consome

tempo O(n + r3) = O(n3) para este caso.

(17)

Partição convexa ótima

Greene apresentou o primeiro algoritmo que

encontra uma partição convexa por diagonais ótima.

Consumo de tempo: O(r2n2) = O(n4), onde n é o número de vértices e r é o número

de vértices reflexos do polígono.

Posteriormente, Keil propôs um outro algoritmo que encontra uma partição convexa por diagonais ótima.

Consumo de tempo: O(r2n lg n).

Os dois algoritmos são de programação dinâmica.

Se a partição é por segmentos, o problema fica mais complicado. Há um algoritmo de Chazelle que consome

tempo O(n + r3) = O(n3) para este caso.

(18)

Partição convexa ótima

Greene apresentou o primeiro algoritmo que

encontra uma partição convexa por diagonais ótima.

Consumo de tempo: O(r2n2) = O(n4), onde n é o número de vértices e r é o número

de vértices reflexos do polígono.

Posteriormente, Keil propôs um outro algoritmo que encontra uma partição convexa por diagonais ótima.

Consumo de tempo: O(r2n lg n).

Os dois algoritmos são de programação dinâmica.

Se a partição é por segmentos, o problema fica mais complicado. Há um algoritmo de Chazelle que consome

tempo O(n + r3) = O(n3) para este caso.

(19)

Partição convexa ótima

Greene apresentou o primeiro algoritmo que

encontra uma partição convexa por diagonais ótima.

Consumo de tempo: O(r2n2) = O(n4), onde n é o número de vértices e r é o número

de vértices reflexos do polígono.

Posteriormente, Keil propôs um outro algoritmo que encontra uma partição convexa por diagonais ótima.

Consumo de tempo: O(r2n lg n).

Os dois algoritmos são de programação dinâmica.

Se a partição é por segmentos, o problema fica mais complicado.

Há um algoritmo de Chazelle que consome tempo O(n + r3) = O(n3) para este caso.

(20)

Ponto q está no polígono?

P convexo

Algoritmo trivial:

verifique se q está à esquerda de todas as arestas de P Complexidade: linear

Algo mais rápido? Várias queries:

pré-processamento linear e queries usando busca binária! Procure a fatia onde q está. q está à esquerda ou à direita da aresta na fatia?

q z

(21)

Ponto q está no polígono?

P convexo

Algoritmo trivial:

verifique se q está à esquerda de todas as arestas de P

Complexidade: linear Algo mais rápido? Várias queries:

pré-processamento linear e queries usando busca binária! Procure a fatia onde q está. q está à esquerda ou à direita da aresta na fatia?

q z

(22)

Ponto q está no polígono?

P convexo

Algoritmo trivial:

verifique se q está à esquerda de todas as arestas de P Complexidade: linear

Algo mais rápido? Várias queries:

pré-processamento linear e queries usando busca binária! Procure a fatia onde q está. q está à esquerda ou à direita da aresta na fatia?

q z

(23)

Ponto q está no polígono?

P convexo

Algoritmo trivial:

verifique se q está à esquerda de todas as arestas de P Complexidade: linear

Algo mais rápido?

Várias queries:

pré-processamento linear e queries usando busca binária! Procure a fatia onde q está. q está à esquerda ou à direita da aresta na fatia?

q z

(24)

Ponto q está no polígono?

P convexo

Algoritmo trivial:

verifique se q está à esquerda de todas as arestas de P Complexidade: linear

Algo mais rápido?

Várias queries:

pré-processamento linear e queries usando busca binária!

Procure a fatia onde q está.

q está à esquerda ou à direita da aresta na fatia?

q z

(25)

Ponto q está no polígono?

E se P não for convexo?

Os dois algoritmos anteriores funcionam para alguns polígonos não convexos.

Quais?

Polígonos estrela (star polygon)

P tem um ponto p que enxerga todos os outros pontos de P.

q

p

(26)

Ponto q está no polígono?

E se P não for convexo?

Os dois algoritmos anteriores funcionam para alguns polígonos não convexos.

Quais?

Polígonos estrela (star polygon)

P tem um ponto p que enxerga todos os outros pontos de P.

q

p

(27)

Ponto q está no polígono?

E se P não for convexo?

Os dois algoritmos anteriores funcionam para alguns polígonos não convexos.

Quais?

Polígonos estrela (star polygon)

P tem um ponto p que enxerga todos os outros pontos de P.

q

p

(28)

Polígonos arbitrários

Problema: Dados P e q, decidir se q está ou não em P.

Dois algoritmos lineares:

I número de voltas (winding number)

I cruzamentos de um raio (ray crossings) Ângulo com sinal de ab~ em relação a q:

a b

q q

b

a

θ > 0 θ < 0

(29)

Polígonos arbitrários

Problema: Dados P e q, decidir se q está ou não em P. Dois algoritmos lineares:

I número de voltas (winding number)

I cruzamentos de um raio (ray crossings)

Ângulo com sinal de ab~ em relação a q:

a b

q q

b

a

θ > 0 θ < 0

(30)

Polígonos arbitrários

Problema: Dados P e q, decidir se q está ou não em P. Dois algoritmos lineares:

I número de voltas (winding number)

I cruzamentos de um raio (ray crossings) Ângulo com sinal de ab~ em relação a q:

a b

q q

b

a

θ > 0 θ < 0

(31)

Winding number

Problema: Dados P e q, decidir se q está ou não em P.

Calcule a soma dos ângulos com sinal de cada aresta de δP em relação a q.

Esse número é ou zero ou 2π.

Winding number: essa soma dividida por 2π

Se o winding number é zero, q não está em P. Senão q está em P.

(32)

Winding number

Problema: Dados P e q, decidir se q está ou não em P. Calcule a soma dos ângulos com sinal

de cada aresta de δP em relação a q.

Esse número é ou zero ou 2π.

Winding number: essa soma dividida por 2π

Se o winding number é zero, q não está em P. Senão q está em P.

(33)

Winding number

Problema: Dados P e q, decidir se q está ou não em P. Calcule a soma dos ângulos com sinal

de cada aresta de δP em relação a q. Esse número é ou zero ou 2π.

Winding number: essa soma dividida por 2π

Se o winding number é zero, q não está em P. Senão q está em P.

(34)

Winding number

Problema: Dados P e q, decidir se q está ou não em P. Calcule a soma dos ângulos com sinal

de cada aresta de δP em relação a q.

Esse número é ou zero ou 2π.

Winding number: essa soma dividida por 2π

Se o winding number é zero, q não está em P. Senão q está em P.

(35)

Winding number

Problema: Dados P e q, decidir se q está ou não em P. Calcule a soma dos ângulos com sinal

de cada aresta de δP em relação a q.

Esse número é ou zero ou 2π.

Winding number: essa soma dividida por 2π

Se o winding number é zero, q não está em P. Senão q está em P.

(36)

Ray crossings

Problema: Dados P e q, decidir se q está ou não em P.

R: raio horizontal saindo de q para x = +∞ Quantas vezes R cruza δP?

Quantas arestas de δP o raio R cruza?

b

b b

b b

cruza 2 arestas cruza 6 arestas

cruza 4 arestas cruza 3 arestas cruza 3 arestas

Se cruza um número par de arestas, q não está em P. Senão q está em P.

(37)

Ray crossings

Problema: Dados P e q, decidir se q está ou não em P. R: raio horizontal saindo de q para x = +∞

Quantas vezes R cruza δP?

Quantas arestas de δP o raio R cruza?

b

b b

b b

cruza 2 arestas cruza 6 arestas

cruza 4 arestas cruza 3 arestas cruza 3 arestas

Se cruza um número par de arestas, q não está em P. Senão q está em P.

(38)

Ray crossings

Problema: Dados P e q, decidir se q está ou não em P. R: raio horizontal saindo de q para x = +∞

Quantas vezes R cruza δP?

Quantas arestas de δP o raio R cruza?

b

b b

b b

cruza 2 arestas cruza 6 arestas

cruza 4 arestas cruza 3 arestas cruza 3 arestas

Se cruza um número par de arestas, q não está em P. Senão q está em P.

(39)

Ray crossings

Problema: Dados P e q, decidir se q está ou não em P. R: raio horizontal saindo de q para x = +∞

Quantas vezes R cruza δP?

Quantas arestas de δP o raio R cruza?

b

b b

b b

cruza 2 arestas cruza 6 arestas

cruza 4 arestas cruza 3 arestas cruza 3 arestas

Se cruza um número par de arestas, q não está em P. Senão q está em P.

(40)

Ray crossings

Problema: Dados P e q, decidir se q está ou não em P. R: raio horizontal saindo de q para x = +∞

Quantas vezes R cruza δP?

Quantas arestas de δP o raio R cruza?

b

b b

b b

cruza 2 arestas cruza 6 arestas

cruza 4 arestas cruza 3 arestas cruza 3 arestas

Se cruza um número par de arestas, q não está em P. Senão q está em P.

(41)

Casos especiais

R: raio horizontal saindo de q para x = +∞ Quantas arestas de δP o raio R cruza?

b b

b b

cruza 7 arestas...

cruza 5 arestas... cruza 4 arestas...

cruza quantas arestas??

Considere cada aresta

fechada no extremo inferior e aberta no superior!

Cruza: um extremo estritamente acima, outro abaixo.

(42)

Casos especiais

R: raio horizontal saindo de q para x = +∞ Quantas arestas de δP o raio R cruza?

b b

b b

cruza 7 arestas...

cruza 5 arestas...

cruza 4 arestas...

cruza quantas arestas??

Como tratar destes casos?

b b

b b

cruza 7 arestas...

cruza 5 arestas... cruza 4 arestas...

cruza quantas arestas??

Considere cada aresta

fechada no extremo inferior e aberta no superior!

Cruza: um extremo estritamente acima, outro abaixo.

(43)

Casos especiais

R: raio horizontal saindo de q para x = +∞ Quantas arestas de δP o raio R cruza?

b b

b b

cruza 7 arestas...

cruza 5 arestas...

cruza 4 arestas...

cruza quantas arestas??

Considere cada aresta

fechada no extremo inferior e aberta no superior!

Cruza: um extremo estritamente acima, outro abaixo.

(44)

Primeira versão do algoritmo

Suponha que q é a origem.

Em-Polígono-v0(P, n) 1 c ← 0

2 para i ← 0 até n − 1 faça

3 j ← (i + n − 1)mod n vértice i − 1

4 se (P[i][Y ] > 0 e P[j][Y ] ≤ 0)

4 se ou (P[j][Y ] > 0 e P[i][Y ] ≤ 0)

5 então x (P[i][X] P[j][Y] P[j][X] P[i][Y])

5 então x ← /(P[j][Y ] P[i][Y ]) interseção c/ eixo x

6 se x > 0

7 então c ← c + 1

8 se c é ímpar

9 então devolva dentro 10 senão devolva fora

Nem sempre funciona quando q está na fronteira de P...

(45)

Primeira versão do algoritmo

Suponha que q é a origem.

Em-Polígono-v0(P, n) 1 c ← 0

2 para i ← 0 até n − 1 faça

3 j ← (i + n − 1)mod n vértice i − 1

4 se (P[i][Y ] > 0 e P[j][Y ] ≤ 0)

4 se ou (P[j][Y ] > 0 e P[i][Y ] ≤ 0)

5 então x (P[i][X] P[j][Y] P[j][X] P[i][Y])

5 então x ← /(P[j][Y ] P[i][Y ]) interseção c/ eixo x

6 se x > 0

7 então c ← c + 1

8 se c é ímpar

9 então devolva dentro 10 senão devolva fora

Nem sempre funciona quando q está na fronteira de P...

(46)

Pontos na fronteira

R: raio horizontal saindo de q para x = +∞ Quantas arestas de δP o raio R cruza?

b

b b

b

cruza 0 arestas...

cruza 2 arestas... cruza 4 arestas... cruza 0 arestas...

Erra em alguns pontos da fronteira, concluindo que eles estão fora de P...

(47)

Pontos na fronteira

R: raio horizontal saindo de q para x = +∞ Quantas arestas de δP o raio R cruza?

b

b b

b

cruza 0 arestas...

cruza 2 arestas...

cruza 4 arestas...

cruza 0 arestas...

Erra em alguns pontos da fronteira, concluindo que eles estão fora de P...

(48)

Pontos na fronteira

R: raio horizontal saindo de q para x = +∞ Quantas arestas de δP o raio R cruza?

b

b b

b

cruza 0 arestas...

cruza 2 arestas...

cruza 4 arestas...

cruza 0 arestas...

Erra em alguns pontos da fronteira, concluindo que eles estão fora de P...

(49)

Casos especiais

Se aresta é

fechada no extremo inferior e aberta no superior.

Pontos “em P”:

(50)

Casos especiais

Se aresta é

fechada no extremo inferior e aberta no superior.

Pontos “em P”:

(51)

Casos especiais

Agora considere ao contrário: que uma aresta é fechada no extremo superior e aberta no inferior e que R vai para x = −∞.

Pontos “em P”:

(52)

Casos especiais

Primeira maneira:

acerta no interior das arestas da esquerda e de baixo.

Segunda maneira:

acerta no interior das arestas da direita e de cima.

Interpretando das duas maneiras,

acertamos a resposta no interior de todas as arestas! Restam os vértices...

Quando q é um dos vértices de P, a resposta pode ainda estar errada... Faça um teste em separado

para ver se q não é um dos vértices de P.

(53)

Casos especiais

Primeira maneira:

acerta no interior das arestas da esquerda e de baixo.

Segunda maneira:

acerta no interior das arestas da direita e de cima.

Interpretando das duas maneiras,

acertamos a resposta no interior de todas as arestas!

Restam os vértices...

Quando q é um dos vértices de P, a resposta pode ainda estar errada... Faça um teste em separado

para ver se q não é um dos vértices de P.

(54)

Casos especiais

Primeira maneira:

acerta no interior das arestas da esquerda e de baixo.

Segunda maneira:

acerta no interior das arestas da direita e de cima.

Interpretando das duas maneiras,

acertamos a resposta no interior de todas as arestas!

Restam os vértices...

Quando q é um dos vértices de P, a resposta pode ainda estar errada...

Faça um teste em separado

para ver se q não é um dos vértices de P.

(55)

Casos especiais

Primeira maneira:

acerta no interior das arestas da esquerda e de baixo.

Segunda maneira:

acerta no interior das arestas da direita e de cima.

Interpretando das duas maneiras,

acertamos a resposta no interior de todas as arestas!

Restam os vértices...

Quando q é um dos vértices de P, a resposta pode ainda estar errada...

Faça um teste em separado

para ver se q não é um dos vértices de P.

(56)

Segunda versão do algoritmo

Em-Polígono(P,n) para facilitar, q é a origem

1 c ← 0 d ← 0

2 para i ← 0 até n − 1 faça

3 se P[i][X] = 0 e P[i][Y ] = 0 então devolva vértice

4 j ← (i + n − 1) mod n vértice i − 1

5 testec ← (P[i][Y ] > 0) 6= (P[j][Y ] > 0) 6 tested ← (P[i][Y ] < 0) 6= (P[j][Y ] < 0) 7 se testec ou tested

8 então x ← intersecção com eixo x

9 se testec e x > 0 então c ← c + 1 10 se tested e x < 0 então d ← d + 1 11 se c e d têm paridade distinta

12 então devolva em aresta 13 se c é ímpar

14 então devolva dentro 15 senão devolva fora

Referências

Documentos relacionados

materiais em qualquer das dependências e ou momento da prova prática implicará a desclassificação do candidato. Os candidatos, ao comparecer à prova prática,

Pólo Terceiro: UNIÃO - ADVOCACIA GERAL DA UNIÃO Responsáveis: Ferriani e Jamal Sociedade de Advogados Observações: Escritório: Bornhausen e Zimmer Advogados. Advogado

Uma das grandes motivações de estudar formas aditivas sobre o corpo dos números p-ádicos é a Conjectura de Artin, que afirma existir uma cota inferior para o número de variáveis em

Já, com relação ao algoritmo de Viterbi com 2-níveis de checkpoints por diagonais, com particionamento móvel de memória e retrocedimento restrito, os algoritmos propostos foram

O novo deal traria melhorias não só financeira como operacional para a MEAL3, como (1) sinergias de custos - redução do custo de alimentos devido a otimização

Nas conversas como a de 07 de maio com MEC e MPOG (que não significaram negociação), transpareceram seus “cálculos” frente aos seus interesses de política econômica e de

Toxicidade específica do órgão alvo (exposição única), Efeito Irritante: Pode provocar irritação das vias respiratórias. Toxicidade específica do órgão alvo

Em um hexágono regular foram traçadas duas diagonais e um segmento de reta, cujas extremidades são um ponto sobre um dos lados e um ponto sobre uma das diagonais traçadas,