Newsgroup: it.hobby.enigmi
Titolo: 9 cerchi con tre segmenti

Prendo lo spunto dal quesito posto da Franzi:
Dati 9 cerchi di raggio R, con i centri disposti secondo una maglia quadrata
di lato L, (L>2*R) si puo' costruire una spezzata di tre segmenti che tocchi
ciascuna circonferenza in almeno un punto.
 o  o  o
 o  o  o
 o  o  o
Come deve essere questa spezzata perche' la sua lunghezza sia la minima
possibile?
E nel caso particolare L=2*R (cerchi tangenti tra loro)?
ciao
Paolo


wrote:


La lunghezza totale sara' dunque in questo caso 5*L.
Per il caso generale credo che la tua soluzione vada bene (anch'io avevo
trovato questo risultato).
Per il caso particolare L=2*R si puo' fare di meglio.
Riprova, dovresti arrivare a meno di  4,5*L.
ciao
Paolo

E nel caso particolare L=2*R (cerchi tangenti tra loro)?
( 6 + sqrt(10) )*R ?
ciao
MF

( 6 + sqrt(10) )*R ?
=9,16...
un po' meglio della soluzione di Domenico (10*R), ma si puo' migliorare
ancora
provate a spostare il secondo segmento (si puo' arrivare a meno di 9*R)
ciao
paolo

Riprova, dovresti arrivare a meno di  4,5*L.
Sono sceso ancora un po'. Mi viene poco meno di 8.8*R.
Numeriamo i dischi cosi':
123
456
789
Indico con X-Y il punto di contatto fra i dischi X e Y.
Unisco 6-9 con 4-7. Poi unisco 4-7 con una delle intersezioni fra il disco 1
e la diagonale maggiore del quadrato (l'intersezione piu' interna). Poi
unisco questo punto a 2-3.
In totale viene ( 4 +sqrt( 10 - 3*sqrt(2) ) )*R = R*8.798..
ciao
MF

Paolo
Hai ragione (forse per il caso particolare ho scelto la piu' semplice,
ma di certo non la migliore). La soluzione che ho trovato e' un po'
complessa da spiegare e, se devo essere sincero, e' anche un po'
imprecisa (non so se ci sono modi piu' semplici di calcolarla, ma a me
viene una equazione di sesto grado e, andando per approssimazioni, ho
trovato una soluzione sicuramente inferiore a 4.39*L). Cerchero' di
spiegare la disposizione dei segmenti (per comodita' numero i cerchi
nel seguente modo:  1) il cerchio in alto a sinistra, 2) il cerchio in
alto al centro......., 9) il cerchio in basso a destra) : il primo
segmento ha come estremi il punto di tangenza tra i cerchi 1 e 4 e
quello di tangenza tra i cerchi 3 e 6; il secondo segmento ha come
estremi il punto di tangenza tra i cerchi 3 e 6 e un punto X (da
trovare) della parte in alto a sinista del cerchio 9; il terzo
segmento ha come estremi il punto X e il punto dato dall'intersezione
di una retta passante per il centro del cerchio 7 e per X con il
cerchio 7. Il problema e' adesso trovare X sul cerchio 9 in modo che
la somma dei segmenti 2 e 3 sia minima, e, come ho gia' detto, a me
viene una equazione di sesto grado (sempre che non abbia sbagliato i
calcoli). In pratica risolvendo : 64*y^6-265*y^4+144*y^3-122*y^2+16=0,
ponendo poi z=2*arctan(y), ho che la somma dei segmenti 2 e 3 e' :
L/2*( (10-6*cos(z))^(1/2)+(17-8*sin(z))^(1/2)-1) (z in pratica e'
l'angolo minimo formato dal raggio congiungente il centro del cerchio
9 con X e da una retta verticale passante per il centro del cerchio
9).  

In totale viene ( 4 +sqrt( 10 - 3*sqrt(2) ) )*R = R*8.798..
Quasi ottimo!
Avevo trovato R*8.773...
ma partendo dalla tua soluzione si puo' migliorare ancora
Si deve modificare un po' il terzo segmento:
unire il punto finale del secondo segmento al centro del cerchio 3 e
quindi sottrarre l'ultimo tratto uguale al raggio.
La lunghezza della spezzata dovrebe risultare R*8.767...
Credo che si possa generalizzare in questo modo:
dato per buono il primo lato (6-9 4-7)
il secondo lato unisce 4-7 con un punto generico della circonferenza 1
il terzo lato unisce questo punto con il centro di 3.
Determinare il punto generico della circonferenza 1 che minimizza il tutto.
In pratica, detto A il punto di unione 4-7, e B il centro di 3
costruire un triangolo con due vertici fissi A e B, ed un vertice variabile
X che si trova sulla circonferenza 1, e determinare la posizione di X che
minimizza il perimetro.
In un primo tentativo avevo ricavato X mandando da A la tangente al cerchio
1, e trovavo una spezzata R*8.903...
poi ho trovato una soluzione migliore minimizzando l'altezza del triangolo
rispetto alla base AB, cioe' trovando X sulla tangente ad 1 parallela ad AB.
e la spezzata risultava R*8.773...
Vedo che per il momento la tua soluzione per il punto X migliora le cose.
(evidentemente le tangenti non sono sempre convenienti :-)
Chissa' se questa e' la soluzione ottima in assoluto?
ciao
paolo

Per  z=0.7452778658 (poco piu' di 42.7 gradi) si ha che la somma dei
segmenti 2 e 3 e' 2.3833*L e quindi la somma totale sara'
4.3833*L=8.7666*R.

la somma totale sara' 4.3833*L=8.7666*R.
Ottimo!
Non ho capito bene come hai ricavato l'equazione, ... ma funziona. (Ho
verificato graficamente).
Per il momento e' la soluzione migliore, credo anche che sia l'ottima.
Se vuoi, prova con le varianti che propongo in un altro messaggio.
ciao
paolo