
| Un giardino da innaffiare Un giardino rettangolare di dimensioni 100m x 150m, deve essere irrigato con degli irrigatori a pioggia. Ciascun irrigatore innaffia una regione circolare di 10m di raggio. Qual è il minimo numero di irrigatori necessario per innaffiare direttamente ogni punto del giardino?
|
soluzione soluzione Pasquale Salemme Siano x e y due assi cartesiani rispettivamente lungo la dimensione corta (100 m) e lungo la dimensione lunga (150 m) del rettangolo. Per una copertura completa del giardino si può far riferimento alla figura geometrica elementare dell'esagono regolare, ripetendo la quale si può coprire il rettangolo giardino in modo uniforme a forma di tassellatura come la pavimentazione di una stanza con mattonelle esagonali. Con questa tipo di copertura si viene a ridurre al minimo le zone di sovrapposizione dei cerchi descritti dagli irrigatori. La superficie del giardino viene suddivisa in poligoni regolari esagonali di lato 10 m, contigui, incastrati fra di loro a reticolo. Nel file allegato excel (foglio 1) :Gioco_15 nelle colonne B e C sono riportati le coordinate dei centri dei cerchi circoscritti agli esagoni regolari di raggio 10 metri. Per coprire la superficie del giardino rettangolare di dimensioni 100x150 metri sono necessari 66 esagoni, nei cui centri si posizionano 66 irrigatori.
Dal suddetto file excel (grafici 1, 2, 3) si osserva: Nel grafico 1: sono riportati in scala le posizioni dei 66 irrigatori. Si nota che gli ultimi 3 irrigatori (n. 64-65-66) sono posizionati fuori del rettangolo per coprire solo una piccola zona all´interno del rettangolo.
Nel grafico 2: viene evidenziata la parte del rettangolo differenza tra l´intero rettangolo e la zona coperta dei primi 59 irrigatori. Questa zona dovrebbe essere coperta dagli ultimi 7 irrigatori (dal n. 60 al n. 66). Con opportuni calcoli eseguiti nel foglio 1 del file excel (colonne E e F in colore rosso) si sono calcolate le coordinate della posizione di 6 irrigatori tali da coprire la zona di giardino suddetta riducendo da 7 a 6 il numero di irrigatori necessari, per un totale di 65 irrigatori.
Nel grafico 3: Sono stati evidenziati tutti i 65 irrigatori in particolare gli ultimi 6, numerati da 60 a 65. Inoltre, dando nelle caselle H1 e I1 del foglio 1, le coordinate x , y di un punto qualsiasi appartenente al rettangolo, si può leggere nella colonna J le distanze di tale punto da tutti i centri e in colonna L, in corrispondenza del SI della colonna K, a quale o a quali cerchi il punto considerato appartiene. Brioschi Marco Attilio Come si può vedere nel file Excel allegato , foglio "Sovrapposizione", ho cercato innanzitutto di posizionare gli irrigatori in maniera che non vengano lasciati spazi non bagnati, quindi con le circonferenze di cerchi contigui tangenti in un unico punto, che ho chiamato nel file Excel P.
La configurazione che minimizza la sovrapposizione delle aree e quindi consente localmente di ottimizzare il numero di irrigatori e' quella per cui i centri si trovano a distanza RAD (3)*R gli uni dagli altri, cioe' a 17.32m di distanza. Con tale valore infatti un'area pari a 54.352 m2 (il 5.7669 % del totale delle aree dei 3 cerchi) e' bagnata da piu' di un irrigatore, mentre con distanze minori o maggiori tra i centri, si ottiene una percentuale maggiore.
Questa geometria localmente ottimale, sarebbe quella da utilizzare nel caso l'area da bagnare fosse di grandi dimensioni (in teoria infinita), perche' lo spazio risparmiato minimizzando le sovrapposizioni localmente porterebbe sicuramente a minimizzare anche il numero degli irrigatori.
Tuttavia avendo l'area del giardino dimensioni finite, 100m x 150m, puo' darsi che configurazioni meno ottimizzate localmente, lo siano invece globalmente.
La minima configurazione si trova infatti con il disegno allegato nel file Excel, foglio "Soluzione", utilizzando 65 irrigatori i cui centri sono distanziati in verticale di 16.67m (cioe' 100m/6) ed in orizzontale di 15.53m. Gli irrigatori sono allineati in senso verticale e formano 5 file di 6 irrigatori e 5 file di 7 irrigatori. Fuortes Antonio rettangolo di base 150 m e altezza 100 m; raggio irrigazione 10 m disposizione suggerita: (non riesco a inverntarne una migliore) .....o.......o.......o.......o.......o. .o.......o.......o.......o.......o..... .....o.......o.......o.......o.......o. .o.......o.......o.......o.......o..... .....o.......o.......o.......o.......o. .o.......o.......o.......o.......o..... .....o.......o.......o.......o.......o. .o.......o.......o.......o.......o..... .....o.......o.......o.......o.......o. .o.......o.......o.......o.......o..... .....o.......o.......o.......o.......o. .o.......o.......o.......o.......o..... .....o.......o.......o.......o.......o. una delle possibili soluzioni, ecco come disegnarla in Basic : r=10 ' raggio di irrigazione xColo1=.543*r ' ascissa della prima col. dx=1.546*r ' passo tra le colonne maxColo=10 ' numero delle colonne yRiga1=-0.04*r ' ordin. della prima riga dy=.834*r ' passo tra le righe maxRiga=13 ' numero delle righe
' ascisse delle col.=xColo1, xColo1+dx, ' xColo1+2*dx, ..., xColo1+(maxColo-1)*dx ' ordinate delle righe=yRiga1, yRiga1+dy, ' yRiga1+2*dy, ..., yRiga1+(maxRiga-1)*dy screen 12: cls ' clear screen window (-20,-20)-(170,120) ' 20 ai margini line (0,0)-(150,100),,B ' box del campo nUgelli=0 for Riga = 1 to maxRiga yc=yRiga1+(Riga-1)*dy ' y del centro for Colo = 1 to maxColo xc=xColo1+(Colo-1)*dx ' x del centro if (Riga+Colo) mod 2=1 then ' sulle righe dispari circle (xc, yc), r ' i cerchi hanno centro nUgelli=nUgelli+1 ' solo sulle col. pari, end if ' e viceversa. next Colo next Riga print "n=";nUgelli ' il numero totale di ugelli è 65.
arrivo a questo risultato in 3 fasi.
FASE 1: copro il piano con una rete di triangoli equil. di base orizz. e lato sqr(3)*10 m, con un irrigatore in ogni nodo (i cerchi si toccano nel baric. di ogni triangolo); noto che n righe di irrigatori coprono una fascia di 2*0.5*r+(n-1)*1.5*r di altezza; quindi con 7 righe posso coprire esattamente l'altezza del campo, ponendo i centri della prima riga a 5 m dal bordo inf. del campo, poi a 20, 35, 50, 65, 80, 95 m noto poi che n col. coprono una fascia di (n-1)*r*sqr(3)/2 di larghezza; quindi con 19 col. posso coprire con buon margine la larghezza del campo, (fino a 155.88 m), ponendo i centri della prima col. (solo sulle righe 2, 4, 6) sul bordo sin. del campo, poi, seconda col., (solo sulle righe 1, 3, 5, 7) a 8.66 m dal bordo sin., etc, alternando le col. pari e dispari. ecco come disegnarlo in Basic: r=10 ' raggio di irrigazione xColo1=0 ' ascissa della prima col. dx=.866*r ' passo tra le colonne maxColo=19 ' numero delle colonne yRiga1=.5*r ' ordin. della prima riga dy=1.5*r ' passo tra le righe maxRiga=7 ' numero delle righe
... stesso programma come sopra si vede che il numero totale di ugelli è 66, dato che le 7 righe si realizzano in 2 col. adiacenti.
FASE 2: tento ora la copertura del piano con una rete di triangoli equil. identici ai preced., ma con un lato vert.; noto che n col. di irrigatori coprono una fascia di 2*0.5*r+(n-1)*1.5*r di larghezza; quindi con 11 col. posso coprire abbondantemente la larghezza del campo (fino a 160 m), ponendo i centri della prima col. a 5 m dal bordo sin. del campo, poi a 20, 35, 50, 65, 80, 95, 110, 125, 140, 155 m noto poi che n righe coprono una fascia di (n-1)*r*sqr(3)/2 di altezza; quindi con 13 righe posso coprire con buon margine l'altezza del campo, (fino a 103.92 m), ponendo i centri della prima riga (solo sulle col. 2, 4, 6, 8, 10) sul bordo inf. del campo, poi, seconda riga, (solo sulle col. 1, 3, 5, 7, 9, 11) a 8.66 m dal bordo inf., etc, alternando le righe pari e dispari. ecco come disegnarlo in Basic: r=10 ' raggio di irrigazione xColo1=.5*r ' ascissa della prima col. dx=1.5*r ' passo tra le colonne maxColo=11 ' numero delle colonne yRiga1=0 ' ordin. della prima riga dy=.866*r ' passo tra le righe maxRiga=13 ' numero delle righe
... stesso programma come sopra (anche qui sulle righe dispari i cerchi hanno centro solo sulle col. pari, e viceversa). il numero totale di ugelli è 71, peggiorando la situazione.
FASE 3: deformo ora gradualmente la rete di triangoli che diventano isosceli: ne accorcio la base (vert.) e ne allungo l'altezza (orizz.); le fasce orizz. si stringono, il margine di copertura in altezza diminuisce, ma aumenta quello in larghezza, fino a "cacciar fuori" dal campo, rendendola inutile, la col. di destra. ciò avviene quando la lungh. della base vert. dei triangoli scende tra 2*8.381 e 2*8,333 m il programma e il disegno sono quelli in testa.
Ercole Suppa Scarica il file
Powered by AkoComment Tweaked Special Edition v.1.4.6 AkoComment © Copyright 2004 by Arthur Konze - www.mamboportal.com All right reserved |