Efficienza di pacchettizzazione
di
Diego Alberto
Il problema che segue tratta l’efficienza di copertura di una superficie circolare:
Fissato il diametro di una circonferenza ci si potrebbe chiedere qual è la percentuale di superficie coperta da tutte le altre circonferenze (uguali) introducibili di diametro strettamente inferiore a quello della prima circonferenza e definibile dall’utente.
L’applicazione più ovvia è quella di massimizzare il numero di cavi all’interno di un macro-cavo, o in maniera più goliardica il numero di teglie di pizza in un forno circolare.
È ovvio che fissato il diametro e l’algoritmo di allocazione si ricava, con un opportuno programma, il numero massimo di circonferenze introducibili nella ‘macro-circonferenza’ e, semplicemente moltiplicando per la superficie della singola, la superficie totale ricoperta.
Facendo il rapporto tra questa superficie e quella totale (ovvero quella della macro-circonferenza) si ottiene l’efficienza di copertura.
La scelta dell’algoritmo di allocazione
Il problema a questo punto è scegliere l’algoritmo di allocazione:
- Disporre le circonferenze a partire dal bordo interno della macro-circonferenza.
- Disporre le circonferenze a partire dal centro della macro-circonferenza.
Scelta una delle due alternative, con quale logica disporre le circonferenze per ottimizzare l’efficienza?
La mia prima scelta è stata quella di disporre le circonferenze a partire dal bordo esterno della macro-cir via via su bordi di circonferenze più piccole a decrementi di due volte il diametro della circonferenza.
Vedi figura D = 100 cm d = 6 cm
n = 213 eff = 76,680%
Come si può notare l’efficienza non è molto alta, se la confrontassimo con quella ottenuta scegliendo esagoni di uguale superficie delle singole circonferenze, otterremmo: 1
Disposizione degli esagoni
D = 100 cm d = 6 cm
n = 253 eff = 91,080%
Come ci si poteva immaginare, in questo caso l’efficienza è aumentata poiché l’esagono è una figura geometrica in grado di ricoprire perfettamente un piano; i problemi si riscontrano solo al bordo ed è per questo che l’efficienza non è del 100%. Qui però gli esagoni sono stati disposti a partire dal centro della macro-circonferenza.
Disposizione concentrica delle circonferenze
Tornando al problema di partenza e usando sempre circonferenze, si potrebbe pensare di disporle dal centro e concentriche a esagoni circoscritti a tali circonferenze: D = 100 cm d = 6 cm
n = 223 eff = 80,280%