EMPACOTAMENTO
EM
QUADR ´
ATICAS
Campinas 2012
BIBLIOTECA DO INSTITUTO DE MATEMÁTICA, ESTATÍSTICA E COMPUTAÇÃO CIENTÍFICA - UNICAMP
Flores Callisaya, Hector,
F663e FloEmpacotamento em quadráticas / Hector Flores Callisaya. – Campinas, SP : [s.n.], 2012.
FloOrientador: José Mario Martínez Pérez.
FloTese (doutorado) – Universidade Estadual de Campinas, Instituto de Matemática, Estatística e Computação Científica.
Flo1. Empacotamento de esferas. 2. Teoria dos reticulados. 3. Equações quadráticas. 4. Programação não-linear.
5. Lagrange, Funções de. I. Martínez Pérez, José Mario, 1948-. II. Universidade Estadual de Campinas. Instituto de Matemática, Estatística e Computação Científica. III. Título.
Informações para Biblioteca Digital
Título em inglês: Packing on quadrics Palavras-chave em inglês: Packing spheres Lattice theory Quadratic equations Nonlinear programming Lagrangian functions
Área de concentração: Matemática Aplicada Titulação: Doutor em Matemática Aplicada Banca examinadora:
José Mario Martínez Pérez [Orientador] Ernesto Julián Goldberg Birgin
Gabriel Haeser
Lúcio Tunes dos Santos Sandra Augusta Santos
Data de defesa: 16-03-2012
Programa de Pós-Graduação: Matemática Aplicada
Powered by TCPDF (www.tcpdf.org)
Agradecimentos
Agrade¸co `ao minha m˜ae Ramona C., meu pai Luis E., por todo o apoio que me deram nessa jornada, mesmo que eu n˜ao esteja com eles.
Ao meu orientador, J. M. Mart´ınez, pelas excelentes ideias que transmitiu ao longo desses anos.
Aos coautores de partes desse trabalho, Ernesto, Henrique, e Mart´ınez novamente. `
A Sandra por ter lido cuidadosamente a vers˜ao preliminar desse texto e feito in´ u-meras corre¸c˜oes e coment´arios que melhoraram infinitamente a qualidade desse trabalho.
Agrade¸co aos meus irm˜aos, Favio, Eduarda, Dora, a meus sobrinhos. Aos meus amigos de curso, em especial Kelly e Roberta.
Finalmente, ´a CAPES, pelo apoio financeiro fundamental para a reliza¸c˜ao deste trabalho.
Neste trabalho, ser˜ao propostos modelos matem´aticos para problemas de empacotamento n˜ao reticulado de esferas em regi˜oes limitadas por quadr´aticas no plano e no espa¸co.
Uma t´ecnica para construir representa¸c˜oes ou parametriza¸c˜oes ser´a in-troduzida, mediante `a qual ser´a poss´ıvel encontrar um sistema de de-sigualdades que determinam o empacotamento de um n´umero fixo de esferas. Desta forma, resolvemos o problema de empacotamento de es-feras atrav´es de uma sequˆencia de sistemas de desigualdades.
Finalmente, para obter resultados eficientes, minimizaremos a fun¸c˜ao de sobreposi¸c˜ao, usando o m´etodo do Lagrangiano Aumentado.
Palavras-chave: Empacotamento de esferas, Teoria de reticulados, Equa¸c˜oes quadr´aticas, Programa¸c˜ao n˜ao linear, Fun¸c˜oes de Lagrange.
In this work, we will propose mathematical models for not latticed pac-king of spheres problems in regions bounded by quadratic in the plane and in the space.
A technique to construct representations or parameterizations will be introduced, by which it will be possible to find a system of inequalities which determine the packing of a fixed number of spheres. Thus, we solve the problem of packing spheres through a sequence of systems of inequalities.
Finally, to obtain effective results, we will minimize the overlay function using the Augmented Lagrangian Method.
Key-words: Packing spheres, Lattice theory, Quadratic equations, Nonlinear programming, Lagrangian functions.
Resumo vii
Abstract ix
Introdu¸c˜ao 1
1 Empacotando Bolas em Regi˜oes Arbitr´arias 3
1.1 Problema. . . 3
1.2 Conceitos Fundamentais. . . 4
1.3 Algoritmo para encontrar uma solu¸c˜ao . . . 9
1.4 r-N´ucleo de uma regi˜ao. . . 11
1.5 Exemplos. . . 13
1.6 Empacotamento esf´erico reticulado . . . 20
1.7 Limitante inferior para np(R, r) . . . 22
2 Empacotando em Sec¸c˜oes Cˆonicas 25 2.1 No Plano R2 . . . . 28 2.1.1 Elipse . . . 28 2.1.2 Intersec¸c˜ao de Elipses . . . 36 2.1.3 Par´abola . . . 39 2.2 No espa¸co R3 . . . . 46 2.2.1 Cone . . . 47 2.2.2 Elips´oide . . . 52 xi
2.2.3 Parabol´oide . . . 58
2.3 Minimizando o Contˆeiner . . . 62
2.3.1 Minimizando a ´area da elipse . . . 63
2.3.2 Menor elipse de focos fixos que cont´em np discos . . . 65
2.3.3 Minimizando a tampa da par´abola . . . 66
2.3.4 Minimizando a altura do cone . . . 68
2.3.5 Minimizando a altura do cilindro com base elipsoidal . . . 68
3 Resultados Computacionais e Aplica¸c˜oes 71 3.1 M´etodo Num´erico . . . 71
3.2 M´etodos para resolver factibilidade . . . 73
3.2.1 M´etodo 1 (Met-1) . . . 74
3.2.2 M´etodo 2 (Met-2) . . . 75
3.2.3 Rein´ıcios (MS-T) . . . 75
3.3 Empacotando num contˆeiner fixo . . . 76
3.4 Testes num´ericos . . . 78
3.4.1 Elipse . . . 79
Neste trabalho, o principal objetivo ´e resolver o problema de empacotamento de bolas sem sobreposi¸c˜ao num contˆeiner arbitr´ario. Almejamos encontrar a posi¸c˜ao dos centros das bolas que garante que estejam contidas no contˆeiner.
Nos problemas de empacotamento cl´assico, os contˆeineres s˜ao politopos ou esfe-ras. Existem muitos algoritmos e heur´ısticas para encontrar o maior n´umero de itens que se podem colocar dentro destes contˆeineres. Apresentamos neste trabalho modelos ma-tem´aticos para empacotar itens num contˆeiner irregular, por exemplo: elipse, par´abola, interse¸c˜ao de elipses, elipsoide, cone, etc.
No capitulo um, s˜ao estudados os conceitos b´asicos de empacotamento, empaco-tamento esf´erico, n´umero de empacotamento, e o n´ucleo de um contˆeiner, este ´ultimo ´e muito importante nos problemas de empacotamento de c´ırculos (esferas) em regi˜oes arbi-tr´arias, pois determinar este conjunto por meio de equa¸c˜oes alg´ebricas resolve o problema de empacotamento de discos (esferas).
No cap´ıtulo dois, apresentamos o conceito de fun¸c˜ao representa¸c˜ao ou parametri-za¸c˜ao, que ´e um auxiliar para calcular a distˆancia de um ponto `a fronteira. Consideramos regi˜oes que se podem formar a partir das sec¸c˜oes cˆonicas: elipse, par´abola, intersec¸c˜ao de elipses, etc.
Finalmente no cap´ıtulo trˆes determinamos as vantagens e desvantagens dos m´ e-todos apresentados nos cap´ıtulos um e dois, fazendo os experimentos num´ericos.
Os gr´aficos apresentadas no trabalho s˜ao feitos usando os softwares Algencan [ABMS07] e Pov Ray [POV].
Lista de Nota¸
c˜
oes
Aqui inclu´ımos uma lista de nota¸c˜oes usadas ao longo deste trabalho • N — o conjunto dos n´umeros naturais;
• R — o conjunto dos n´umeros reais;
• Rn— o espa¸co euclidiano de dimens˜ao n (com produto interno euclidiano e a norma
correspondente);
• #(I) — cardinalidade do conjunto I;
• x1, . . . , xn — coordenadas do elemento x ∈ Rn;
• hx, yi — produto interno euclidiano entre x ∈ Rn e y ∈ Rn, i.e., hx, yi = Pn
i=1xiyi;
• |x| — norma euclideana de x ∈ Rn;
• |x|∞ — norma-infinito de x ∈ Rn, definida pelo m´aximo dos valores absolutos de
coordenadas de x, i.e., |x|∞ = maxi=1,...,n|xi|;
• B[x, r] = {y ∈ Rn| |y − x| ≤ r};
• B(x, r) = {y ∈ Rn| |y − x| < r};
• S[x, r] = {y ∈ Rn| |y − x| = r};
• d(x, X) = infy∈X|x − y|;
• int(X) — o interior do conjunto X; • ∂X— fronteira do conjunto X;
• nccpu — tempo em segundos para empacotar nc itens;
• cputt — tempo total em segundos;
• cputr — tempo usado em segundos para encontrar o n´umero de itens do reticulado contidos no contˆeiner.
Empacotando Bolas em Regi˜
oes
Arbitr´
arias
Este cap´ıtulo ´e dedicado `a contextualiza¸c˜ao e apresenta¸c˜ao da teoria de empacotamento. Citaremos a importˆancia e os conceitos b´asicos. Existem muitos trabalhos nesta ´area por exemplo: [T´64, Zon99, Sto83, Pac, MM03, Cen, BS08].
1.1
Problema.
O problema de empacotamento de objetos consiste em distribuir objetos em um contˆeiner R, isto ´e num subconjunto R do espa¸co, de modo que:
• dois itens quaisquer deste arranjo n˜ao podem ocupar o mesmo espa¸co; • este arranjo de objetos ocupe o maior espa¸co poss´ıvel de R.
O caso onde os itens s˜ao retˆangulos de mesmo tamanho e R um contˆeiner convexo descrito por desigualdades foi estudado em [BL10, BMMR06], e o caso onde os itens s˜ao discos ou bolas e R um contˆeiner circular ou retangular foi estudado em [T´64, BS08, Xav07]. Nosso objetivo ´e empacotar discos ou esferas em contˆeiners arbitr´arios, para isto formalizaremos o conceito de contˆeiner.
1.2
Conceitos Fundamentais.
Adotamos a linguagem usada em [Lim81] para descrever os conceitos de empacotamento. Definimos formalmente o conceito de contˆeiner como:
Defini¸c˜ao. 1.2.1. Seja R ⊂ Rn, dizemos que R ´e uma regi˜ao se satisfaz as seguintes condi¸c˜oes:
1. R ´e fechado e limitado, 2. R possui int(R) conexo.
Os problemas de empacotamento consistem em reconhecer se um objeto pode ser introduzido em um contˆeiner, respeitando o espa¸co que ocupam os demais objetos e a parede do contˆeiner, esta ideia pode ser formalizada da seguinte maneira.
Defini¸c˜ao. 1.2.2. Um empacotamento numa regi˜ao R ⊂ Rn ´e uma fam´ılia (Bλ)λ∈Λ de
subconjuntos Bλ ⊂ Rn compactos integr´aveis tais que:
1. int(Bα) ∩ int(Bβ) = ∅ para todo α, β ∈ Λ, α 6= β
2. S
λ∈ΛBλ ⊂ R.
onde Λ ´e um conjunto de ´ındices.
O conjunto Bλ ´e chamado de componente da fam´ılia, item ou objeto. A figura
1.1 ilustra um empacotamento. R Bα Bβ Bγ Figura 1.1: Empacotamento em R.
Consideremos a condi¸c˜ao de sobreposi¸c˜ao no empacotamento, isto ´e; int(Bα) ∩ int(Bβ) = ∅, ∀α, β ∈ Λ. (1.1) Suponhamos que A(Bα) = Z Bα dA > 0, ∀α ∈ Λ, (1.2)
ent˜ao (1.1) pode ser descrito em termos da ´area de interse¸c˜ao dos itens Bα e Bβ, isto ´e
int(Bα) ∩ int(Bβ) = ∅ ⇐⇒ A(Bα∩ Bβ) = 0, ∀α, β ∈ Λ. (1.3)
De fato: (⇐) Dados α e β, suponhamos que int(Bα) ∩ int(Bβ) 6= ∅, ent˜ao existe
p ∈ int(Bα) ∩ int(Bβ), logo existe δ1 > 0 tal que B(p, δ1) ⊂ Bα e δ2 > 0 tal que
B(p, δ1) ⊂ Bβ. Seja δ = min{δ1, δ2}, ent˜ao B(p, δ) ⊂ Bα∩ Bβ, consequentemente
0 < Z B(p,δ) dA ≤ Z Bα∩Bβ dA 6= 0. (1.4)
(⇒) Reciprocamente, suponhamos A(Bα∩ Bβ) > 0 ent˜ao exite um bloco S em Bα∩ Bβ
com volume n˜ao zero A(S) 6= 0, ent˜ao exite p ∈ int(S). Assim int(Bα) ∩ int(Bβ) 6= ∅.
A equivalˆencia (1.3) ´e muito importante pois se pode determinar a sobreposi¸c˜ao de dois itens calculando a ´area da interse¸c˜ao dos itens, ver figura 1.2
R Bα
Bβ
Figura 1.2: Sobreposi¸c˜ao de triˆangulos em R, A(Bα∩ Bβ) > 0.
Suponhamos que Bα∩ (Rn− R) seja integr´avel para cada α, ent˜ao
Defini¸c˜ao. 1.2.3. Seja (Bλ)λ∈Λ um empacotamento na regi˜ao R. O empacotamento ´e
chamado de empacotamento r´ıgido se para cada α e β em Λ existe uma transforma¸c˜ao r´ıgida Tα,β : Rn−→ Rn tal que
Tα,β(Bα) = Bβ. (1.6)
A transforma¸c˜ao Tα,β tamb´em ´e conhecida como deslocamento, pois
geometrica-mente representa o deslocamento do objeto Bα em Bβ, isto ´e, Bβ ´e uma c´opia de Bα.
Portanto todos os objetos tˆem a mesma forma: retangular, circular, etc., contidas na regi˜ao R. A figura 1.3 ilustra um empacotamento r´ıgido.
Consideremos o problema de empacotar discos ou esferas em uma regi˜ao arbitr´ a-ria. A este tipo de problema chamamos de empacotamento esf´erico, mais formalmente temos:
Defini¸c˜ao. 1.2.4. Seja (Bλ)λ∈Λ um empacotamento r´ıgido em R, se cada componente
da fam´ılia ´e uma bola fechada, o empacotamento ´e chamado de empacotamento esf´erico em R.
O problema de empacotamento esf´erico consiste em distribuir o maior n´umero poss´ıvel esferas de mesmo raio r em R. A figura 1.3 ilustra um empacotamento esf´erico.
R Bα
Bβ
Bγ
Figura 1.3: Empacotamento esf´erico R.
Uma transforma¸c˜ao r´ıgida ´e a composi¸c˜ao de uma transla¸c˜ao e uma transforma¸c˜ao ortogonal, isto ´e:
T (x) = x1+ U x, (1.7)
onde U ´e uma matriz n × n que satisfaz; UtU = I
n e x1 ∈ Rn, da´ı obtemos que:
Seja (Bλ)λ∈Λum empacotamento esf´erico, ent˜ao pela defini¸c˜ao de empacotamento temos que [ λ∈Λ int(Bλ) ⊂ R; (1.9) ent˜ao X λ∈Λ A(int(Bλ)) ≤ Z R dA (1.10)
por (1.8) temos que A(Bα) = A(Bβ) = A(Bλ0); da´ı obtemos
#(Λ) A(Bλ0) ≤
Z
R
dA, (1.11)
para λ0 fixo, logo
#(Λ) ≤ A(R)
A(Bλ0)
. (1.12)
Da´ı conclu´ımos que se (Bλ)λ∈Λ ´e um empacotamento esf´erico na regi˜ao R que
cont´em um n´umero finito de objetos, ent˜ao o empacotamento pode ser escrito como uma fam´ılia finita de subconjuntos de R . Nas seguintes se¸c˜oes ser˜ao estudadas t´ecnicas para encontrar um empacotamento com cardinalidade #(Λ) m´axima.
Dada uma regi˜ao R, desejamos caracterizar os centros das bolas por meio de fun-¸c˜oes reais tais que elas satisfa¸cam as condi¸co˜es de empacotamento. Primeiro, a distˆancia do centro da bola `a fronteira da regi˜ao ´e maior que o raio da bola, se e somente se a bola est´a contida na regi˜ao. Isto pode ser formalizado no seguinte lema.
Lema. 1.2.1. Seja R uma regi˜ao e r > 0, ent˜ao
Bα[xα, r] ⊂ R ⇐⇒ d(xα, ∂R) ≥ r e xα ∈ R. (1.13)
Demonstra¸c˜ao. (=⇒) Suponhamos que Bα = B(xα, r) ⊂ R, ent˜ao por defini¸c˜ao xα ∈
R. Para provar que d(xα, ∂R) ≥ r, provemos por contradi¸c˜ao, isto ´e suponhamos que
d(xα, ∂R) < r. Como R ´e compacto ent˜ao a fronteira ∂R de R tamb´em ´e compacto, da´ı
existe um y ∈ ∂R tal que |xα− y| = |d(xα, ∂R)| < r logo y ∈ int(Bα) da´ı y ∈ int(R).
Absurdo! pois int(R) ∩ ∂R = ∅.
(⇐=) Suponhamos tamb´em por absurdo, que xα ∈ R, d(xα, ∂R) ≥ r e Bα 6⊂ R.
int(Rn− R). Seja [x
α, x] o segmento que une xα com x, naturalmente o segmento de reta
[xα, x] ´e conexo.
Seja ωR : Rn −→ R definido por
ωR(z) = d(z, R) − d(z, (Rn− R)). (1.14)
Note que ωR ´e cont´ınua, em particular no segmento [xα, x], e
ωR(xα) = d(xα, R) − d(xα, (Rn− R)) = −d(xα, (Rn− R)) ≤ 0, (1.15)
pois xα∈ R ⇔ d(xα, R) = 0.
ωR(x) = d(x, R) − d(x, (Rn− R)) = d(x, R) > 0, (1.16)
pois por hip´otese temos que x ∈ (Rn − R) ⇔ d(x, Rn − R) = 0. Pela conexidade do segmento [xα, x], por (1.15), (1.16), e aplicando o teorema do valor intermedi´ario temos
que existe y ∈ [xα, x] tal que ωR(y) = 0, logo d(y, R) = d(y, (Rn− R)) = 0. Isto acontece
se e somente se y ∈ ∂R, e y 6= x pois x ∈ int(Rn− R) Da´ı
r ≤ d(xα, ∂R) ≤ d(xα, y) < d(xα, x) ≤ r.
que ´e absurdo. Logo conclu´ımos que B[xα, r] ⊂ R.
A segunda condi¸c˜ao, muito importante num empacotamento ´e: “dois objetos n˜ao podem ocupar o mesmo espa¸co ”, a qual pode ser descrita por uma desigualdade, mostrada no seguinte lema:
Lema. 1.2.2. Seja R uma regi˜ao, m ∈ N e (Bα)mα=1 um empacotamento esf´erico de raio
r em R, ent˜ao temos a seguinte equivalˆencia
int(Bα) ∩ int(Bβ) = ∅ ⇐⇒ |xα− xβ| ≥ 2r, α 6= β. (1.17)
Demonstra¸c˜ao. Provemos a contra rec´ıproca isto ´e:
int(Bα) ∩ int(Bβ) 6= ∅ ⇐⇒ |xα− xβ| < 2r. (1.18) |xα− xβ| < 2 r ⇔ |xα− xβ| 2 < r ⇔ xα− xα+ xβ 2 < r e xβ− xα+ xβ 2 < r ⇔ xm = xα+ xβ 2 ∈ Bα∩ Bβ ⇔ int(Bα) ∩ int(Bβ) 6= ∅.
Observa¸c˜ao. 1.2.1. Tamb´em podemos obter o mesmo resultado usando (1.3), isto ´e A(B(xα, r) ∩ B(xβ, r)) = 0 ⇐⇒ |xα− xβ| ≥ 2r, ∀α 6= β. (1.19)
Conhecendo que uma bola Bα ´e completamente determinada por seu centro e
raio, e usando (1.13) e (1.17), podemos caracterizar as equa¸c˜oes que determinam o empa-cotamento em R.
1.3
Algoritmo para encontrar uma solu¸
c˜
ao
At´e agora mostramos que qualquer empacotamento esf´erico ´e uma fam´ılia finita de sub-conjuntos de R. Pelos lemas 1.2.1 e 1.2.2 o problema de empacotar num contˆeiner ´e equivalente a encontrar solu¸c˜oes de um sistema n˜ao linear de desigualdades.
Dados uma regi˜ao R e r > 0, definimos a seguinte sequˆencia de conjuntos;
Ω1(R, r) = {x ∈ Rn; x ∈ R, d(x, ∂R) ≥ r} . (1.20) e para k = 2, 3, 4, ... Ωk(R, r) = (x1, . . . , xk) ∈ Rn k xi ∈ R, ∀i = 1, . . . , k, d(xi, ∂R) ≥ r, ∀i = 1, . . . , k, d(xi, xj) ≥ 2 r, i < j. . (1.21)
Por simplicidade denotamos por Ωk o conjunto Ωk(R, r).
Cada elemento de Ωk determina um empacotamento de k componentes ou itens
na regi˜ao R. Isto motiva o seguinte esquema iterativo, no qual cada itera¸c˜ao consiste na resolu¸c˜ao, para cada k > 0, do sistema que determina Ωk.
Definiremos um algoritmo bastante geral para encontrar um empacotamento na regi˜ao R,
Algoritmo. 1.3.1. Dados R uma regi˜ao em Rn (n = 2, 3), e r > 0.
1. Fa¸ca k = 1.
2. Se Ωk(R, r) = ∅ parar. Em caso contr´ario, calcular xk ∈ Ωk(R, r).
3. Tomar k := k + 1 e retornar ao passo 2.
Teorema. 1.3.1. O algoritmo 1.3.1 est´a bem definido.
Demonstra¸c˜ao. Suponhamos que Ωk 6= ∅, ent˜ao existe uma sequˆencia finita de pontos
(x1, x2, . . . , xk) que pertence a Ω
k, cujas componentes satisfazem `as equa¸c˜oes:
xi ∈ R para todo i ∈ {1, ..., k} (1.22)
d(xi, ∂R) ≥ r para todo ∀i ∈ {1, ..., k} (1.23)
d(xi, xj) ≥ 2 r para todo i < j ∈ {1, ..., k} (1.24) As equa¸c˜oes (1.22) e (1.23), pela proposi¸c˜ao s˜ao 1.2.1 ´e o mesmo que dizer que a bola B(xi, r) est´a contida na regi˜ao R para todo i = 1, . . . , k. A equa¸c˜ao (1.24) pela proposi¸c˜ao
(1.2.2), diz que a interse¸c˜ao B(xi, r) ∩ B(xj, r) = ∅. Da´ı conclu´ımos que a fam´ılia de bolas
B(x1, r), . . . , B(xk, r) forma um empacotamento. Para mostrar que ´e um empacotamento r´ıgido esf´erico, definimos Ti,j(x) = x + (xj − xi) que satisfaz T (B(xi, r)) = B(xj, r). Isto
mostra que a sequˆencia gerada pelo algoritmo 1.3.1 ´e um empacotamento r´ıgido esf´erico. Pela equa¸c˜ao (1.12) temos que s´o existe um n´umero finito de pontos xi gerados pelo
algoritmo.
Como a sequˆencia gerada pelo algoritmo ´e finita, denotamos o n´umero m´aximo de pontos xi gerado pelo algoritmo por n
p(R, r), o qual ´e determinado pelo contˆeiner R e
pelo raio da esfera r.
Defini¸c˜ao. 1.3.1. Chama-se n´umero de empacotamento ao n´umero m´aximo k tal que Ωk(R, r) 6= ∅ para a regi˜ao R e denotamos por np(R, r).
O n´umero de empacotamento tem a seguinte propriedade:
Ωnp(R,r) 6= ∅ e Ωnp(R,r)+i = ∅, para todo i = 1, . . . (1.25)
e pela equa¸c˜ao (1.12), temos
np(R, r) ≤
A(R) A(Bλ0)
. (1.26)
A rela¸c˜ao (1.26) ´e muito importante, pois nos d´a uma cota superior para o n´ u-mero de empacotamento np(R, r). Esta propriedade pode ser usada para melhorar nosso
algoritmo 1.3.1.
Achar np(R, r) ´e dif´ıcil, pois n˜ao ´e f´acil verificar computacionalmente quando o
conjunto Ωk(R, r) ´e vazio, uma vez que np(R, r) ´e solu¸c˜ao do problema de otimiza¸c˜ao
max k sujeito a Ωk(R, r) 6= ∅, (1.27)
Note-se que se x∗ ∈ Rn k ´e uma solu¸c˜ao do problema (1.28).
min x F = k X i=1 max{0, r2− d(xi, ∂R)2}2 (1.28) Sujeito a: xi ∈ R, i = 1, . . . , k 4 r2− d(xi, xj)2 ≤ 0, i < j.
com F (x∗) = 0, ent˜ao x∗ ∈ Ωk(R, r). Porem, a fun¸c˜ao objetivo F em (1.28) n˜ao
´
e expl´ıcita, pois (1.28) contem o problema de calcular d(xi, ∂R), o qual n˜ao permite o
c´alculo do gradiente de F , mas pode ser resolvido usando m´etodos sem derivada como: [EMP11, Pow09, NM65].
1.4
r-N´
ucleo de uma regi˜
ao.
Seja B[x, r] uma bola centrada em x de raio r > 0, no algoritmo geral 1.3.1. Precisamos calcular a distˆancia do centro da bola `a fronteira da regi˜ao R para determinar se a bola est´a contida em R. Mas isso ´e resolver outro problema de minimiza¸c˜ao, isto ´e:
min
e verificar que a solu¸c˜ao y∗ de (1.29) satisfaz `a desigualdade:
d(x, y∗) ≥ r, (1.30)
Note no algoritmo geral 1.3.1, que n˜ao ´e fundamental determinar a solu¸c˜ao do problema (1.29). Por exemplo, se R for um retˆangulo no plano, isto R = [a, b] × [c, d] ⊂ R2,
o problema de empacotamento na regi˜ao R ´e equivalente a encontrar uma distribui¸c˜ao (uniforme) de pontos no retˆangulo
[a + r, b − r] × [c + r, d − r] ⊂ R2, como se mostra na figura 1.4.
R
Kr(R)
r
r
Figura 1.4: R = [a, b] × [c, d], Kr(R) = [a + r, b − r] × [c + r, d − r].
Assim como no caso do quadrado, podemos determinar primeiro um subconjunto de R cujos elementos tˆem distˆancia `a fronteira maior que r.
Defini¸c˜ao. 1.4.1. Seja R ⊂ Rn (n = 2, 3) uma regi˜ao, chamamos de r-N´ucleo de R ao
conjunto
Kr(R) = {x ∈ R | d(x, ∂R) ≥ r} . (1.31)
Portanto Ωk(R, r) pode ser descrito por:
Ωk(R, r) = (x1, . . . , xk) ∈ Rk n xi ∈ Kr(R), ∀i = 1, . . . , k d(xi, xj) ≥ 2 r, i < j . (1.32)
Determinando primeiro o n´ucleo de uma regi˜ao R por meio de inequa¸c˜oes, pode-mos reduzir as inequa¸c˜oes que determinam o empacotamento em R.
1.5
Exemplos.
Apresentamos exemplos nos quais podemos determinar de forma expl´ıcita o conjunto Kr(R) para algumas regi˜oes simples.
Exemplo. 1.5.1. (Esferas numa esfera). Um exemplo cl´assico e muito estudado ´
e o problema de empacotar c´ırculos em um c´ırculo [Pac, Sto83]. Deseja-se encontrar o n´umero m´aximo de c´ırculos num c´ırculo maior, neste caso ´e poss´ıvel calcular o r−n´ucleo para empacotar c´ırculos de raio r. De fato; seja R = B[x0, ρ], isto ´e uma bola fechada
centrada no ponto x0 e raio ρ, que naturalmente ´e compacto com fronteira ∂R = S[x0, ρ].
Pela defini¸c˜ao de r−n´ucleo temos que determinar o conjunto:
Kr =x ∈ B[x0, ρ] | d(x, S[x0, ρ]) ≥ r . (1.33)
Caso.- 1 Suponhamos que 0 ≤ r ≤ ρ, ent˜ao
Kr =x ∈ B[x0, ρ] | |x − x0| ≤ ρ − r .
De fato, seja x ∈ Kr e x 6= x0 ent˜ao x ∈ B[x0, ρ] e d(x, S[x0, ρ]) ≥ r, consideremos o
ponto y0 = x0+ ρ|x−xx−x00|. Como |y
0− x0| = ρ temos que y0 ∈ S[x0, ρ], tamb´em temos que
os pontos x0, x e y0 s˜ao colineares, logo pela desigualdade triangular temos
ρ = |y0 − x0| = |y0− x| + |x − x0|. (1.34)
Seja y ∈ S[x0, ρ] ent˜ao
|y − x0| ≤ |y − x| + |x − x0| para todo y ∈ S[x0, ρ], (1.35)
mas |y − x0| = ρ para todo y ∈ S[x0, ρ], ent˜ao
ρ ≤ |y − x| + |x − x0| para todo y ∈ S[x0, ρ]. Usando a defini¸c˜ao de d(x, S[x0, ρ]) temos
ρ ≤ d(x, S[x0, ρ]) + |x − x0| (1.36)
Como y0 ´e um ponto da fronteira que satisfaz a igualdade (1.34) e a rela¸c˜ao (1.36) con-clu´ımos que
da´ı
ρ = r + |x − x0|
se e somente se ρ − r ≥ |x − x0|. Logo x ∈ B[x0, ρ − r] ou K
r ⊂ B[x0, ρ − r].
Reciprocamente, seja x ∈ B[x0, ρ − r]. Fazendo a mesma an´alise temos que
ρ = d(x, S[x0, ρ]) + |x − x0| e por hip´otese temos que |x − x0| ≤ ρ − r, ent˜ao ρ = d(x, S[x0, ρ]) + |x − x0| ≤ d(x, S[x0, ρ]) + ρ − r isto ´e r ≤ d(x, S[x0, ρ]). Finalmente temos Kr = B[x0, ρ − r].
O racioc´ınio ´e representado na figura 1.5.
R x0 Kr(R) ρ x y0 y r ρ − r Figura 1.5: R = B[x0, ρ], K r(R) = B[x0, ρ − r].
Caso.- 2 Suponhamos que r > ρ e Kr 6= ∅, ent˜ao existe x ∈ B[x0, ρ] tal que a
bola B[x, r] ⊂ B[x0, ρ]. mas isto ´e absurdo, pois se y1 = x0+ r x−x0
|x−x0| ent˜ao y1 ∈ B[x0, r] e
y1 6∈ B[x0, ρ]. Conclu´ımos que
Deste modo Ωk pode ser descrito por um n´umero finito de desigualdades: Ωk= (x1, . . . , xk) ∈ Rk n d(xi, x0) ≤ ρ − r, ∀i, d(xi, xj) ≥ 2 r, i < j, ∀i, j ∈ Ik = {1, ..., k} . (1.38)
Lembrando a equivalˆencia 0 < a ≤ b ⇐⇒ a2 ≤ b2. Ω
k pode escrito da seguinte forma
Ωk= (x1, . . . , xk) ∈ Rk n |xi− x0|2 ≤ (ρ − r)2, ∀i, |xi− xj|2 ≥ (2 r)2, i < j, ∀i, j ∈ Ik = {1, ..., k} . (1.39)
Se R = {(x, y) | x2+ y2 ≤ 25} e raio r = 1, o n´umero de empacotamento ´e np ≈ 19, com
a configura¸c˜ao ilustrada na figura 1.6.
Figura 1.6: ρ = 5, r = 1, np ≈ 19.
Exemplo. 1.5.2. (Esferas num politopo). Outro caso muito estudado [BMR05, MFP03] ´e quando ´e R um poliedro convexo e limitado, isto ´e, um politopo. Suponhamos que R ´e descrito como a seguinte regi˜ao
R = x ∈ Rn hai, xi ≤ b i ∀i ∈ Im = {1, ..., m} . (1.40)
Afirmamos que o n´ucleo Kr(R), ´e:
Kr(R) = x ∈ Rn hai, xi ≤ b i− r |ai| ∀i ∈ Im = {1, . . . , m} . (1.41)
De fato, seja x ∈ Kr, ent˜ao d(x, ∂R) ≥ r. Como R ´e um politopo, podemos
calcular a proje¸c˜ao Pi(x) onde Pi ´e a proje¸c˜ao no hiperplano hx, aii = bi. Definimos a
curva αi(s) = x + s a
i
|ai|, como a
i ´e perpendicular ao hiperplano, ent˜ao a curva intercepta
perpendicularmente o hiperplano, e existe si tal que αi(si) = Pi(x) isto ´e:
bi = hαi(si), aii = hx + si ai |ai|, a ii = hx, aii + sih ai |ai|, a ii = hx, aii + si|ai| ≥ hx, aii + r|ai|
pois a curva ´e parametrizada pelo comprimento de arco s. Finalmente conclu´ımos que x tem que satisfazer a desigualdade
hx, aii ≤ b
i− r|ai| para todo i = 1, . . . , m. (1.42)
Para a rec´ıproca, ´e suficiente observar que os hiperplanos hx, aii = b
i− r|ai| e hx, aii = bi
s˜ao paralelos, e a distˆancia entre eles ´e r.
Deste modo Ωk neste caso pode ser descrito por um n´umero finito de
desigualda-des. Ωk= (x1, . . . , xk) ∈ Rk n hxi, api ≤ b i− r|ap|, d(xi, xj) ≥ 2 r, ∀i, j ∈ Ik = {1, ..., k}, ∀p ∈ Im = {1, ..., m}. . (1.43)
Lembrando a equivalˆencia 0 < a ≤ b ⇐⇒ a2 ≤ b2, Ω
k pode ser escrito da seguinte forma
Ωk= (x1, . . . , xk) ∈ Rk n hxi, api ≤ b i− r|ap|, |xi− xj|2 ≥ (2 r)2, ∀i, j ∈ Ik = {1, ..., k}, ∀p ∈ Im = {1, ..., m}. . (1.44)
Consideremos o caso espec´ıfico de um politopo de 5 lados, descrito por R = (x, y) ∈ R2 3x ≤ 15, 3x √ 2 + 5y √ 2 ≤ 15, −3√3x 2 + 5y 2 ≤ 15, 3x 2 − 5√3y 2 ≤ 15, 3√3x 2 − 5y 2 ≤ 15, , (1.45) e ilustrado na figura 1.7. Figura 1.7: R, r = 1, np ≈ 20.
Exemplo. 1.5.3. O Cilindro circular.- Dados ρ > 0 e L > 0, definimos o conjunto R = x = (x1, x2, x3) ∈ R3 (x1)2+ (x2)2 ≤ ρ2, 0 ≤ x3 ≤ L, . (1.46)
Usando os mesmos argumentos dos exemplos 1.5.1 e 1.5.2 podemos mostrar que o r−n´ucleo de R dado em (1.46) ´e o seguinte conjunto
Kr(R) = x = (x1, x2, x3) ∈ R3 (x1)2+ (x2)2 ≤ (ρ − r)2, r ≤ x3 ≤ L − r, . (1.47)
Figura 1.8: R, Kr(R).
Ent˜ao, o conjunto Ωk pode ser escrito da seguinte forma
Ωk= (x1, . . . , xk) ∈ R3 k (xi1)2+ (xi2)2 ≤ (ρ − r)2, r ≤ xi 3 ≤ L − r, |xi− xj|2 ≥ (2 r)2, ∀i, j ∈ Ik= {1, ..., k}, . (1.48)
Para ρ = 2 e L = 7 o n´umero de empacotamento para r = 1 ´e np ≈ 8 com a representa¸c˜ao
gr´afica ilustrada na figura 1.9.
Figura 1.9: R : ρ = 2, L = 7 r = 1, np ≈ 8.
Para ρ = 5 e L = 2 o n´umero de empacotamento para r = 45 ´e np ≈ 30 com a
seguinte representa¸c˜ao gr´afica ilustrada na figura 1.10.
Exemplo. 1.5.4. Elipse.- Seja a ≥ b, definimos R como a regi˜ao com fronteira ∂R = E , onde E ´e uma elipse.
R =nx = (x1, x2) ∈ R2 (x1)2 a2 + (x2)2 b2 ≤ 1, o . (1.49)
Figura 1.10: R : ρ = 5, L = 2, r = 45, np ≈ 30.
Calcular o r−n´ucleo neste caso n˜ao ´e f´acil, pois o r−n´ucleo de uma elipse n˜ao ´
e uma elipse, mas ∂R ´e suave, e R ´e convexa. Isto nos permite aproximar ∂R por retas tangentes obtendo um politopo com infinitos lados. Pelo exemplo 1.5.2 podemos determinar o n´ucleo de R usando infinitas retas, isto ´e:
R = nx = (x1, x2) ∈ R2 (x1)2 a2 + (x2)2 b2 ≤ 1, o , (1.50) = x = (x1, x2) ∈ R2 x1b cos(t) + a sin(t) x2 ≤ a b ∀t ∈ [0, 2 π], . (1.51)
Da´ı o n´ucleo de R pode ser calculado usando o desenvolvimento do exemplo 1.5.2, logo
Kr(R) = x = (x1, x2) ∈ R2 b cos(t) x1+ a sin(t) x2 ≤ a b − rp(b cos(t))2+ (a sin(t))2, ∀t ∈ [0, 2 π], . (1.52) r Kr(R) R Figura 1.11: R, Kr(R).
O conjunto Ωk pode ser escrito como: Ωk = (x1, . . . , xk) ∈ R3 k b cos(t) xi1+ a sin(t) xi2 ≤ a b − rp(b cos(t))2+ (a sin(t))2, ∀t ∈ [0, 2 π], |xi− xj|2 ≥ (2 r)2, ∀i, j ∈ Ik= {1, ..., k}, . (1.53)
Para reconhecer se um ponto esta no r−n´ucleo temos que avaliar infinitas de-sigualdades, mas computacionalmente isto ´e imposs´ıvel. No capitulo dois construiremos uma representa¸c˜ao do plano que permita calcular o r− n´ucleo explicitamente.
1.6
Empacotamento esf´
erico reticulado
O problema do empacotamento esf´erico em reticulados procura basicamente os reticulados que proporcionam a maior densidade em suas dimens˜oes. Embora este problema tenha sido estudado por v´arios matem´aticos, at´e agora, s´o se conhece o resultado para dimens˜oes at´e 8 e para dimens˜ao 24 [CS99].
Defini¸c˜ao. 1.6.1. Seja B = {u1, . . . , um} um conjunto linearmente independente de
vetores de Rn. Um reticulado no Rn com gerador B, consiste do conjunto das combina¸c˜oes inteiras desses m vetores, ou seja
Lm(0) =u ∈ Rn|u = s1u1+ . . . + smum, si ∈ Z . (1.54)
Notemos que o reticulado ´e um conjunto discreto no subespa¸co de dimens˜ao m gerado por B. Dizemos tamb´em que Lm ´e um reticulado de dimens˜ao m contido em Rn
Defini¸c˜ao. 1.6.2. Dados um reticulado Lm no Rn com conjunto de geradores B, o
conjunto de pontos Pm
i=1siui ∈ Rn para os quais 0 ≤ si ≤ 1 ´e chamado de dom´ınio
fundamental do reticulado L associado ao conjunto de geradores B.
Defini¸c˜ao. 1.6.3. Dados um reticulado Lm no Rn com conjunto de geradores B e o L um
ponto no Rn, o reticulado afim ´e o conjunto:
Exemplo. 1.6.1. Consideremos o reticulado padr˜ao do plano, ou seja L2 = Z2. Temos
v´arios geradores para tal reticulado. Por exemplo B = {(1, 0), (0, 1)} ´e um conjunto de geradores para L2.
Figura 1.12: L2 = Z2.
Exemplo. 1.6.2. Para o caso n = 2 o teorema de Lagrange e Thue [Zon99] afirma que o reticulado hexagonal gerado por Br = {2 r(1, 0), r (1,
√
3)}, o qual denotamos por L2r(0, 0), ´
e o que proporciona o mais denso empacotamento de esferas de raio r (reticulado e n˜ao reticulado) em R2, ilustrado nas figuras 1.13 e 1.14.
2r
Figura 1.13: Reticulado L2r gerado por Br.
Figura 1.14: Empacotamento Reticu-lado em R2.
Exemplo. 1.6.3. Em 1611, J. Kepler fez a conjectura de que o mais denso empacota-mento de esferas (reticulado e n˜ao reticulado) em R3 tem densidade de centro 1/√32.
Carl F. Gaus em 1831 provou parcialmente a conjectura mostrando que esse ´e o maior valor para densidade de centro quando se considera apenas empacotamentos reticulados. Em 1998, Thomas Hales anunciou uma prova da conjectura de Kepler pelo m´etodo de
exaust˜ao, que envolve verifica¸c˜ao de muitos casos individuais usando c´alculos computaci-onais complexos. A prova de Haless foi avaliada como 99% correta. Para maiores detalhes sobre a conjectura de Kepler ver [Zon99].
O reticulado gerado por Br = {
√
2 r(1, 1, 0),√2 r(0, 1, 1),√2 r(1, 0, 1)}, o qual denotamos por L3
r, ´e ilustrado nas figuras 1.15 e 1.16
Figura 1.15: Reticulado L3
r gerado por
Br.
Figura 1.16: Empacotamento reticulado em R3.
1.7
Limitante inferior para n
p(R, r)
Na pratica, come¸car empacotando desde k = 1 (k n´umero de itens) no algoritmo 1.3.1 n˜ao ´
e uma boa escolha computacionalmente, pois ´e mais razo´avel tentar construir um limitante inferior. Para isto aproveitamos os empacotamentos reticulados com maior densidade: no plano R2 e no espa¸co R3.
Sejam R um contˆeiner e r > 0, definimos
n#(R, r, oL) = #(Lnr(oL) ∩ Kr(R)). (1.56)
Isto ´e, o n´umero de discos do reticulado Ln
r que est˜ao contidos no contˆeiner R, logo pela
defini¸c˜ao de n´umero de empacotamento temos
0 ≤ n#(R, r, oL) ≤ np(R, r). (1.57)
Algoritmo. 1.7.1. Dados R uma regi˜ao em Rn (n = 2, 3), o
L∈ Rn, e r > 0.
1. Calcular n#(R, r, oL).
2. Fa¸ca k = n#(R, r, oL) + 1.
3. Se Ωk(R, r) = ∅ parar. Em caso contr´ario, calcular xk ∈ Ωk(R, r).
4. Tomar k := k + 1 e retornar ao passo 3.
Ilustramos na seguinte sequencia os passos do algoritmo nas figuras: 1.17, 1.18, 1.19, 1.20.
Figura 1.17: Reticulado L2
1/2(oL) gerado
por B1/2.
Figura 1.18: N´umero de pontos do reti-culado no n´ucleo n#= 75.
Empacotando em Sec¸
c˜
oes Cˆ
onicas
O problema de empacotamento pode ser formulado como um problema de otimiza¸c˜ao, e em alguns casos como um sistema de inequa¸c˜oes expl´ıcitas, por exemplo quando o contˆeiner ´e um c´ırculo 1.5.1 ou politopo 1.5.2. Mas se o contˆeiner for uma elipse o modelo matem´atico n˜ao ´e trivial, pois ´e preciso representar o plano maneira que seja f´acil calcular a distˆancia do centro da bola ao bordo do contˆeiner.
Para calcular o n´umero m´aximo de itens (discos ou esferas) que o contˆeiner admite usamos o algoritimo 1.7.1, mas neste algoritmo precisamos verificar a desigualdade
d(x, ∂R) ≥ r, (2.1)
a qual se reduz a resolver outro problema de otimiza¸c˜ao, da´ı a dificuldade de formular tudo como um s´o problema de otimiza¸c˜ao.
No caso de empacotamento esf´erico numa regi˜ao poliedral limitada ou esf´erica, o problema resolve-se calculando todos os pontos de R que satisfazem (2.1), isto ´e calculando o n´ucleo da regi˜ao.
Em particular, se a regi˜ao ´e dada por
R =x ∈ Rn g(x) ≤ 0 , (2.2)
onde g : Rn−→ R ´e uma aplica¸c˜ao diferenci´avel, ent˜ao a fronteira de R ´e o conjunto
∂R =x ∈ Rn g(x) = 0 . (2.3)
Defini¸c˜ao. 2.0.1. Seja g : Rn −→ R uma fun¸c˜ao diferenci´avel, dizemos que c ∈ R ´e um
valor regular de g quando n˜ao existem pontos cr´ıticos de g no n´ıvel c, ou seja, ∇g(x) 6= 0 para todo x ∈ g−1(c). Quando c ´e um valor regular de g, diz-se que o n´ıvel c ´e regular. Quando existem pontos cr´ıticos x tais que ∇g(x) = 0, dizemos que c ´e um n´ıvel critico de g.
Suponhamos que 0 seja um valor regular de g, ent˜ao o teorema de fun¸c˜ao impl´ıcita garante que g−1(0) ´e uma superf´ıcie (se n ≥ 3), ou uma curva (se n = 2).
Pelo lema 1.2.1 temos que a bola Bα centrada em xα e de raio r, est´a contida na
regi˜ao R se e somente se a rela¸c˜ao (2.1) ´e satisfeita. Como a regi˜ao R ´e compacta ent˜ao sua fronteira ∂R = g−1(0) ´e compacta, logo existe yα ∈ ∂R tal que satisfaz as equa¸c˜oes
de Lagrange
xα− yα = λ ∇g(yα), (2.4)
g(yα) = 0. (2.5)
O vetor ∇g(yα) ´e perpendicular ao conjunto de n´ıvel g−1(0) = ∂R, onde yα ´e tal
que g(yα) = 0. De fato, seja η : (−, ) −→ g−1(0) tal que η(0) = yα e η(t) ∈ g−1(0) = ∂R,
para todo t ∈ (−, ). Ent˜ao
0 = (g ◦ η)0(0) = dg(η(0)) η0(0) = h∇g(yα), η0(0)i, (2.6)
ver figura 2.1.
Pelas equa¸c˜oes (2.4) e (2.5), podemos calcular xα conhecendo yα e λ usando a
f´ormula (2.4) sob certas condi¸c˜oes para R, isto ´e, podemos representar cada ponto de R por (yα, λ).
Na realidade, desejamos representar os pontos de R, em algum sistema referencial onde seja f´acil calcular a distˆancia do ponto xα `a fronteira.
Defini¸c˜ao. 2.0.2. Sejam R ⊂ Rn, U ⊂ Rm e H : U −→ R uma aplica¸c˜ao cont´ınua.
Dizemos que o par (H, U ) ´e uma representa¸c˜ao do conjunto R se H ´e sobrejetora, isto ´e, H(U ) = R.
xα yα = η(0) g(x) < 0 ∇g(yα) η0(0) g(y) = 0 r Figura 2.1: Regi˜ao R : g(x) ≤ 0.
Exemplo. 2.0.1. Seja R = {(x, y) | x2+ y2 ≤ 1} o disco unit´ario, isto ´e R = B[0, 1] ⊂ R2, ent˜ao as aplica¸c˜oes:
φ : U = [0, 2 π] × [0, 1] ⊂ R2 −→ R2, φ(t, s) = (s cos(t), s sin(t)), (polar)
H : U = S[0, 1] × [0, 1] ⊂ R3 −→ R2, H(q, s) = s q
s˜ao representa¸c˜oes de R, pois
φ([0, 2 π] × [0, 1]) = B[0, 1],
H(S[0, 1] × [0, 1]) = B[0, 1]. Ilustramos estas ideias na figura 2.2.
Logo, com este novo sistema de coordenadas ´e f´acil calcular a distˆancia de um ponto da B[0, 1] `a fronteira S[0, 1]. No caso, se p ∈ B[0, 1] ent˜ao existe (q, s) ∈ S[0, 1] × [0, 1] tal que p = H(q, s), pois H ´e sobrejetora, logo a distˆancia ´e dada por: d(p, S[0, 1]) = d(H(q, s), q) = |q(1 − s)|
o R 1 p = φ(t, s) r q = φ(t, s) ∈ ∂R Figura 2.2: Regi˜ao R : g(x) ≤ 0.
2.1
No Plano R
2Nesta sec¸c˜ao analisamos o problema de empacotamento esf´erico numa regi˜ao plana, cuja fronteira ´e uma sec¸c˜ao cˆonica, isto ´e: elipse, c´ırculo, par´abola ou uma combina¸c˜ao destas sec¸c˜oes cˆonicas. Calcular a distˆancia de um ponto `a fronteira ainda nestes casos n˜ao ´e trivial, mas para cada regi˜ao ´e poss´ıvel construir uma representa¸c˜ao ou um sistema de coordenadas onde seja f´acil calcul´a-la.
A ideia geom´etrica ´e deformar um ponto q ∈ ∂R em p ∈ R tal que d(q, p) = d(p, ∂R), isto pode ser feito usando um conceito semelhante `a homotopia.
2.1.1
Elipse
Defini¸c˜ao. 2.1.1. Uma elipse, E , de focos f1 e f2 ´e o conjunto do plano que consiste de
todos os pontos p cuja soma das distˆancias a f1 e f2 ´e igual a uma constante 2 a > 0,
maior do que a distˆancia entre os focos 2c ≥ 0.
No caso, em que f1 = (−c, 0), f2 = (c, 0) e p = (x, y) obtemos a equa¸c˜ao da
elipse: E : b2x2 + a2y2 = a2b2, onde b = √a2− c2. Neste caso a equa¸c˜ao ´e conhecida
como forma canˆonica da elipse de centro na origem e reta focal coincidente com o eixo x. Seja E a regi˜ao definida por:
E =(x, y) ∈ R2 b2x2+ a2y2− a2b2 ≤ 0 , (2.7) a qual tem como fronteira a elipse E , isto ´e: ∂E = E .
Para (x, y) ∈ ∂E, definimos as aplica¸c˜oes o : ∂E −→ R2 e r : ∂E −→ R por o(x, y) = 1 − b 2 a2 x, 0 (2.8) e r(x, y) = r x2 b 4 a4 + y 2. (2.9) c1 c2 (x, y) r(x, y) (x, y0) (u, v) o(x, y) E ∂E (u, v) (a, 0) = c3 c0 = (−a, 0) (0, b) (0, −b) Figura 2.3: Regi˜ao E.
Na figura 2.3 ´e poss´ıvel acompanhar graficamente as aplica¸c˜oes definidas em (2.8) e (2.9), onde a primeira representa o centro e a segundo o raio de um disco contido em E, como se observa na figura.
O seguinte lema ´e muito importante, pois ser´a utilizado para construir as equa¸c˜oes que descrevem um empacotamento esf´erico em E, isto ´e, para garantir as condi¸c˜oes sob as quais os discos est˜ao contidos na regi˜ao E.
Lema. 2.1.1. Seja (x, y) ∈ ∂E, ent˜ao 1. B[o(x, y), r(x, y)] ⊂ E,
2. o(x, y) = o(x0, y0) ⇒ x = x0, y = ±y0.
Demonstra¸c˜ao. Seja (u, v) ∈ B[o(x, y), r(x, y)] ent˜ao d((u, v), o(x, y)) ≤ r(x, y)
d((u, v), o(x, y))2 ≤ r(x, y)2 u − x " 1 − b a 2#!2 + v2 ≤ x2 b a 4 + y2, u2− 2ux " 1 − b a 2# + x2 " 1 − b a 2#2 + v2 ≤ x2 b a 4 + y2, u2 − 2ux " 1 − b a 2# + x2− 2x2 b a 2 + x2 b a 4 + v2 ≤ x2 b a 4 + y2, u2 − 2ux " 1 − b a 2# + x2− 2x2 b a 2 + v2 ≤ y2, u2− 2ux " 1 − b a 2# + x2− x2 b a 2 + v2 ≤ x2 b a 2 + y2, u2− 2ux " 1 − b a 2# + x2 " 1 − b a 2# + v2 ≤ b2, u2+ x2− 2ux " 1 − b a 2# + v2 ≤ b2, u2+ x2− 2ux " 1 − b a 2# + u2 " 1 − b a 2# − u2 " 1 − b a 2# + v2 ≤ b2, u2− u2 " 1 − b a 2# + x2− 2ux " 1 − b a 2# + u2 " 1 − b a 2# + v2 ≤ b2, u2 b a 2 + x2− 2ux + u2 " 1 − b a 2# + v2 ≤ b2, u2 b a 2 + (x − u)2 " 1 − b a 2# + v2 ≤ b2, u2 b a 2 + v2 ≤ b2,
finalmente
u2b2+ v2a2 ≤ a2b2.
Da´ı conclu´ımos que (u, v) ∈ E, isto ´e:
B[o(x, y), r(x, y)] ⊂ E.
Apresentamos agora uma fun¸c˜ao representa¸c˜ao para a elipse, em que cada ponto p da regi˜ao E ´e representado por trˆes n´umeros reais (x, y, s), onde (x, y) ∈ E e s ∈ [0, 1] ´
e um parˆametro que indica o grau de afastamento do ponto (x, y) `a fonteira ∂E. Seja a aplica¸c˜ao H : ∂E × [0, 1] −→ E definida por
H(x, y; s) = (σ(s) x, s y) , (2.10) onde σ(s) = 1 + (s − 1) b 2 a2 .
A aplica¸c˜ao H ´e uma representa¸c˜ao da regi˜ao E. De fato, pela defini¸c˜ao H ´e polinomial logo uma fun¸c˜ao cont´ınua, assim s´o falta mostrar que H ´e sobrejetora.
Seja (u, v) ∈ E. Temos que mostrar que existe (x0, y0, s0) ∈ ∂E × [0, 1] tal que
H(x0, y0, s0) = (u, v). Isto ´e, temos que resolver o sistema de equa¸c˜oes
σ(s) x = u, (2.11) s y = v, (2.12) x2 a2 + y2 b2 = 1, (2.13)
nas vari´aveis x, y e s.
Sem perda de generalidade, suporemos a > b.
Caso. 1. Suponhamos e v 6= 0 ent˜ao s 6= 0 e y 6= 0, da´ı substituindo as equa¸c˜oes (2.11),(2.12) em (2.13) obtemos (b u s)2+ (a v σ(s))2 = (a b s σ(s))2, (2.14) ou −b 2s2(a2+ b2(s − 1))2 a2 + v2(a2+ b2(s − 1))2 a2 + b 2s2u2 = 0. (2.15)
Resolver diretamente (2.15) ´e muito dif´ıcil pois ´e um polinˆomio de grau 4 em s. Usaremos o teorema de valor intermedi´ario para garantir que o sistema (2.11)-(2.13), tem pelo menos uma solu¸c˜ao.
Seja φ : [0, 1] −→ R, definida como
φ(s) = (b u s)2+ (a v σ(s))2− (a b s σ(s))2. (2.16) A aplica¸c˜ao φ ´e cont´ınua no seu dom´ınio e tem as seguintes propriedades
1. φ(0) = 1 − ba22 > 0,
2. φ(1) = (b u)2 + (a v) − (a b)2 ≤ 0.
pelo teorema do valor intermedi´ario conclu´ımos que existe s0 ∈ (0, 1] tal que φ(s0) = 0.
Para obter x, y basta substituir s por s0 nas equa¸c˜oes (2.11) e (2.12).
Caso. 2. Suponhamos que a (1 −ab22) ≤ u ≤ a e v = 0, isto ´e o ponto se localiza
no segmento [c2, c3] (ver figura 2.3). Ent˜ao o ponto (u, 0) pertence ao segmento de reta
que liga os pontos (a (1 − b2
a2), 0) e (a, 0), e H(a, 0, s) ´e uma curva que liga estes pontos,
logo existe s0 ∈ [0, 1]. Similarmente se c0 = −a ≤ u ≤ −a (1 − b
2
a2) = c1, neste caso basta
considerar H(−a, 0, s).
Caso. 3. Suponhamos −a (1 − ab22) ≤ u ≤ a (1 −
b2
a2) e v = 0, isto ´e o ponto se
localiza no segmento [c1, c2], (ver figura 2.3) ent˜ao −aσ(0) ≤ u ≤ aσ(0) se e somente se
−a ≤ u σ(0) ≤ a se e somente se u2 σ(0)2 ≤ a2, σ(0) x = u, (2.17) 0 y = 0, (2.18) x2 a2 + y2 b2 = 1. (2.19)
Substituindo (2.17) na equa¸c˜ao (2.19) obtemos
y2 = b 2 a2 a2− u 2 σ(0)2 . (2.20)
Por hip´otese a2 − u2
y. x0 = u σ(0), y0 = ± s b2 a2 a2− u 2 σ(0)2 , s0 = 0.
Na figura 2.4, ilustramos geometricamente que a distˆancia entre p ∈ E e ∂E pode ser calculada usando a representa¸c˜ao H, pois p = H(q, s) para algum (q, s) ∈ ∂E × [0, 1]. Observamos que a bola B[p, d(p, q)] ⊂ E e q ∈ ∂E, da´ı d(p, ∂E) = d(H(q, s), q), isto ´e, podemos descrever o ponto p em termos da fronteira de E mais um parˆametro adicional s, o qual permite calcular d(p, ∂E).
c1 c2 q o(q) r(q) E ∂E p
Figura 2.4: d(p, ∂E) = d(H(q, s), ∂E) = d(H(q, s), q).
Corol´ario. 2.1.1. Seja p ∈ E, ent˜ao existe (q, s) ∈ ∂E × [0, 1] tal que H(q, s) = p e d(p, q) = d(p, ∂E).
Demonstra¸c˜ao. Seja p ∈ E. Como a aplica¸c˜ao H ´e sobrejetora, ent˜ao existe (q, s) ∈ ∂E × [0, 1] tal que H(q, s) = p. Pelo lema 2.1.1 temos que B[o(q), r(q)] ⊂ E, da´ı pelo lema 1.2.1 temos que
o(q) ∈ E, d(o(q), ∂E) ≥ r(q).
Pela defini¸c˜ao de H, temos que p ´e um ponto no segmento de reta que liga os pontos q e o(q), isto ´e q, p, o(q) s˜ao colineares, logo
ent˜ao
B[p, d(p, q)] ⊂ B[o(q), r(q)] ⊂ E. Da´ı
B[p, d(p, q)] ⊂ E ⇐⇒ p ∈ E, d(p, ∂E) ≥ d(p, q), o ponto q ∈ ∂E portanto
d(p, q) = d(p, ∂E). (2.22)
Do corol´ario 2.1.1 podemos obter uma f´ormula para calcular a distˆancia de um ponto p ∈ E `a fronteira ∂E. Isto resolve o problema de empacotar discos de mesmo raio numa elipse.
O problema de empacotamento esf´erico pode ser descrito por um sistema finito de equa¸c˜oes n˜ao lineares, diferenci´aveis usando as novas coordenadas (x, y, s).
Na desigualdade
d(p, ∂E) ≥ r
usando a fun¸c˜ao de representa¸c˜ao H, substituimos p por H(q, s), isto ´e
d(H(q, s), ∂E) = d(H(q, s), q) (2.23)
e assim obtemos um m´etodo para calcular a distˆancia `a fronteira da regi˜ao E, a qual permite calcular o n´ucleo de E.
H(q, s) ∈ Kr(E)⇐⇒ q ∈ ∂E 0 ≤ s ≤ 1, d(q, H(q, s)) ≥ r. (2.24) Da´ı Ωk= (H(q1, s1), . . . , H(qk, sk)) ∈ Rk 3 q ∈ ∂E, d(H(qi, si), qi) ≥ r, d(H(qi, si), H(qj, sj)) ≥ 2 r, i 6= j 0 ≤ si ≤ 1, ∀i, j ∈ Ik = {1, ..., k}, . (2.25)
Para simplificar definimos o conjunto Ωk = H((xi, yi, si))kj ∈ R k 3 b2(xi)2+ a2(yi)2 = a2b2, (si − 1)2 h (xi)2 b a 4 + (yi)2i≥ r2, (σ(si)xi− σ(sj)xj)2+ (siyi− sjyj)2 ≥ (2 r)2 0 ≤ si ≤ 1, ∀i, j ∈ Ik = {1, ..., k}, σ(s) = 1 + (s − 1) ab2. . (2.26) Exemplo. 2.1.1. Seja r = 1, e E1 = (x, y) ∈ R2| x 2 25+ y2 9 ≤ 1 (2.27) Usando o solver algencan [ABMS07], calculamos o n´umero de empacotamento np obtendo
np ≈ 11. A configura¸c˜ao obtida ´e ilustrada na figura 2.5.
Figura 2.5: r = 1, np ≈ 11.
Para r = 12 e E1 calculamos o n´umero de empacotamento np obtendo np ≈ 47 e
a configura¸c˜ao obtida ´e ilustrada na figura 2.6. Para r = 1, e E2 = (x, y) ∈ R2| x 2 64+ y2 4 ≤ 1 (2.28) obtivemos np ≈ 11 com a seguinte configura¸c˜ao da figura 2.7.
Figura 2.6: r = 12, np ≈ 47.
Figura 2.7: r = 1, np ≈ 11.
2.1.2
Intersec¸
c˜
ao de Elipses
Consideremos o problema de empacotar discos num contˆeiner formado pela intersec¸c˜ao de duas ou mais elipses. Para resolver o problema podemos usar duas fun¸c˜oes auxiliares constru´ıdas sob o mesmo racioc´ınio da se¸c˜ao anterior.
Sejam E e F duas elipses centradas nos pontos pE e pF, com ˆangulo de rota¸c˜ao
θE e θF com respeito ao eixo x respectivamente, como se mostra na figura 2.8.
Para construir uma representa¸c˜ao, isto ´e, uma fun¸c˜ao auxiliar, definimos explici-tamente a aplica¸c˜ao T : R2 −→ R2 dada por:
T (p) = p0+ G(θ) p (2.29)
onde G ´e a matriz de rota¸c˜ao no sentido anti-hor´ario, definida por:
G(θ) = cos(θ) − sin(θ) sin(θ) cos(θ)
F pF R O θF = 0 E pE θE Figura 2.8: R = E ∩ F.
Suponhamos conhecida a equa¸c˜ao canˆonica E0 e F0 das elipse E e F , ent˜ao po-demos definir as representa¸c˜oes ¯HE : ∂E0 × [0, 1] −→ E e ¯HF : ∂F0× [0, 1] −→ F de E e
F respectivamente, dadas como ¯
HE(qE0, sE0) = pE0+ G(θE0)HE0(qE0, sE0), H¯F(qF0, sF0) = pF + G(θF0)HF0(qF0, sF0).
As aplica¸c˜oes ¯HE e ¯HF s˜ao sobrejetoras, pois T ´e uma aplica¸c˜ao bijetora e HE, HF ´e
sobrejetora.
Seja p ∈ E ∩ F, ent˜ao existem (qE0, sE0) ∈ ∂E0× [0, 1] e (qF0, sF0) ∈ ∂F0 × [0, 1]
tais que: ¯ HE(qE0, sE0) = p (2.31) e ¯ HF(qF0, sF0) = p. (2.32)
Ent˜ao, pelas equa¸c˜oes (2.31) e (2.32), obtemos a seguinte igualdade: ¯
HE(qE0, sE0) = ¯HF(qF0, sF0). (2.33)
A equa¸c˜ao (2.33) obriga o ponto p a ficar na interse¸c˜ao das elipses E e F , logo ser´a adicionada em nosso sistema de equa¸c˜oes que determinam o empacotamento na interse¸c˜ao.
Finalmente, descrevemos as equa¸c˜oes que determinam o empacotamento, neste caso um ponto p ´e descrito em fun¸c˜ao de quatro vari´aveis (qE0, sE0, qF0, sF0) :
Ωk = ( ¯HE(qEi0, sE0i))ki=1∈ Rk 2 qiE0 ∈ ∂E0, d( ¯HE(qiE0, sE0i), qi E0) ≥ r, d( ¯HE(qiE0, sE0i), ¯HE(qi E0, sE0i)) ≥ 2 r, 0 ≤ sE0i ≤ 1, qi F0 ∈ ∂F0, d( ¯HF(qFi0, sF0i), qi F0) ≥ r, 0 ≤ sF0i ≤ 1, ¯ HE(qiE0, sE0i) = ¯HF(qi F0, sF0i), ∀i, j ∈ Ik = {1, ..., k}, . (2.34)
Supondo que as equa¸c˜oes canˆonicas das elipses E e F sejam: E0 : x 2 a2 + y2 b2 ≤ 1, F 0 : x 2 c2 + y2 d2 ≤ 1, (2.35)
podemos reescrever o sistema (2.34) , onde a ≥ b e c ≥ d :
Ωk = H((xi, yi, si))kj b2(xiE0)2+ a2(yEi0)2 = a2b2, (sE0i− 1)2 h (xiE0)2 ba 4 + (yiE0)2 i ≥ r2, (σ(sE0i)xi E0 − σ(sE0j)xj E0)2+ (sE0iyi E0 − sE0jyj E0)2 ≥ (2 r)2 0 ≤ sE0i ≤ 1, d2(xiF0)2 + c2(yFi0)2 = d2c2, (sF0i− 1)2 h (xi F0)2 d c 4 + (yi F0)2 i ≥ r2, 0 ≤ sF0i ≤ 1, ∀i, j ∈ Ik= {1, ..., k}, σE0(sE0i)xi E0− σF0(sF0i)xi F0cos(θE0 − θF0)− sF0iyi
F0sin(θE0 − θF0) = cos(θE0)(y0
F) + sin(θE0)(y0 F), sE0iyi E0 − σF0(sF0i)xi F0sin(θE0 − θF0)− sF0iyi
F0cos(θE0 − θF0) = − sin(θE0)(y0
F) + cos(θE0)(y0 F), . (2.36) onde σE(s) = 1 + (s − 1) a b 2 e σF0(s) = 1 + (s − 1) d c 2 .
Exemplo. 2.1.2. Sejam as elipses E e F , centradas em pE = (3, 2) e pF = (3, 1) com
equa¸c˜oes canˆonicas E0 : x2
(√17)2 + y2 22 = 1 e F 0 : x2 52 + y2 22 = 1, e rota¸c˜ao θE = arctan14 e
θF = 0 respectivamente, logo as matrizes de rota¸c˜ao s˜ao:
GE(θE) = 4 √ 17 − 1 √ 17 1 √ 17 4 √ 17 ! , GF(θF) = 1 0 0 1 . (2.37)
A configura¸c˜ao para r = 12 ´e mostrada na figura 2.9.
Figura 2.9: r = 1
2, np ≈ 16.
Exemplo. 2.1.3. Sejam as elipses E e F , centradas em pE = (2,72) e pF = (3, 1) com
equa¸c˜oes canˆonicas E0 : x522 +
y2 12 = 1 e F 0 : x2 52 + y2 22 = 1, e rota¸c˜ao θE = π2 e θF = 0
respectivamente, neste caso o n´umero de empacotameno ´e aproximadamente np ≈ 9. A
configura¸c˜ao ´e mostrada na figura 2.10.
Usando as equa¸c˜oes (2.36), podemos empacotar discos de mesmo raio numa in-terse¸c˜ao de n elipses arbitr´arias. Mostramos isto no seguinte exemplo.
Exemplo. 2.1.4. Sejam as elipses E1, E2 e E3, centradas em pE1 = (0, 3), pE2 =
(−32,3 √ 3 2 ) e pE3 = (− 3 2, − 3√3
2 ) com equa¸c˜oes canˆonicas E 0 1 : x2 52 + y2 42 = 1 e E 0 2 : x2 52 + y2 32 = 1 e E30 : x622+ y2 32 = 1, e rota¸c˜ao θE1 = 0, θE2 = 2 π 3 e θE2 = 4 π
3 respectivamente. Da´ı o n´umero
de empacotamento ´e np ≈ 14, com a configura¸c˜ao da figura 2.11.
2.1.3
Par´
abola
Nesta subse¸c˜ao consideramos o problema de empacotamento esf´erico numa regi˜ao plana limitada inferiormente por uma par´abola , e limitada superiormente por uma reta.
Pri-Figura 2.10: r = 12, np ≈ 9.
Figura 2.11: r = 12, np ≈ 14.
meiro definimos formalmente uma par´abola.
Defini¸c˜ao. 2.1.2. Sejam l uma reta no plano e f um ponto no plano n˜ao pertencente a l. A par´abola, P, de diretriz l e foco f ´e o conjunto que consiste de todos pontos p do plano que s˜ao equidistantes do ponto f e da reta l.
P = p ∈ R2 | d(p, f ) = d(p, l) . (2.38)
O n´umero 2 ρ = d(f, l) ´e o parˆametro da par´abola. A forma canˆonica da par´abola em rela¸c˜ao ao sistema de coordenadas oxy ´e a equa¸c˜ao
e o contˆeiner ser´a descrito por: R = (x, y) ∈ R2 4 ρ y ≥ x2, xa + by ≤ c . (2.39)
Para resolver o problema do empacotamento esf´erico definimos o conjunto auxiliar P = {(x, y) ∈ R2| 4 ρ y ≤ x2},
cuja fronteira ´e uma par´abola, e aplica¸c˜ao o : ∂P −→ R2 definida como:
o(x, y) = (0, y + 2 ρ). P x y o(q) P : 4 ρ y≥ x2 ax + by = c R ∂R q p (u, v) Figura 2.12: R descrita em (2.39)
Na figura 2.12 observa-se que o disco centrado em o(q) e raio d(q, o(q)) est´a contido no conjunto P e intercepta ´a fronteira no ponto q. Isto mostra que a distˆancia entre o(q) e ∂P ´e exatamente d(q, o(q)). Um disco com centro p no segmento qo(q) e raio menor que d(q, p) est´a contido no conjunto P. Mais formalmente temos:
Lema. 2.1.2. Seja q ∈ ∂P ent˜ao 1. B[o(q), d(q, o(q))] ⊂ P.
2. Se o(x, y) = o(x0, y0) ent˜ao y = y0 e x = ±x0.
Demonstra¸c˜ao. Sejam q = (x, y) e (u, v) ∈ B[o(q), d(q, o(q))], ent˜ao d((u, v), o(q)) ≤ d(q, o(q))
se e somente se
d((u, v), o(q))2 ≤ d(q, o(q))2,
u2+ (v − (y + 2ρ))2 ≤ x2+ (y − (y + 2p))2, u2+ v2− 2v(y + 2ρ) + (y + 2ρ)2 ≤ x2+ (2ρ)2,
u2+ v2− 2v(y + 2ρ) + y2+ 4ρy + (2ρ)2 ≤ x2+ (2ρ)2.
Como q ∈ ∂P ent˜ao 4ρy = x2, e assim
u2+ v2− 2vy − 4vρ + y2 ≤ 0
u2− 4vρ + (v2− 2vy + y2) ≤ 0 u2 − 4vρ + (v − y)2 ≤ 0
u2− 4vρ ≤ 0, (2.40)
pois (v − y)2 ≥ 0. Finalmente a desigualdade (2.40) mostra que B[o(q), d(q, o(q))] ⊂ P.
Gostar´ıamos de ter um sistema de coordenadas, pelo menos do contˆeiner, que nos permitisse o c´alculo da distˆancia de um ponto p `a fronteira ∂P, para determinar se um disco est´a nele ou n˜ao. Usando o lema 2.1.2, isto ´e poss´ıvel, pois dado um ponto p ∈ P este pode ser escrito em fun¸c˜ao de trˆes parˆametros (x, y, s) onde (x, y) ∈ ∂P e s ∈ [0, 1].
Seja
H : ∂P × [0, 1] −→ P, (2.41)
definida como
A aplica¸c˜ao H ´e uma representa¸c˜ao do conjunto P. De fato H ´e uma aplica¸c˜ao cont´ınua e ´e sobrejetora.
Seja (u, v) ∈ P. Mostremos que existe (x0, y0, s0) ∈ ∂P×[0, 1] tal que H(x0, y0, s0) =
(u, v). Isto ´e equivalente a resolver o sistema:
s x = u, (2.43) y + 2 ρ (1 − s) = v, (2.44) x2 = 4 ρ y. (2.45) A equa¸c˜ao (2.43) ´e equivalente a s2x2 = u2. (2.46) Substituindo (2.45) em (2.46) obtemos s24 ρ y = u2, (2.47)
isolando y da equa¸c˜ao (2.44) e substituindo em (2.47) obtemos
s24 ρ (v − 2 ρ (1 − s)) = u2. (2.48)
Novamente para mostrar que existe um n´umero real no intervalo [0, 1], fazemos uso do teorema do valor intermedi´ario.
Seja a fun¸c˜ao auxiliar φ : [0, 1] −→ R definida como
φ(s) = s24 ρ (v − 2 ρ (1 − s)) − u2, (2.49)
a fun¸c˜ao φ ´e cont´ınua e satisfaz: 1. φ(0) = −u2 ≤ 0,
2. φ(1) = 4 ρ v − u2 ≥ 0,
pois, por hip´otese (u, v) ∈ P. Logo conclu´ımos pelo teorema de valor intermedi´ario que existe s0 ∈ [0, 1] tal que φ(s0) = 0. Obtido o valor de s substitu´ımos em (2.43),(2.44) ou
(2.45) para calcular os valores de x0 e y0.
Corol´ario. 2.1.2. Seja p ∈ P, ent˜ao existe (q, s) ∈ ∂P × [0, 1] tal que H(q, s) = p e d(p, q) = d(p, ∂P).
Demonstra¸c˜ao. Seja p ∈ P, como a aplica¸c˜ao H ´e sobrejetora temos que existe (q, s) ∈ ∂P × [0, 1] tal que H(q, s) = p. Pelo lema 2.1.2 temos que B[o(q), r(q)] ⊂ P, onde r(q) = d(q, o(q)). Da´ı pela lema 1.2.1 temos que
o(q) ∈ P d(o(q), ∂P) ≥ r(q).
Pela defini¸c˜ao de H, p ´e um ponto no segmento de reta que liga os pontos q e o(q), isto ´e q, p, o(q) s˜ao colineares, assim
d(o(q), p) + d(p, q) = r(q), (2.50) ent˜ao B[p, d(p, q)] ⊂ B[o(q), r(q)] ⊂ P, da´ı B[p, d(p, q)] ⊂ P ⇐⇒ p ∈ P, d(p, ∂) ≥ d(p, q). O ponto q ∈ ∂P ent˜ao d(p, q) = d(p, ∂P). (2.51)
O corol´ario 2.1.2 proporciona um m´etodo para calcular a distˆancia de um ponto p = H(H(q, s)) `a fronteira do conjunto P, o qual resolve o problema de empacotamento esf´erico:
d(H(q, s), ∂P) = d(H(q, s), q). (2.52)
Nossa regi˜ao R tem fronteira formada por uma parte de ∂P e a reta L : ax+by = c. Suponhamos r > 0, ent˜ao o ponto p ∈ Kr(R) se e s´o se d(p, ∂P) ≥ r e d(p, L) ≥ r. O
ponto p na nova representa¸c˜ao ´e descrito por p(q, s) = H(q, s), um ponto q ∈ ∂P e um parˆametro s. Da´ı H(q, s) ∈ Kr(R) ⇐⇒ q ∈ ∂P, 0 ≤ s ≤ 1, d(q, H(q, s)) ≥ r, hH(q, s), (a, b)i ≤ c − r√a2+ b2. (2.53)
Logo podemos escrever as equa¸c˜oes que caracterizam um empacotamento de np
discos na regi˜ao R usando a equivalˆencia (2.53):
Ωk = (H(xi, yi; si))ki (xi)2 = 4 ρ yi, a sixi+ (yi+ 2 ρ (1 − si)) b ≤ c − r √ a2+ b2, r2 ≤ (1 − si)2((xi)2+ (2 ρ)2), (2 r)2 ≤ [(sixi− sjxj)2+ (yi− yj+ 2 ρ (sj − si))2], i < j 0 ≤ si ≤ 1. ∀i, j ∈ Ik = {1, . . . , k} . (2.54) O conjunto Ωkdescrito em (2.54) determina um empacotamento de k discos em R.
Para encontrar o n´umero m´aximo de discos em R determinamos a sequˆencia de conjuntos Ωk para k = 1, . . . at´e encontrar Ωk = ∅.
Exemplo. 2.1.5. Sejam ρ = 14 e a = 1, b = 0 e c = 7, ent˜ao, resolvendo o sistema (2.54) para k = 1, . . . podemos calcular o n´umero de empacotamento np para a regi˜ao R.
Primeiro para r = 1 o n´umero de empacotamento ´e np ≈ 4, (ver figura 2.13) e para r = 12
o n´umero de empacotamento ´e np ≈ 22 (ver figura 2.14).
R = (x, y) ∈ R2 y ≥ x2, y ≤ 7 (2.55) P : y ≥ x2 y = 7 Figura 2.13: r = 1, np ≈ 4 P : y ≥ x2 y = 7 Figura 2.14: r = 12, np ≈ 22
Exemplo. 2.1.6. O contˆeiner n˜ao necessariamente tem que ser convexo, no seguinte exemplo a regi˜ao R ´e n˜ao convexa, neste exemplo a parte superior da regi˜ao ´e parte de uma circunferˆencia. No cap´ıtulo 1 mostramos que ´e f´acil calcular a distˆancia de um ponto a uma curva esf´erica ou reta. Seja a regi˜ao R dada por:
R = (x, y) ∈ R2 y ≥ x2, y ≤ 9, x2+ y2 ≥ 9 . (2.56)
Para r = 12 o n´umero de empacotamento ´e np ≈ 19, ver figura 2.15.
P : y ≥ x2
Figura 2.15: r = 12, np ≈ 19.
2.2
No espa¸
co R
3Nesta se¸c˜ao nosso objetivo ´e resolver o problema de empacotamento esf´erico num contˆ ei-ner tridimensional R, n˜ao necessariamente poliedral ou esf´erico, isto ´e, dadas k esferas gostar´ıamos de saber se ´e poss´ıvel empacotar em R as k esferas.
Seja R uma regi˜ao em R3 definida por uma fun¸c˜ao g : R3 −→ R, diferenci´avel,
isto ´e:
R = {q ∈ R3 | g(q) ≤ 0}.
Suponhamos que a bola B[p, r] est´a contida em R, e intercepta ∂R pelo menos num ponto q0, ent˜ao q0 ´e uma solu¸c˜ao para o problema,
min
Da´ı o vetor gradiente ∇g(q0) ´e perpendicular `a superf´ıcie ∂R, e paralelo ao vetor q0 − p.
Logo ´e razo´avel construir um sistema de coordenadas em R, onde seja poss´ıvel aproximar sua fronteira transversalmente e onde seja f´acil calcular a distˆancia do ponto p `a fronteira.
2.2.1
Cone
Um cone ´e um s´olido geom´etrico formado por todos os segmentos de reta que tˆem uma extremidade em um ponto V (v´ertice) em comum e a outra extremidade em um ponto qualquer de uma mesma regi˜ao plana Π (delimitada por uma curva suave, a base).
Consideremos R = (x, y) ∈ R2 α2x2+ α2y2 ≤ β2z2, a x + b y + c z ≤ d, a0x + b0y + c0z ≥ d0, . (2.57)
O problema de empacotamento esf´erico em R pode ser resolvido usando dois m´etodos: calculando explicitamente o n´ucleo de R, ou construindo um sistema de coor-denadas onde seja f´acil calcular a distˆancia de um ponto do s´olido `a fronteira dele.
Definimos o conjunto auxiliar
C =(x, y, z) ∈ R3 | α2x2+ α2y2 ≤ β2z2 . (2.58)
Seja a aplica¸c˜ao o : ∂C −→ R3 definida como
o(x, y, z) = (0, 0, z γ) (2.59)
onde γ =1 + βα2.
Seja r : ∂C −→ R definida por
r(x, y, z) =pη (η + 1) |z|, (2.60)
onde η = βα22.
As ideias geom´etricas para construir uma parametriza¸c˜ao na qual seja f´acil cal-cular o n´ucleo de R s˜ao similares aos casos anteriores: elipse e par´abola.
O lema seguinte ´e muito importante, pois ´e muito ´util para obter uma f´ormula para calcular a distˆancia de um ponto do s´olido `a fronteira.
Lema. 2.2.1. Seja q ∈ ∂C, ent˜ao
B[o(q), r(q)] ⊂ C. Demonstra¸c˜ao. Seja p = (u, v, w) ∈ B[o(q), r(q)], ent˜ao
d(p, o(q))2 ≤ r(q)2, (2.61)
u2+ v2+ (w − zγ)2) ≤ η (η + 1) |z|2, u2+ v2+ (w − z(1 + η))2) ≤ η |z|2+ η2|z|2,
u2+ v2+ (w − z)2 − 2wηz + 2 z2η + (η z)2 ≤ η |z|2+ η2|z|2,
como (w − z)2 ≥ 0, e simplificando obtemos
u2+ v2− 2wηz + z2η ≤ 0, u2+ v2+ w2η − 2wηz + z2η ≤ w2η,
u2+ v2+ (w − z)2− w2η ≤ 0,
finalmente como (w − z)2 ≥ 0, ent˜ao
u2+ v2− w2η ≤ 0, se, e s´o se, α2u2+ α2v2− β2w2 ≤ 0, pois η = αβ. Definimos H : ∂C × [0, 1] −→ C por H(x, y, z, s) = (s x, s y, z (γ + s (1 − γ))). (2.62)
A aplica¸c˜ao H ´e cont´ınua, e afirmamos que H ´e uma representa¸c˜ao do conjunto C de-finido em (2.58) pois ´e sobrejetora, De fato; seja (u, v, w) ∈ C. Mostremos que existe (x0, y0, z0, s0) ∈ ∂C × [0, 1] tal que H(x0, y0, z0, s0) = (u, v, w). Isto ´e equivalente a
mos-trar que o sistema a seguir sempre tem pelo menos uma solu¸c˜ao
s x = u, (2.63)
s y = v, (2.64)
(γ + s (1 − γ)) z = w, (2.65)
Multiplicando a equa¸c˜ao (2.66) por s2 obtemos
α2(x s)2+ α2(y s)2 = β2(zs)2. (2.67)
Substituindo as equa¸c˜oes (2.63), (2.64) na equa¸c˜ao (2.67) obtemos
α2u2+ α2v2 = β2z2s2. (2.68)
Multiplicando a equa¸c˜ao (2.68) por (γ + s (1 − γ))2 temos
(γ + s (1 − γ))2(α2u2+ α2v2) = β2((γ + s (1 − γ)) z)2s2. (2.69) Usando a equa¸c˜ao (2.65) na equa¸c˜ao (2.69), obtemos um polinˆomio em s,
(γ + s (1 − γ))2(α2u2+ α2v2) = β2w2s2. (2.70) Mostremos que existe um n´umero real s no intervalo [0, 1] que satisfa¸ca a equa¸c˜ao (2.70). A existˆencia de s ´e garantida pelo teorema do valor intermedi´ario, da seguinte forma:
Seja φ : [0, 1] −→ R definida como
φ(s) = (γ + s (1 − γ))2(α2u2+ α2v2) − β2w2s2. (2.71) A fun¸c˜ao φ ´e cont´ınua no seu dom´ınio e satisfaz:
1. φ(0) = γ2(α2x2+ α2y2) ≥ 0,
2. φ(1) = α2u2+ α2v2− w2β2 ≤ 0, pois (u, v, w) ∈ C.
Pelo teorema do valor intermedi´ario conclu´ımos que existe s0 ∈ [0, 1] tal que φ(s0) = 0.
Note que ξ(s) = γ + s (1 − γ) 6= 0 para todo s ∈ [0, 1], pois ξ(s) ´e uma fun¸c˜ao decrescente, e ξ(0) = γ ≥ ξ(1) = 1. Se s = 0 ent˜ao 0 = u, 0 = v e z = ξ(0)w . Se s 6= 0 ent˜ao s = s0, x0 = u s0 , y0 = v s0 , z0 = w (γ + s (1 − γ)). Logo a fun¸c˜ao H ´e sobrejetora.
Usando a representa¸c˜ao H podemos obter uma f´ormula para calcular a distˆancia de um ponto p ∈ C `a fronteira ∂C.