On Thu, Jan 22, 2004 at 05:17:20PM -0200, [EMAIL PROTECTED] wrote:
>    Ontem a noite estava raciocinando sobre o problema citado, isto 
> é, dados n pontos no plano, p1=(x1,y1),p2=(x2,y2),...,pn=(x3,y3) 
>  achar um ponto p cuja soma das distâncias aos 
> pontos dados seja mínima. 
> 
>    Comecei a tentar uma solucão da seguinte forma: 
> 
>     Podemos sem perda de generalidade, 
> considerar que todas as distâncias consideradas são >= 1 
> (Porque se forem menores que 1 podemos aplicar 
> uma homotetia na figura e obter uma figura semelhante e após achar 
> p=(x,y) aplicar a homotetia inversa). 
>     Neste caso, seja d1 a distancia de p a p1, d2 a distancia de p a p2 
> e assim por diante.  A questão que  coloco é: 
> 
>     Temos que minimizar a funcão d(x,y) = 
> d1+d2+...+dn.  Como as distâncias são 
> todas maiores que 1 minimizar d seria equivalente a minimizar 
> d*d = d1*d1 + d2*d2 +...+dn*dn ? 

Não é equivalente. Como você verificou abaixo o ponto que minimiza
a soma dos quadrados das distâncias é o baricentro, que não tem
muito a ver com o ponto pedido. Se você quer um exemplo que deixe isto
totalmente claro tome p1 = (0,0), p2 = (8,0), p3 = (10,0).
Defina f1(x,y) = d((x,y),p1) + d((x,y),p2) + d((x,y),p3) e
f2(x,y) = d^2(...) + d^2(...) + d^2(...).
Depois de algumas simplificações você pode escrever
f2(x,y) = 3(x-6)^2 + 3y^2 + 56
que obviamente assume seu valor mínimo em (6,0).
f2(6,0) = 6^2 + 2^2 + 4^2 = 56 > f2(8,0) = 8^2 + 0^2 + 2^2 = 68 mas
f1(6,0) = 6 + 2 + 4 = 12 > f1(8,0) = 8 + 0 + 2 = 10.

> (estou no linux e não consigo o acento circunflexo..) 

Não sei em que o linux pode atrapalhar em escrever ^.
Você usa xmodmap? Mas podemos discutir isto fora da lista...

[]s, N.
=========================================================================
Instruções para entrar na lista, sair da lista e usar a lista em
http://www.mat.puc-rio.br/~nicolau/olimp/obm-l.html
=========================================================================

Responder a