universitÀ degli studi “l a sapienza di …infocom.uniroma1.it/~robby/tesi/perna...
TRANSCRIPT
UNIVERSITÀ DEGLI STUDI “LA SAPIENZA” DI ROMA
FACOLTÀ DI INGEGNERIA
CORSO DI LAUREA IN
INGEGNERIA DELLE TELECOMUNICAZIONI
Tesi di Laurea di Primo Livello
Progettazione ottimizzata di una rete per
telefonia mobile mediante Algoritmi Genetici
Relatori:
Prof. Roberto Cusani
Prof. Fabio Garzia
Candidato: Cristina Perna
Matricola: 793200
Anno Accademico 2003-2004
1
INDICE
1. Introduzione…………………………………………………………3
2. Algoritmi genetici……………………………………………….…...5
2.1 - Principi generali………………………………………………...5
2.2 - Struttura degli algoritmi genetici……………………………….7
2.3 - Perché scegliere gli algoritmi genetici………………………...15
2.4 - Aree di applicazione…………………………………………..16
2.5 - Gli Algoritmi Genetici e Matlab………………………………18
3. L’ottimizzazione della copertura cellulare.........................................19
3.1 - La copertura cellulare e l’importanza della sua ottimizzazione.19
3.2 - Le nuove problematiche legate all’avvento dell’UMTS………25
4. Metodi di ottimizzazione della copertura cellulare nel sistema
UMTS……………………………………………………………….31
4.1 – Approccio genetico alla pianificazione cellulare di
Terza Generazione (3G).....................................................…...38
5. Ottimizzazione della progettazione dell’interfaccia radio UMTS
(impostazione)……………………………………………………..42
5.1 - Premessa………………………………………………………42
5.2 - Progettazione della rete e ottimizzazione……………………..42
5.2.1 - Dimensionamento……………….……………………..42
5.2.2 - Progettazione……………………….………………….43
5.2.3 - Ottimizzazione………………………………………...44
2
5.2.3.1 - Criteri………….………………….…………..45
5.2.3.2 - Casi di interesse……..………………………..47
5.2.4 - Testing……………………….......................................57
5.2.5 - Monitoring………….…………………………………57
Appendice………………………………………………….....59
6. Ottimizzazione della progettazione dell’interfaccia radio UMTS
(risultati)…………………………………………………………….60
6.1 – Bilancio dei risultati……………………………………74
7. Conclusioni…………………………………………………………77
8. Bibliografia…………………………………………………………79
3
1 – INTRODUZIONE
La straordinaria espansione che negli ultimi anni ha contraddistinto il
settore delle telecomunicazioni, ha richiesto da parte delle aziende che
operano in questo campo forti investimenti, in particolare sotto il piano
delle infrastrutture di rete. Visti gli ingenti costi e la scarsità di risorse
radio, si è fatta sempre più pressante l’esigenza di un network planning
accurato ed efficiente.
L’avvento della telefonia mobile di Terza Generazione (UMTS), con
l’ampia gamma di servizi che andrà ad offrire, ha reso ancora più stringente
questa necessità, visto l’incremento della complessità della rete e del
numero di parametri che dovranno essere presi in considerazione.
Se, infatti, nella radiotelefonia di Seconda Generazione il problema della
progettazione di rete poteva essere essenzialmente ricondotto a quello di
frequency planning e coverage planning, per l’UMTS, se da una parte si
affievoliscono i problemi legati alla frequenza, dall’altra si fa predominante
quello di capacità di rete, essendo la capacità di ogni cella non limitata a
priori, ma strettamente legata all’interferenza (più precisamente al rapporto
segnale interferenza, SIR). Ciò, aggiunto alla riduzione delle potenze in
gioco, porterà a una conseguente restringimento del raggio di copertura
delle celle, da cui scaturirà una capillare presenza di SRB sul territorio. La
scarsità di siti disponibili, renderà irrinunciabile la ricerca di nuovi ed
efficaci metodi di ottimizzazione della copertura cellulare.
Diverse ed interessanti sono le soluzioni proposte a riguardo. Una delle più
suggestive risulta senza dubbio essere l’impiego di un metodo di
ottimizzazione ispirato all’evoluzione naturale, gli Algoritmi Genetici
(GA), che per i principi su cui si fondano e per la loro versatilità ben si
candidano ad essere utilizzati in un problema così ricco di sfaccettature.
4
Scopo del presente lavoro è proprio quello di mostrare come essi possano
essere efficacemente usati nella costruzione di utili handles, che
consentano di semplificare la collocazione delle stazioni radio base sul
territorio.
Esso è organizzato come segue. Dopo aver illustrato i principi e la struttura
degli Algoritmi Genetici (Sezione 2), si è voluta chiarire l’importanza e
l’implementazione di un processo di network planning (Sezione 3), con
particolare riferimento ai cambiamenti apportati dal 3G. Nella sezione
successiva (Sezione 4), si introducono quelle che sono le soluzioni proposte
a riguardo sia in termini di GA, che mediante l’impiego di tecniche di
differente natura. Nel resto del lavoro si è affrontato il problema
dell’ottimizzazione di copertura e capacità della rete nel caso dell’UMTS,
costruendo alcune funzioni, che, sfruttando le potenzialità degli algoritmi
genetici (mediante l’utilizzo della nuova risorsa Matlab, Genetic
Algorithms and Direct Search Toolbox), si propongono essere valido aiuto
in un processo di network planning. In particolare, vengono presentate le
soluzioni proposte a seconda della configurazione del problema (Sezione 5)
ed i risultati ottenuti dalla loro implementazione (Sezione 6). Nell’ultima
sezione (Sezione 7), si illustreranno le problematiche che chi scrive si
propone di affrontare in successivi lavori a partire dai risultati e soprattutto
dalle capacità e dall’esperienza acquisite nello svolgimento del presente.
5
2.ALGORITMI GENETICI
2.1 – Principi generali
Gli algoritmi genetici sono una tecnica algoritmica basata sull’evoluzione
naturale, largamente usata per risolvere problemi di ottimizzazione.
Essi furono concepiti da John Holland negli anni Sessanta e furono
sviluppati nell’Università del Michigan negli anni Sessanta e Settanta,
ma solo dagli anni Ottanta hanno trovato applicazione. Diversamente dalle
tecniche basate sulla simulazione dell’evoluzione biologica, sviluppate
nello stesso periodo1, lo scopo di Holland non era quello di elaborare
algoritmi per la risoluzione di problemi specifici, bensì quello di studiare il
fenomeno dell’adattamento naturale e di ideare tecniche per trasferirne i
meccanismi all’interno di sistemi informatici, per consentirne
l’applicazione a diversi contesti.
Gli algoritmi genetici, sfruttano la teoria Darwiniana della selezione
naturale che premia gli individui con elevate capacità di adattamento
all’ambiente circostante. In particolare, gli individui che hanno più
successo nella sopravvivenza e nella riproduzione avranno un numero
relativamente grande di discendenti, mentre gli individui che si
mostreranno essere meno adatti produrranno poca o nessuna prole. Ciò
implica che, in ciascuna delle generazioni successive, gli individui più
idonei (fit individuals) trasmetteranno i propri geni a un numero crescente
di individui, la cui combinazione genererà, in alcuni casi, una discendenza
di qualità superiore a quella di ciascun genitore (superfit). Come risultato
avremo che la specie assumerà, di generazione in generazione,
caratteristiche che la renderanno sempre più adatta all’ambiente con cui si
trova a relazionarsi.
1 Strategie evolutive (anni sessanta), Rechemberg,Schwefel; Programmazione evolutiva (1966),
Fogel, Owens e Walsh.
6
In modo equivalente operano gli algoritmi genetici, i quali, partendo da una
popolazione di individui, ciascuno dei quali rappresenta una possibile
soluzione del problema, associano ad ognuno di essi un punteggio, fitness
score, che rappresenta una stima di quanto esso sia “adatto” per la
risoluzione del nostro problema. Gli individui con fitness score più alto
hanno la possibilità di riprodursi incrociandosi con altri individui della
popolazione, mentre gli individui con score più bassa tenderanno ad
estinguersi. Otterremo così una nuova popolazione di possibili soluzioni,
che comprende una frazione più alta delle caratteristiche possedute
dagli individui migliori della precedente generazione, con il risultato che,
con il passare delle generazioni, le soluzioni ritenute meno adatte saranno
estromesse, mentre le caratteristiche migliori verranno estese a tutta la
popolazione di soluzioni.
Se l’algoritmo è stato ben implementato la popolazione convergerà a una
soluzione ottima del problema.
7
2.2 – Struttura degli algoritmi genetici
Prima di descrivere in dettaglio come lavorano gli algoritmi genetici, visto
il forte parallelismo esistente tra computazione evolutiva ed evoluzione
biologica, risulta utile chiarire il significato che assumono, nel contesto in
cui ci troviamo ad operare, i termini presi in prestito dalla biologia.
BIOLOGIA COMPUTAZIONE
EVOLUTIVA
Genotipo Il codice genetico che
determina le caratteristiche
di un individuo.
Codifica.
Fenotipo La manifestazione dei
caratteri codificati nel codice
genetico.
Decodifica (es.
rappresentazione tramite
vettori)
Individuo Soluzione del problema
Popolazione Totalità di individui. Insieme di soluzioni
Fitness Probabilità che l’organismo
viva abbastanza da riprodursi
o come la funzione del
numero di discendenti che
esso genera.
Qualità di una soluzione
Cromosoma Elemento costitutivo di una
cellula
Rappresentazione di una
soluzione (spesso codificata
come stringa di bit)
Gene Elemento costitutivo di un
cromosoma, che codifica una
caratteristica.
Parametro della soluzione
(spesso bit o blocco di bit)
Crossover Scambio di geni tra ogni Scambio di parametri tra
8
coppia di cromosomi per
formare un cromosoma
singolo, che poi si
accoppia con quello
dell’altro genitore in modo
da creare un patrimonio
completo di cromosomi
diploidi.
due soluzioni.
Mutazione Singoli nucleotidi possono
essere modificati nel
passaggio dal genitore al
discendente.
Inversione di bit in un locus
scelto a caso
Selezione Individui candidati alla
riproduzione
Riutilizzo di buone
soluzioni
Tab.1 – Nomenclatura
Un algoritmo genetico si articola nei seguenti passi:
1. Codifica del problema;
2. Creazione di una popolazione iniziale di potenziali soluzioni;
3. Formulazione di una funzione di valutazione (funzione fitness o
obiettivo) che svolge nel GA il ruolo dell’ambiente, assegnando ad ogni
soluzione una figura di merito che ne stima l’idoneità;
4. Formalizzazione di operatori genetici (crossover e mutazione) che
alterino i cromosomi dei discendenti.
5. Definizione dei valori per i diversi parametri che regolano
l’evoluzione (taglia della popolazione, probabilità di applicazione degli
operatori genetici);
6. Definizione delle condizioni di stop.
9
Il processo è riassunto in Fig. 1.
Fig.2. 1 – Processo di ottimizzazione mediante GA
Entriamo ora nello specifico dei punti precedenti.
La codifica del problema consiste nel passare dallo spazio dei parametri (di
solito rappresentato in termini di numeri reali) allo spazio dei cromosomi,
usualmente rappresentati da stringhe di bit di lunghezza finita. All’interno
dei cromosomi i parametri sono rappresentati dai geni, codificati in bit o
blocchi di bit. Se gi, codificato con Mi bit, rappresenta l’i-esimo parametro
degli N che costituiscono il cromosoma , avremo che gi sarà della forma
gi=[b1 b2 b3 …….bMi-1 bMi]
e il cromosoma c avrà la seguente struttura:
c=[g1 g2 g3 …….gN-1 gN]=[b1 b2 b3 …….bM-1 bM]
dove M rappresenta la somma dei bit che costituiscono il cromosoma,
(M=M1 + M2 + …+ ..MN-1 + MN).
Generazione attuale (N cromosomi)
Nuova generazione (N cromosomi)
Valutazione del fitness e riproduzione
Crossover
Mutazione
Probabilità di crossover
Probabilità di mutazione
N
10
La codifica costituisce un aspetto molto delicato del processo di
ottimizzazione. È in questa fase, infatti, che si decide con che grado di
precisione si vuole procedere. Ogni parametro sarà codificato con tanti più
bit, quanto maggiore si vuole sia la precisione. Una soluzione semplicistica
indurrebbe ad adottare la massima precisione possibile, ma una decisione di
questo tipo comporterebbe, nella maggior parte dei casi, una inaccettabile
lentezza di elaborazione e, di conseguenza, di convergenza. Sta, quindi, a
chi implementa saper trovare un’efficiente compromesso tra precisione e
velocità di convergenza.
Intrinsecamente legata alla velocità di convergenza risulta essere anche la
scelta della popolazione iniziale. Se è vero, infatti, che nella gran parte dei
casi la scelta di una popolazione iniziale in modo random, senza porre
alcun tipo di vincolo, non pregiudica la velocità di convergenza
dell’algoritmo, è anche vero che partire da una popolazione iniziale avente
una buona fitness può far sì che esso prenda la strada migliore verso il
raggiungimento del nostro obiettivo.
Il secondo aspetto fondamentale dell’implementazione del GA è senza
dubbio la costruzione della funzione fitness, la quale dovrebbe avere un
andamento piatto e regolare così da permettere a cromosomi con buona
fitness di essere vicini nello spazio dei parametri a cromosomi con fitness
leggermente migliore e dovrebbe essenzialmente riflettere il valore reale
del cromosoma. Non sempre, però, queste richieste possono essere
soddisfatte, poiché, nei problemi reali i parametri in gioco sono spesso
molteplici e non risultano, di conseguenza, modellabili esattamente
attraverso una funzione matematica. Proprio per questo motivo spesso si
sceglie di introdurre nella funzione fitness una funzione cosiddetta di
penalità, al fine di favorire l’esclusione dei cromosomi inadeguati,
11
valutando fondamentalmente quanto ci costerebbe renderlo adatto ai nostri
scopi.
Ora, due problemi che spesso si presentano lavorando con gli algoritmi
genetici sono la convergenza prematura e la fine lenta, entrambi legati al
range del fitness della popolazione. È infatti evidente che all’inizio di
un’esecuzione ci troviamo di fronte ad una grande varietà di fitness. Col
progredire dell’algoritmo alcuni geni iniziano a predominare e il range del
fitness si riduce. A volte avremo che i geni provenienti da pochi
individui con un fitness comparabilmente alto (ma non ottimale)
possono rapidamente dominare la popolazione, causando la convergenza
a un massimo locale. Una volta che la popolazione converge, l’abilità del
GA di continuare la ricerca per una soluzione migliore è
effettivamente eliminata: il crossover di individui quasi identici può
portare ben pochi miglioramenti. Si parlerà in questo caso di convergenza
prematura. Altre volte avremo il problema opposto al precedente, ovvero
dopo molte generazioni, la popolazione sarà convergente, ma non avrà
localizzato precisamente il massimo locale. Il fitness medio sarà alto, ma
ci sarà poca differenza tra la media e il miglior individuo. Per ovviare
a questi problemi bisognerà espandere il range di fitness della popolazione
e per far ciò bisognerà essenzialmente agire sulla tecnica di selezione al
fine di impedire che ad un certo punto un individuo super fit prenda il
predominio sugli altri. La selezione degli individui consiste nell’allocare
opportunità riproduttive agli individui e si esplica fondamentalmente nel
copiare gli individui in una “piscina di accoppiamento”, mating pool, dove
gli individui migliori hanno la possibilità di essere copiati più volte. Qui,
vengono prese coppie di individui e fatte accoppiare finché la “piscina” non
rimane vuota. Il punto su cui bisogna operare per evitare i problemi
precedentemente discussi è il criterio con cui gli individui vengono copiati
12
nel mating pool. Esistono fondamentalmente tre tipi di selezione: roulette
wheel selection, rank selection e tounament selection. Nella prima, che
risulta essere anche la più semplice, possiamo immaginare una roulette in
cui vengono piazzati tutti i cromosomi, ognuno dei quali occupa uno spazio
proporzionale alla propria fitness. A questo punto, si estrae un numero
casuale (un lancio di pallina virtuale) e si seleziona l’individuo che si trova
in quella posizione. È proprio con questa tecnica però che si verifica
l’insorgere di convergenza prematura e di stagnazione che portano alla
creazione di una popolazione mediocre. Nella rank selection gli individui
vengono ordinati in ordine decrescente di fitness e si attribuisce loro una
probabilità decrescente in funzione della posizione in classifica,
indipendente dal valore della fitness. In questo modo si evitano sia la
convergenza prematura sia la stagnazione, perché nessun individuo ha
probabilità molto maggiore degli altri di essere selezionato, ma il prezzo
che si paga è una certa pesantezza computazionale. Nella tournament
selection, per ogni individuo da selezionare si seleziona un gruppo di
individui e si clona il migliore. Questo metodo ha gli stessi vantaggi del
precedente, senza però necessità di ordinamento. A questi tre criteri ne va
aggiunto un quarto che viene usato spesso in concorso con i precedenti, la
selezione elitista, la quale implica che almeno una copia dell’individuo
migliore venga mantenuta nella generazione successiva. Questa tecnica ci
permette di non perdere buone soluzioni nel salto generazionale.
Per dar luogo ad una nuova popolazione, gli individui selezionati si
troveranno a dover subire i processi di incrocio e mutazione. L’incrocio
consiste nello scambio di segmenti tra due individui “genitori”, per formare
due discendenti. Anche per il crossover esistono diverse tecniche, tra cui
ricordiamo il single-point crossover (Fig.2.2,(a)), il two-point crossover
(Fig.2.2,(b)), in cui i genitori vengono tagliati rispettivamente in uno e due
13
punti e se ne ricombinano i segmenti nei figli e il crossover
uniforme(Fig.2.2,(c)), dove ciascun gene nel figlio viene creato copiandolo
dai genitori in accordo ad una maschera di generazione casuale, nello
specifico, viene copiato il gene del primo o del secondo genitore a seconda
della presenza di un uno o di uno zero nella maschera.
L’intuizione che sta dietro a questo operatore è lo scambio di informazione
tra due soluzioni.
Crossover singolo punto 100011 0001100111 1100000011101011 Genitori 1000110011101011 1100000001100111 Figli Fig. 2.2 (a) – Crossover singolo punto
Crossover doppio punto
1000110001100111 1100000011101011 Genitori 1100110001101011 1000000011100111 Figli Fig.2.2 (b) – Crossover doppio punto
Crossover uniforme
1 0 0 1 0 0 1 1 1 0 0 1 1 0 0 1 Maschera 1 0 0 0 1 1 0 0 0 1 1 0 0 1 1 1 Genitore 1 1 1 0 0 0 0 0 0 0 1 1 0 0 0 1 1 Figlio 1 1 0 0 0 0 0 0 1 1 1 0 1 0 1 1 Genitore 2 Fig.2.2 (c) – Crossover uniforme
14
La mutazione consiste nell’alterare arbitrariamente uno o più geni di un
cromosoma, selezionato, attraverso un cambiamento casuale, con
probabilità pari all’indice di mutazione.
Il senso della mutazione sta nell’introduzione di una variabilità extra
nella popolazione, per rappresentare quei cambiamenti che possono
dipendere da fattori ambientali e culturali diversi dal patrimonio genetico.
Stabiliti quali sono gli operatori, un passo basilare nell’implementazione
dell’algoritmo rimane la definizione dei parametri che ne regolano
l’evoluzione: una scelta poco oculata, infatti, può portare ad una mancata
ottimizzazione del problema. Scegliere, ad esempio, una taglia consistente
per la popolazione significa sì garantire una ampia varietà di fitness, ma
significa anche compromettere la velocità di convergenza dell’algoritmo.
Essa deve essere il frutto di un compromesso tra le reali esigenze di
“diversificazione” del problema (derivanti ad esempio dal suo numero di
variabili) e la sua complessità computazionale. Le stesse probabilità di
crossover e mutazione vanno scelte a seconda delle caratteristiche del
problema di cui ci si sta occupando. In particolare, se la convergenza
dell’algoritmo tende ad essere prematura, accrescere la probabilità di
mutazione può risultare l’unica via per ovviare alla formazione di una
popolazione mediocre, mentre, se l’algoritmo ha una convergenza regolare,
un rate mutation alto potrebbe portare alla scomparsa di buoni individui.
L’algoritmo avrà termine concordemente alle condizioni di stop scelte da
chi implementa. Gli eventi che ne determinano la conclusione sono per lo
più rintracciabili nel raggiungimento di una fitness soddisfacente, nella
permanenza in stato di stallo delle soluzioni, nel raggiungimento di un
numero limite di generazioni. Anche in questo caso non esistono regole
generali e le condizioni ed i relativi valori vanno stabiliti ad hoc per il
problema trattato.
15
2.3 – Perché scegliere gli Algoritmi genetici
Da quanto detto in precedenza si desume che gli algoritmi genetici non
assicurano di trovare una soluzione ottima del problema. Ma allora perché
adottarli? Gli argomenti a favore sono numerosi e vanno ricercati
soprattutto nella loro straordinaria capacità di adattamento alle più svariate
problematiche. La loro robustezza ne permette l’applicazione in campi in
cui non si è ancora riuscito a trovare una tecnica specifica e la loro duttilità
ne favorisce l’ibridazione con tecniche già consolidate per alcuni tipi di
problemi. La loro natura di tecnica adattativa ne favorisce l’applicazione in
contesti fortemente variabili. Inoltre, facendo uso del calcolo parallelo,
permette l’esplorazione (e lo sfruttamento) simultaneo di tutto lo spazio di
ricerca, anziché esaminarne uno alla volta tutti i punti, permettendo, così, di
ottenere buone soluzioni in tempi sufficientemente rapidi.
Fig. 2.3 – Peculiarità degli algoritmi genetici
ROBUSTEZZA
PARALLELISMO
ADATTABILITA’
RAPIDITA’
16
2.4 – Aree di applicazione
Per illustrare la flessibilità degli Algoritmi Genetici, elenchiamo ora
alcune applicazioni, delle quali solo alcune sono state usate in pratica,
altre rimangono argomenti di ricerca.
Ottimizzazione di funzioni numeriche. I GA si sono rivelati essere in grado
di superare tecniche convenzionali di ottimizzazioni su funzioni
complicate, discontinue e disturbate.
Image Processing. Con immagini mediche a raggi X o da satellite,
c'è spesso bisogno di allineare due immagini della stessa area, prese
in istanti diversi. Comparando un campione casuale di punti nelle due
immagini, un GA può efficacemente trovare un insieme di equazioni per
adattare una immagine dentro l'altra.
Un ulteriore inusuale problema di image processing è quello di creare
immagini di sospetti criminali. Il GA genera un numero casuale di facce, e
il testimone seleziona le due che sono più simili a quella del sospetto.
Queste sono poi usate per generare altre facce nella generazione
successiva. Il testimone agisce come la "funzione fitness" nel GA e
controlla la convergenza verso l'immagine corretta.
Ottimizzazione Combinatoria: richiede soluzioni a problemi che
riguardano disposizione di oggetti (es. Traveling Salesman Problem)
Bin packing, cioè determinare come disporre un numero di oggetti su uno
spazio limitato, ha molte applicazioni nell'industria ed è stato largamente
studiato. Tra queste vi sono il job shop scheduling, o time-tabling dove il
problema è allocare un insieme di risorse (macchine, uomini, stanze) per
portare a termine un insieme di compiti, come la manifattura di un
numero di componenti di macchine. Ci sono ovvi limiti, per esempio la
stessa macchina non può essere usata per fare due compiti diversi nello
stesso tempo. Il risultato migliore è quello che permette di finire il lavoro
17
nel minor tempo possibile, o nel minimo tempo di inattività per ogni
risorsa.
Progettare lavori può essere un mix di ottimizzazione combinatoria e
ottimizzazione di funzioni.
Il progetto dei GA può essere ibridizzato con tecniche più tradizionali di
ottimizzazione o con sistemi esperti per produrre un range di progetti che
un ingegnere può poi valutare.
Machine Learning. Ci sono molte applicazioni dei GA per sistemi di
apprendimento: il modello usuale è quello del sistema classificatore. Il GA
prova ad evolvere (cioè a imparare) un set di se... allora per operare in
alcune particolari situazioni. Questo è stato applicato anche a modelli
economici e politici. Un uso maggiore delle tecniche dei machine learning
è stato fatto nel campo del controllo. Il fitness di un insieme di regole
può essere valutato giudicando le performance del sistema.
18
2.5 – Gli Algoritmi Genetici e Matlab
Delle potenzialità degli algoritmi genetici non poteva non accorgersi un
importante ambiente di lavoro come Matlab. Nella versione 7.0, infatti,
MathWorks introduce il Genetic Algorithm and Direct Search Toolbox, il
quale estende le potenzialità di Matlab nel campo dell’ottimizzazione,
permettendo di sfruttare in modo ottimale le peculiarità degli algoritmi
genetici. Il tool si compone di un’interfaccia grafica, ma consente
l’implementazione dell’algoritmo anche dalla command window, nel caso
in cui si volesse lavorare sfruttando dati esterni al tool. Esso si struttura su
più campi, ognuno dei quali ci permette di lavorare su uno degli aspetti
descritti nelle precedenti sezioni. Possiamo, infatti, scegliere tra i vari
criteri di selezione, crossover e mutazione esistenti in letteratura o crearne
di nostri, possiamo agire sulle probabilità di mutazione e di incrocio,
possiamo decidere come e perché terminare l’algoritmo, possiamo scegliere
come codificare i cromosomi e di che taglia creare la popolazione,
possiamo graficare o meno, per ogni generazione, la convergenza, le
variabili, l’evoluzione e gli operatori. Esso rappresenta senz’altro uno
strumento utilissimo per chi vuole sfruttare al meglio gli algoritmi genetici,
ma sarebbe riduttivo pensare che il lavoro di ottimizzazione si riduca alla
scelta dei vari parametri. Il passaggio fondamentale rimane, infatti, quello
della costruzione della funzione fitness, che se può risultare banale
nell’ottimizzazione di un semplice problema matematico, cresce di
complessità in problemi con un più alto numero di variabili, come sono
quelli di tipo ingegneristico.
Quest’ultima, insieme alla scelta dei parametri e delle condizioni di stop,
restano a carico di chi implementa. Di conseguenza, per quanto il tool
possa esserci di aiuto, la buona riuscita dell’ottimizzazione continuerà a
dipendere dalle capacità dell’utente.
19
3. L’OTTIMIZZAZIONE DELLA COPERTURA CELLULARE
3.1 – La copertura cellulare e l’importanza della sua ottimizzazione
La telefonia mobile si basa su un architettura di tipo cellulare, in cui il
territorio è diviso idealmente in celle, di forma geometrica regolare
(solitamente esagonale), ognuna delle quali è servita da una Stazione Radio
Base (SRB), che consente agli utenti della cella l’accesso alla rete. La SRB
costituisce l’elemento fondamentale per l’accesso radio di un sistema
radiomobile ed è solitamente posta in corrispondenza del vertice di una
cella (punto di incontro di tre celle (Fig. 3.1)).
Fig. 3.1 – Posizionamento di una SRB sul territorio
Essa impiega solitamente tre sistemi di antenne (ma anche quattro o sei),
collocati idealmente su un triangolo equilatero, in modo tale che ciascuno
di essi serva una delle tre celle. Solitamente ciascun sistema di antenne è
costituito da tre antenne settoriali (panel antennas (Fig.3.2)), una in
trasmissione e due in ricezione (Fig.3.3))
20
Fig. 3.2 – Panel antenna Fig. 3.3 – Struttura di una SRB
Le antenne delle stazioni radio base sono progettate per permettere al
sistema di funzionare con la minima potenza necessaria e per tenere
sottocontrollo le interferenze. Si tratta, infatti, di antenne altamente
direttive, in grado di indirizzare il segnale dove è necessario e di ricevere
segnali anche molto deboli, come possiamo osservare dai diagrammi di
radiazione (Figg. 3.4–3.5) di un’antenna di questo tipo.
Fig. 3.4 – Diagramma di radiazione Fig. 3.5 – Diagramma di radiazione
orizzontale verticale
21
Ciascuna stazione radio base può servire un numero limitato di utenti.
Pertanto in una determinata zona le stazioni devono essere distribuite in
numero tanto più elevato quanto maggiore è l’utenza da servire.
La scelta dei luoghi dove installare le stazioni radio base deve essere
effettuata in modo da garantire:
- una copertura di una determinata area geografica;
- i minimi livelli di interferenza reciproca tra la nuova SRB e quelle già
presenti;
- la possibilità di usufruire contemporaneamente del servizio ad una
determinata percentuale di utenti di quella zona;
- un’esposizione della popolazione a un livello di campo elettromagnetico
conforme alle normative.
Da questo e da molto altro nasce l’esigenza del network planning e con
esso l’importanza della sua ottimizzazione. Infatti, una copertura ottimale
non porta benefici solo dal punto di vista del servizio, ma si rivela
importantissima anche sul piano economico, in quanto una riduzione
all’essenziale del numero delle stazioni radio base e una massimizzazione
degli utenti serviti comporterà un notevole risparmio per i gestori, che si
ripercuoterà conseguentemente sulle tariffe che gravano sui consumatori.
Il processo di ottimizzazione della copertura cellulare (Fig.3.6),
indipendentemente dal metodo adottato e del tipo di telefonia che stiamo
trattando, può essere riassunto in tre fasi:
- Dimensionamento;
- Pianificazione;
- Ottimizzazione e monitoraggio.
Nella fase di dimensionamento si deve tener conto ovviamente dell’area
che si deve andare a coprire, del traffico che caratterizza il territorio e della
22
soglia di copertura che vogliamo raggiungere. Dell’area su cui operiamo la
pianificazione è importantissima non solo l’estensione, ma anche la natura
(urbana, suburbana, rurale), che ha conseguenze sia a livello di
attenuazione (diversi modelli di propagazione da considerare), sia
ovviamente a livello di interferenza. Anche il traffico può essere
considerato, almeno per quanto riguarda la seconda generazione di
telefonia mobile, diretta conseguenza della natura dell’area in esame,
poiché si andrà a prendere in considerazione essenzialmente il livello di
traffico, che sarà chiaramente proporzionale al grado di urbanizzazione
della zona.
Fig. 3.6 – UMTS Network Planning
Nella fase di progettazione vanno determinati, in base agli input ricevuti, i
parametri di configurazione del sito e del collegamento, che possono essere
ricondotte fondamentalmente alle seguenti categorie: informazioni generali,
informazioni di servizio, caratteristiche in trasmissione e in ricezione e
modello di propagazione adottato (Tab.3.1). Vanno poi considerati il livello
Dimensionamento - Traffico - Area - Soglia di copertura
Progettazione - Traffico - Configurazione del sito - Soglia di copertura e requisiti di capacità
Ottimizzazione e monitoraggio - Traffico - Verifica della copertura e disponibilità della capacità
23
di copertura e la richiesta a livello capacitivo, che, per quanto riguarda il
GSM possono essere considerati, non solo strettamente connessi, ma quasi
come un unico requisito, non risultando essere la capacità uno dei punti più
sensibili di questo tipo di telefonia.
Tab. 3.1 – Parametri di configurazione
del sito e del collegamento
La vera e propria ottimizzazione della copertura cellulare avviene nella
terza fase, nella quale, facendo uso degli elementi acquisiti
Informazioni generali
Frequenza
Chip rate
Temperatura
Informazioni di servizio
Carico
Bit rate
Caratteristiche in
ricezione
Densità di rumore termico
Figura di rumore del ricevitore
Densità di rumore del ricevitore
Potenza del rumore
Margine di interferenza
Potenza di interferenza del
ricevitore
Rumore totale
(termico+interferenza)
Guadagno del processo
Eb/No richiesto
Sensibilità del ricevitore
Guadagno di antenna in ricezione
Perdite
Potenza del segnale richiesta
Forza del campo
Caratteristiche in
trasmissione
Potenza in trasmissione per
connessione
Potenza in trasmissione
Perdite
Guadagno dell’antenna in
trasmissione
Path loss
24
precedentemente, per mezzo di tecniche generali o create ad hoc, si arriva
ad avere una configurazione di SRB sul territorio, con annesse
informazioni sulla copertura e capacità effettiva a livello globale o a livello
di SRB stesse. Punto cardine di questo passo, risulta spesso essere il
monitoraggio il quale permette a chi sta realizzando l’ottimizzazione di
verificare in tempo reale il soddisfacimento degli obiettivi auspicati e di
procedere, in caso negativo, alla modifica dei parametri definiti nelle fasi
precedenti o relativi all’algoritmo di ottimizzazione.
25
3.2 – Le nuove problematiche legate all’avvento dell’UMTS
L’esigenza di ottimizzazione si fa ancora più pressante se si fa riferimento
alla telefonia di terza generazione, al cui arricchimento della gamma di
servizi (Fig.3.7) e alla conseguente nuova architettura di rete (Fig. 3.8) ha
fatto seguito senza dubbio una diversificazione dei parametri di cui si deve
tener conto nella realizzazione della rete. Di conseguenza, se per le
generazioni di telefonia precedente si poteva pianificare una rete anche per
mezzo di tool di simulazione, che non includevano tecniche di
ottimizzazione, con l’avvento dell’UMTS, essi si sono dimostrati
inadeguati a modellare una realtà con una tale molteplicità di sfaccettature.
Il modello di network planning optimization rimane, però, molto simile a
quello del GSM, a condizione, chiaramente, di adattarlo a quelle che sono
le peculiari caratteristiche di questo sistema di telefonia.
Utilizzo della rete Internet
• Browsing the WW
• E-commerce
• Stampa on-line
• Traduzioni on-line
• Servizi di diffusione su base locale
Educazione
• Scuola virtuale
• Laboratori di scienza on-line
• Librerie on-line
• Laboratori linguistici on-line
• Addestramento
Intrattenimento
• Audio on demand
• Games on demand
• Video Clip
• Turismo virtuale
Servizi di sicurezza e/o sociali
• Emergenza
• Amministrazione
Business information
• Mobile office
• Narrowcast TV
• Gruppi di lavoro virtuali
Servizi di comunicazione
• Video telefonia
• Video conferenza
• Risponditori e riconoscitori vocali
• Servizi di localizzazione
Servizi economici e finanziari
• Virtual banking
• On-line billing
• Universal SIM card e carte di credito
Servizi speciali telematici di ausilio al trasporto
• Pedaggio
• Gestione flotte aziendali
• Antifurto
• Telemedicina
• Instant help on-line
• Esperti on-line
26
Fig. 3.7 – I nuovi servizi UMTS
Fig. 3.8 – UMTS Access Network Architecture
Volendo tornare alla precedente schematizzazione si deve cominciare ad
agire già dalla fase di dimensionamento. A seconda dell’area di cui ci si sta
occupando, infatti, si parla di picocelle, microcelle e macrocelle. Inoltre,
del traffico non si andrà a valutare solo il livello, ma anche il tipo: accanto
al traffico voce, avremo anche un traffico dati che, richiedendo una qualità
del servizio evidentemente diversa rispetto al traffico voce, indurrà ad
adottare una copertura a livelli (Fig. 3.9).
Fig. 3.9 – Copertura a livelli
27
Per quanto riguarda la fase stessa di pianificazione, oltre alla ovvia
modifica dei parametri di configurazione del sito e del collegamento,
dobbiamo prendere atto del fatto che non possiamo più parlare
indifferentemente di copertura e capacità della rete. Ogni stazione radio
base, infatti, può supportare un numero limitato (Tab.3.2) di utenti,
funzione del raggio della cella, della potenza della SRB e dell’interferenza
inter-cella (tra celle adiacenti) e intra-cella (derivata dagli utenti della
stessa cella), che devono configurarsi in modo tale che tutti gli utenti
percepiscano il segnale con la stessa potenza, senza che si verifichi il
cosiddetto effetto near-far (penalizzazione degli utenti a distanza maggiore
dalla SRB, Fig. 3.10).
Tab. 3.2 – Relazione tra
capacità e copertura nel
sistema UMTS per il servizio
telefonico (tabella computata
tramite un simulatore UMTS
sviluppato presso il Politecnico
di Milano
Fig. 3.10 – Effetto Near-Far
Capacità (numero utenti attivi per
cella)
Copertura (raggio della cella in km)
17 69 96
103
2 1.5 1
0.5
28
Si deve tener conto, inoltre, del fatto che un utente può chiedere alla SRB
di aumentare la potenza (power control), ma anche in questo caso,
dobbiamo prendere atto del fatto che il budget di potenza di una SRB è
limitato e oltre una certa soglia essa non può più garantire all’insieme degli
utenti serviti una qualità del servizio accettabile. Si evince da ciò che la
potenza in trasmissione è una delle principali risorse critiche del sistema
UMTS e questo si ripercuote sensibilmente sulle dimensioni massime delle
celle di copertura. A questo proposito nel sistema UMTS è stato introdotto
un meccanismo adattativo, chiamato cell breathing (Fig. 3.11), che, al
variare del carico della cella, ne riduce il raggio, al fine di tenere sotto
controllo il livello di interferenza.
Fig. 3.11 – A) Traffico uniformemente distribuito e basso carico. Nella cella B
l’aumento del carico provoca un aumento della potenza in trasmissione dell’antenna
(B). Il carico aumenta fino al punto che la potenza in trasmissione viene saturata (C).
L’area delle due celle varia in funzione del carico di traffico (D).
A C
D B
29
Con l’UMTS viene introdotto un nuovo concetto, l’hot spot, un’area in cui
vi è una particolare concentrazione di traffico. Un’efficiente pianificazione
deve tener conto del fatto che, il posizionamento di una SRB in un hot spot,
aumenta la capacità della rete (Fig. 3.12 (a) – (b)).
Fig. 3.12 (a) – Design inefficiente
Fig. 3.12 (b) – Design efficiente
30
La forte variabilità che caratterizza questi nuovi fattori accresce, all’interno
del processo di ottimizzazione, l’importanza del monitoraggio, il quale ne
diventa, per ovvi motivi, un elemento indispensabile. Le principali
evoluzioni del processo di ottimizzazione rispetto alle generazioni
precedenti sono riassunte in Tab.3.3.
Nelle prossime sezioni vedremo quali tecniche di ottimizzazione sono state
ritenute più opportune per gestire un problema di così elevata complessità.
Processo di progettazione di capacità e copertura
- La progettazione di capacità e copertura sono correlate; - Le informazioni relative al traffico sono necessarie nella progettazione della copertura
Progettazione della capacità Il servizio dipende dalla distanza dalla stazione radio base
Progettazione della frequenza Per tutte le celle viene usata la stessa frequenza
Ottimizzazione e monitoraggio Questi fattori hanno maggiore rilevanza rispetto al caso GSM
Tab. 3.3 – Sintesi dell’evoluzione del Network Planning
31
4 – Metodi di ottimizzazione della copertura cellulare nel sistema
UMTS
Come si può dedurre dalle considerazioni fatte in percedenza, i classici
modelli usati per ottimizzare le reti di seconda generazione non risultano
adatti per la pianificazione di reti UMTS, poiché, rispondendo solo ad
esigenze di copertura, non tengono conto né della distribuzione del traffico,
né delle esigenze di qualità del servizio, né tantomeno del meccanismo di
Power Control.
Dalla cospicua mole di letteratura scientifica trovata a riguardo, si evince
che in molti si sono prodigati per far fronte a queste nuove esigenze,
trovando spesso nuove ed interessanti soluzioni.
Un contributo fondamentale lo si deve senza dubbio al Politecnico di
Milano (Amaldi, Capone, Malucelli) dove, sotto varie forme, sono stati
sviluppati modelli ed algoritmi di ottimizzazione, la cui misura di qualità si
basa sul rapporto segnale-interferenza (SIR). L’idea parte dall’osservazione
che nello schema di accesso dell’UMTS il numero di connessioni per cella
non è limitato a priori, ma dipende dal livello d’interferenza presente in
quel momento all’interno di essa, che deve essere tale da garantire un SIR
accettabile. Il livello di interferenza è funzione della potenza emessa, la
quale, per il meccanismo di power control (PC), dipende dalla posizione
delle stazioni mobili (MS). Essendo limitata la potenza erogabile, quando il
livello di interferenza risulta troppo alto, le MS che si trovano più lontane
dalla SRB potrebbero non godere più di un SIR adeguato. L’area coperta
dalla cella risulta, perciò, fortemente dipendente dalla distribuzione del
traffico e la sua misura può variare in funzione del corrente livello di
interferenza (effetto cell breathing).
Il loro studio ha come scopo quello di fornire modelli di ottimizzazione atti
a supportare le decisioni relative al processo di posizionamento e
32
configurazione di nuove SRB, partendo dai meccanismi di PC
comunemente usati (basati sull’aumento della potenza in trasmissione, al
fine di mantenere una determinata potenza in ricezione, Ptarget, o un certo
rapporto segnale interferenza, SIRtarget).
Dato un classico problema di network planning, con un set di siti candidati
all’installazione di una SRB, un set di punti di test con la relativa domanda
di traffico e una matrice di guadagno di propagazione (ottenuta ad esempio
con il modello Hata), si vuole selezionare una configurazione di SRB che
massimizzi la capacità e minimizzi i costi, sia nel caso di PC basato sulla
potenza, sia di PC basato sul SIR. Per far ciò si è scelto di utilizzare
algoritmi Randomized Greedy (devised e reverse) e algoritmi Tabu Search
(TS). Si procede prendendo un sottoinsieme del set di siti disponibili.
Assegnata ad ogni SRB il test point più prossimo, si ordinano per valori
non crescenti di potenza emessa le SRB per cui vale SIRj<SIRmin e
eliminando tutte quelle che non rispettano questa condizione. Ora nel caso
di algoritmo devised greedy randomized (Add) si aggiungono
iterativamente, partendo dall’insieme vuoto, le SRB e si valuta la funzione
da massimizzare sull’unione del sottoinsieme corrente con tutte le SRB
(prese singolarmente) che in quel momento non fanno parte del
sottoinsieme. L’algoritmo ha termine quando l’aggiunta di una SRB
peggiora il valore della funzione. In modo analogo si procede facendo uso
dell’algoritmo reverse greedy randomized (Remove), ma questa volta si
rimuovono iterativamente le SRB partendo dal set completo e si valuta la
funzione sull’insieme di SRB corrente, privato a turno di tutte le SRB che
lo compongono. La condizione di stop risulta analoga alla precedente.
Il TS è un algoritmo che guida una procedura di ricerca locale a esplorare
lo spazio delle soluzioni di problemi di ottimizzazione tra gli ottimi locali.
L’idea che c’è alla base è di usare la storia del processo di ricerca
33
attraverso un appropriato schema di memoria al fine di prevenire il cycling
ed esplorare le regioni dello spazio delle soluzioni più promettenti in
termini di funzione obiettivo. Nello specifico, si considera un set di SRB
attive, generato attraverso una procedura Add o Remove, come soluzione
iniziale. Su questa soluzione per mezzo delle azioni di add e remove e di
una un’azione di swap (che provveda ad installare una nuova SRB in un
sito vuoto, mentre ne rimuove una esistente), creiamo un nuovo set di
soluzioni. Dopo aver valutato la funzione obiettivo su ognuna di esse, si
ripete il procedimento su quella che è risultata la migliore dal punto di vista
della funzione obiettivo. Si crea così una sequenza di soluzioni. Al fine di
prevenire il cycling e di evitare gli ottimi locali, viene mantenuta una lista
di “azioni tabu” che non devono essere eseguite per un numero di iterazioni
pari alla lunghezza stessa della lista. In particolare, SRB che sono installate
(disattivate) non possono essere disattivate (installate) per un numero di
iterazioni pari alla lunghezza della lista. Dopo un certo numero di iterazioni
(stabilito a priori) viene riportata la soluzione migliore tra quelle generate.
Da risultati sperimentali si trova che se da una parte gli algoritmi devised
greedy e reverse greedy randomized garantiscono buone soluzioni in tempi
ragionevoli, dall’altra l’algoritmo TS apporta significativi miglioramenti
alle soluzioni approssimate da essi ottenute.
Gli stessi autori hanno provveduto a trattare con le stesse tecniche
(opportunamente adattate) anche il network planning dal punto di vista
downlink, fondamentale quando il traffico è di tipo asimmetrico, e
l’ottimizzazione della copertura attraverso la configurazione delle SRB (dal
punto di vista dell’altezza, della rotazione e del tilt delle antenne).
Come si è più volte detto, un aspetto molto delicato dell’UMTS è
rappresentato dalla qualità del servizio (QoS). Particolarmente interessante
è l’approccio basato sulla Indicator Matrix (IM)(Jamaa, Altman, Ortega,
34
Fourestié). Si prendono in considerazione due tipi di matrici: interferenza e
macrodiversità, i cui elementi rappresentano, rispettivamente, l’interazione
tra ogni coppia di SRB e la parte di rete di una cella che è in macrodiversità
con una coppia di SRB. L’algoritmo di ottimizzazione si esplica nei quattro
passi seguenti (Fig.4.1):
1) Selezione delle SRB da modificare. Si seleziona un insieme di SRB
con scarsa QoS;
2) Raggruppamento in sottoinsiemi indipendenti. Volendo accelerare il
processo di ottimizzazione, si cerca di modificare simultaneamente il
maggior numero possibile di SRB. Si divide l’insieme di partenza in
sottoinsiemi, secondo la matrice di macrodiversità;
3) Scelta delle SRB e dei parametri da modificare. In ogni sottoinsieme
le SRB sono classificate in accordo alla massima interferenza
generata. Si decide di modificare la peggiore, agendo essenzialmente
su due parametri, il tilt dell’antenna, il quale influisce sia sulla
copertura, sia sul path loss delle MS che si trovano all’estremità della
cella, e la potenza di canale, la cui riduzione migliora la capacità
della SRB.
4) Convalida delle modifiche. Si procede con la valutazione della nuova
QoS: nel caso se ne rilevino miglioramenti, si procede alla convalida
dei valori modificati.
35
Questo metodo può essere impiegato per introdurre misure correttive
all’interno di un tool di ottimizzazione più complesso.
Fig. 4.1 – Diagramma a
blocchi del processo
Nella figura 4.2 sono rappresentati i miglioramenti apportati alla rete
iniziale.
Fig. 4.2 – Richiesta di
traffico in funzione del suo
soddisfacimento nel servizio
voce.
36
Nel precedente capitolo si è fatto cenno all’inadeguatezza rispetto al nostro
problema dei tool di ottimizzazione studiati per i precedente sistemi
radiomobili. A tal proposito si può introdurre STORMS (Software Tools
for the Optimization of Resources in Mobile Systems), un progetto di
ricerca europeo realizzato nell’ambito dell’ACTS Program (Advanced
Communications, Technologies and Services). Esso sarà il primo planning
tool di terza generazione. Partendo da un insieme di possibili locations e
dalle relative caratteristiche (Fig.4.2 (a)), si studiano per ognuna di esse le
caratteristiche di copertura. Per ogni coppia si computa l’area di
intersezione tra le due celle e si riporta il tutto su un grafo (Fig.4.2 (b)), i
cui vertici sono rappresentati dalle locations e i rami esistenti tra coppie di
vertici rappresentano l’overlap tra le due celle.
Fig.4.2 (a) – Aree di copertura Fig.4.2 (b) – Grafo
Il grafo è costruito in accordo a una funzione di interdizione: se esiste un
ramo tra due SRB, esse non possono essere entrambe presenti nella
soluzione finale. La funzione di interdizione crea una linea se il rapporto tra
la grandezza dell’overlap e la grandezza della cella supera un certo valore,
stabilito in base a ragioni economiche o tecniche. La soluzione sarà
rappresentata da un insieme di SRB che non contravvengono alla regola di
interdizione. Capacità e copertura saranno massimizzate, nel più grande
insieme di questo tipo, Maximum Independent Set (MIS). Uno dei compiti
37
di STORMS sarà proprio quello di trovare il MIS. Il processo è illustrato in
Fig. 4.3.
Fig. 4.3 – Network planning process STORMS
38
4.1 – Approccio genetico alla pianificazione cellulare di Terza
Generazione (3G)
Un contributo particolarmente significativo allo sviluppo e al
perfezionamento del network planning 3G lo si deve senza dubbio
all’introduzione in questo tipo di problematica degli algoritmi genetici. La
loro natura li rende, infatti, decisamente adatti ad essere impiegati in un
campo che, per ricchezza di variabili, risulta molto affine a quello a cui essi
si ispirano.
I numerosi studi effettuati a riguardo hanno messo in evidenza come varie
siano le forme sotto cui gli AG possono essere sfruttati.
L’approccio iniziale (Calégari ed altri) è stato quello di rappresentare in
una stringa di bit l’insieme completo delle possibili locations. Ogni stringa
rappresenta una possibile disposizione di SRB sul territorio, dove all’ ‘1’ o
allo ‘0’ corrisponde o meno la presenza di quella SRB in quella soluzione.
Ora, a partire da un insieme di possibili soluzioni (popolazione) a cui
vengono applicati (dopo opportuna selezione) gli operatori di mutazione e
crossover, si arriva, dopo un certo numero di generazioni, ad una
disposizione ottima, in termini di funzione fitness, delle SRB sul territorio.
Per cercare di ridurre i tempi di run dell’algoritmo si è pensato di dividere
la popolazione in sottoinsiemi (isole) in cui gli individui si evolvono
indipendentemente, permettendo dopo un certo numero di generazioni
scambi di individui tra sottoinsiemi (migrazione)(Fig.4.4).
Fig.4.4 -
Migrazione
Isola 4
Isola 0
Isola 3
Isola 1
Isola 2
39
Se nei primi studi la funzione fitness teneva conto essenzialmente della
copertura del territorio, in lavori successivi (Laki ed altri) si è cercato di
introdurre anche la valutazione di ulteriori parametri, al fine di ottimizzare
il planning anche dal punto di vista del path loss e del delay spread,
ottenendo buoni risultati in tempi ragionevoli.
Ma questi rappresentano solo i primi passi, seppur significativi, nello
sfruttamento degli AG. Studi successivi (F. Garzia, R. Cusani) hanno
introdotto tra i parametri da ottimizzare non solo la posizione ma anche la
rotazione delle antenne, rimuovendo l’ipotesi semplificativa di diagramma
radiativo circolare (Fig.4.5), tenendo conto, nella funzione fitness, oltre
che della copertura, anche di una componente di costo .
Fig. 4.6 – Risultato ottimizzazione copertura-
costi tenendo conto della struttura
trilobica dei diagrammi di radiazio-
ne delle SRB.
40
Altri ancora (Park, Yook, Park) hanno messo in evidenza come gli AG
possano essere efficacemente utilizzati anche in presenza di traffico
disomogeneo, in cui la copertura delle SRB è limitata dal proprio carico di
traffico. Per ogni SRB viene determinata non solo la posizione, ma anche la
potenza in trasmissione, sulla base di un modello di interferenza. Inoltre,
anche in questo caso, la funzione fitness è costruita in modo da ottimizzare
non solo la copertura (lasciando però l’ipotesi semplificativa di circolarità
del diagramma di radiazione della SRB), ma anche i costi, sulla base di pesi
opportunamente scelti in base ai requisiti di progetto (Fig.4.7).
Fig. 4.7(a) – Situazione iniziale Fig. 4.7(a) – Situazione finale
A testimonianza del fatto che i GA possono essere usati nei modi più
disparati, c’è il lavoro svolto all’università di Singapore (Wang, Long,
Lee). Si è pensato di inizializzare una popolazione di individui che
codificano le coordinate delle SRB, la loro altezza, la potenza in
trasmissione, i guadagni delle antenne e di valutare gli individui non con le
consuete funzioni fitness, ma attraverso il valore del Path Loss, ottenendo
apprezzabili risultati.
Altri ancora (Huang, Behr, Wiesbeck) hanno pensato di utilizzare i GA in
processi integrati, in cui dopo aver regolato i parametri di ogni cella
attraverso un sistema fuzzy, si procede con l’ottimizzazione genetica e si
sistema il traffico mediante cell splitting.
41
L’efficacia di questo tipo di approccio è testimoniata anche dall’utilizzo
degli AG come base per veri e propri tool di ottimizzazione. Ne è un
esempio OaSys (Altman, Picard, Jamaa, Fourestié), un automatic cell
planning (ACP) tool per reti UMTS, che regolando i parametri di antenna e
di sistema tramite GA ottimizza copertura, capacità e costi della rete.
Fig. 4.8 – OaSys tool
Ma le ricerche in questo senso sono destinate a continuare: tanti sono i
parametri di cui non si è ancora scelto di tener conto e tanti gli aspetti che
possono essere raffinati, in particolar modo dal punto di vista della qualità
del servizio.
42
5 – OTTIMIZZAZIONE DELLA PROGETTAZIONE
DELL’INTERFACCIA RADIO UMTS (IMPOSTAZIONE)
5.1 – Premessa
Come abbiamo visto nelle precedenti sezioni, dalle loro caratteristiche e
dalla grande rilevanza data loro nella letteratura scientifica, gli algoritmi
genetici ben si adattano ad essere usati come tecnica di ottimizzazione
cellulare. Vediamo ora come impiegarli, con le nostre risorse, ai nostri
scopi.
Essendo molti i requisiti da soddisfare ed i vincoli cui far fronte, si è
pensato di considerare diverse situazioni al fine di mettere in evidenza la
grande duttilità di questa tecnica. Per ognuna di esse si è deciso di seguire
lo schema di progettazione ed ottimizzazione illustrato nel terzo capitolo.
5.2 – Progettazione della rete e ottimizzazione
5.2.1 - Dimensionamento
In tutti i casi è stato preso in considerazione un territorio 3 km x 3 km .
Si è deciso di fare l’ipotesi di area suburbana il cui livello di traffico è stato
fissato a 320 unità. Si tratta di un parametro scarsamente realistico, ma che
ci consente di non appesantire la rappresentazione, pur senza
compromettere la validità del lavoro. Il traffico è stato distribuito sul
territorio tramite una funzione creata ad hoc, che distribuisce una parte
degli utenti in modo random e concentra l’altra in un numero di aree
limitato in modo da dover gestire una distribuzione non omogenea di
traffico.
A questo punto del progetto non si è ritenuto opportuno definire requisiti
minimi di capacità e/o di copertura, esulando questo, almeno per il
momento, dagli scopi del presente lavoro.
43
5.2.2 – Progettazione
Sono state impiegate per le SRB antenne ad alto guadagno, tipo Kathrein
742-212, la cui scheda tecnica è riportata in appendice al capitolo). I
parametri di configurazione del sito e del collegamento sono riportati in
Tab. 5.1.
Tab. 5.1 – Parametri di progetto
Trattandosi di area suburbana si assume che le SRB siano collocate su
edifici, che per semplicità verranno considerati della stessa altezza.
Fig. 5.1 – Collocazione SRB
Parametri
di progetto
Unità di misura Valore
Frequenza MHz 2100
Potenza in Tx per connessione W 1
Potenza in Tx dBm 42.12
Potenza del rumore dBm 105.09
Cable loss Tx dB 4
Cable loss Rx dB 0
Guadagno antenna Tx (SRB) dBi 18
Guadagno antenna Rx (MS) dBi 2
Campo minimo Emin Vm-1
0.5
44
5.2.3 - Ottimizzazione
A seconda delle relative specifiche, la progettazione di una interfaccia radio
UMTS può richiedere di essere affrontata in diversi modi. Il progettista
deve quindi poter avere a disposizione degli handles di ottimizzazione che
gli permettano di agire efficientemente a seconda delle varie esigenze.
Proprio per questo motivo, si è pensato di codificare varie funzioni con lo
scopo di far fronte a tutte le circostanze almeno per quanto riguarda il
posizionamento sul territorio delle stazioni radio base.
Per far ciò ci siamo avvalsi del nuovo tool di Matlab, Genetic Algorithms
Toolbox (cui abbiamo fatto cenno nel secondo capitolo), che, fornendoci gli
strumenti basilari per condurre l’ottimizzazione basata su GA, ci ha
permesso di focalizzarci sul problema da affrontare, relegando ad un piano
di gestione e perfezionamento il trattamento degli operatori genetici.
Poiché a seconda delle esigenze è necessario che i valori di default, che nel
toolbox sono stati scelti per dimensionare i vari parametri, vengano
opportunamente modificati, li riportiamo per una maggiore chiarezza nella
tabella 5.2.
PopulationType: PopInitRange PopulationSize: EliteCount: CrossoverFraction: MigrationDirection: MigrationInterval: MigrationFraction: Generations: TimeLimit: FitnessLimit: StallLimitG StallLimitS:
'doubleVector' [2x1 double] [0 ;1] 20 2 0.8000 'forward' 20 0.2000 100 Inf -Inf 50 20
InitialPopulation InitialScores: PlotInterval CreationFcn: FitnessScalingFcn: SelectionFcn: CrossoverFcn: MutationFcn: HybridFcn: Display: PlotFcns: OutputFcns Vectorized
[] [] 1 @gacreationuniform @fitscalingrank @selectionstochunif @crossoverscattered @mutationgaussian [] 'final' [] [] 'off'
Tab. 5.2 – Default di GAToolbox
45
Dopo un breve cenno alle assunzioni ed alle formule utilizzate nella
codifica delle funzioni, illustreremo caso per caso le situazioni prese in
esame e le relative soluzioni proposte.
5.2.3.1 – Criteri
Si è scelto per semplicità, senza però venire meno ai nostri scopi, di
considerare di forma circolare il diagramma di radiazione complessivo di
ogni SRB, trascurando la caratteristica configurazione trilobica di cui
abbiamo parlato in precedenza, rimandando a trattazioni future una
particolarizzazione in questo senso.
Ogni funzione tratta la copertura con precisione ai 10 metri. È,
chiaramente, possibile adottare una precisione maggiore, ma nel nostro
caso può essere ritenuta sufficiente.
I parametri di progetto sono stati ricavati come segue.
Il raggio di copertura di ogni cella è stato ricavato in accordo alla seguente
formula
dsoglia= (30 x G x P)1/2 (5.1) Elimite
dove
G è il guadagno dell’antenna, rispetto ad un’antenna isotropa, in lineare;
P è la potenza al connettore d’antenna, espressa in [W];
Elimite è il minimo campo elettrico, espresso in [Vm-1] per cui consideriamo
ci sia ancora copertura;
dsoglia è il raggio di copertura, espressa in [m];
Per la sensibilità del ricevitore si è fatto uso di
Prx = Ptx + Gtx + Grx - PL - Lctx – Lcrx (5.2)
dove
Prx è la sensibilità del ricevitore, espressa in [dBm];
46
Ptx è la potenza in trasmissione, espressa in [dBm];
Gtx e Grx sono i guadagni delle antenne rispetto ad una antenna isotropa,
rispettivamente, in trasmissione e in ricezione, espressi in [dBi];
Lctx e Lcrx sono i cable loss, rispettivamente, degli apparati trasmittenti e
riceventi, espressi in [dB];
PL è il path loss, espresso in [dB], ricavato come
PL=32.44 + 20*Log f + 20*Log d, dove f è la frequenza in [MHz] e d è la
distanza in [km].
SIR = SF Pr (5.3) Iin + Iout + η
Dove:
SF è lo Spreading Factor2;
Pr è la potenza ricevuta;
Iin è l’interferenza intracellulare;
Iout è l’interferenza intercellulare;
η è il rumore termico;
2 È l’allargamento di banda dovuto al solo processo di spreading (nel sistema UMTS la banda occupata da un segnale codificato è maggiore della banda originale del segnale dell’utente; la tecnica CDMA è una modulazione a spettro espanso (Spread Spectrum); l’operazione di espansione della banda viene denominata “spreading del segnale”).
47
5.2.3.2 – Casi di interesse
Situazione 1
Il progettista ha la necessità di progettare una disposizione di SRB sul
territorio, non avendo a disposizione informazioni sul livello di traffico.
Non sono posti vincoli né sul numero delle SRB, né sui siti disponibili. Il
suo compito sarà quello di ottimizzare la copertura cellulare solo a livello
territoriale, trascurando la capacità di rete.
La funzione è stata costruita in modo da soddisfare questa necessità,
ricevendo in input le informazioni attraverso la seguente codifica genetica.
Facendo riferimento alle corrispondenze “bio-algoritmiche” viste nel
secondo capitolo, avremo che il cromosoma sarà un vettore double che
rappresenta la disposizione delle SRB sul territorio. Per determinare la
lunghezza del cromosoma abbiamo calcolato il numero di SRB minimo
necessario a coprire la percentuale di territorio desiderata come
N_SRBmin=ceil (pT x Atot/CSRB) (5.4)
dove
Atot rappresenta l’area della zona oggetto di studio;
pT è la percentuale di territorio di cui si desidera la copertura;
CSRB è la massima area coperta da ciascuna SRB;
ceil è un operatore che ci restituisce l’intero superiore del suo argomento.
Vista l’innaturale troncamento del territorio e l’impossibilità di “incastrare”
perfettamente tra loro i diagrammi di radiazione, non possiamo
evidentemente ritenere sufficiente il valore calcolato in (2), ma dobbiamo
inizializzare il numero di SRB con un suo multiplo: si è ritenuto sufficiente
prendere il doppio. All’interno del cromosoma le SRB saranno
rappresentate da tre geni, due per la posizione (coordinate x e y) e uno
rappresentante il suo impiego. La lunghezza del cromosoma sarà dunque
48
n*N_SRBmin*numero di parametri (5.5)
per noi 2*23*3=138.
Abbiamo provato ad arricchire questa situazione aggiungendo come
parametro la potenza in funzione della quale abbiamo fatto variare il raggio
di copertura, secondo la (5.1).
La popolazione iniziale deve essere determinata in funzione della
lunghezza del cromosoma. Nel nostro caso essa è stata quantificata in 600
individui. Per favorire la convergenza, siccome il Genetic Algorithm
Toolbox ce ne da la possibilità abbiamo stabilito il range di variazione della
popolazione iniziale come una matrice 2x138 (2x184 nel caso in cui si
tenga conto della potenza), nella quale vengono stabiliti i valori minimi e
massimi per ciascuna variabile. Questo è un passo quasi obbligato, poiché
il tool ha come range di variazione di default l’intervallo [0; 1], lasciando
invariato il quale si arriverebbe a scarsi risultati. Per quel che concerne la
funzione fitness, essa sarà il risultato del bilancio tra massimizzazione
dell’area coperta, minimizzazione dell’overlapping e contenimento dei
costi (a cui possiamo aggiungere minimizzazione della potenza nel caso in
cui teniamo conto anche di quest’ultima). Diversamente da come si è
abituati quando ci si relaziona con gli algoritmi genetici, il tool lavora
minimizzando lo score della funzione fitness. Essa sarà quindi della forma:
α*(area totale – area coperta)+β*overlapping + γ* N_SRB area totale area totale n * N_SRBmin
I valori di α, β e γ vengono scelti in modo tale che si raggiunga la
copertura voluta, tenendo conto del costo della rete, senza eccedere con la
sovrapposizione dei diagrammi di radiazione (che naturalmente non può
essere evitata, vista la forma di questi ultimi).
49
Di seguito viene riportata la command window di Matlab con
l’implementazione scelta per l’ottimizzazione.
Fig. 5.1 – Implementazione ‘Situazione 1’
Situazione 2
Il caso precedente, a parte il mezzo impiegato, non aggiunge niente di
nuovo a quella che poteva essere l’ottimizzazione relativa ad un sistema di
comunicazione precedente.
Trattandosi di Network planning UMTS, non possiamo, evidentemente,
trascurare la capacità della rete e la qualità del servizio (QoS).
Come possiamo immaginare, all’interno di un territorio il traffico non sarà
distribuito in modo omogeneo. I punti in cui si concentrano gli utenti
vengono definiti hot spot. È ora evidente che, dovendo garantire una certa
QoS, il progettista dovrà cercare di minimizzare l’interferenza intra e
intercellulare, la quale dipende anche dalla potenza di trasmissione delle
SRB. Di conseguenza, scegliere di posizionare una SRB in un hot spot
rappresenta il primo passo verso l’ottimizzazione della rete. Con
l’implementazione che ora si andrà ad esporre, vedremo come far fronte a
questa esigenza.
FitnessFcn = @(pop) create_network_3x3_matrct(pop); my_plot_1 = @(options,state,flag) create_network_plot_3x3matrct(options, ... state,flag); options = gaoptimset('Generations',1000,'PopulationSize',550, ... 'StallGenLimit',200,'StallTimeLimit',inf,'MigrationInterval',10,'PlotFcns',{@gaplotbestf, my_plot_1},'PopInitRange', [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ... 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 ...1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1]); numberOfVariables = 138; [pop,fval,reason,output] = ga(FitnessFcn,numberOfVariables,options)
50
Data una distribuzione disomogenea di traffico nel territorio oggetto di
studio (di cui presentiamo un esempio in figura 5.2.), costruiamo una
funzione che accetti in input oltre alla popolazione, anche la posizione
degli utenti.
Fig. 5.2 – Esempio di distribuzione di traffico sul territorio
I rettangoli rossi rappresentano le zone dove
intenzionalmente si è voluta creare una concentrazione
di traffico.
Il cromosoma sarà sempre un vettore double di lunghezza pari al prodotto
del numero di SRB che si vogliono posizionare negli hot spot (N_SRBhs)
per il numero di parametri caratterizzanti ogni SRB. Nel nostro caso
abbiamo scelto di posizionare sei N_SRBhs e di caratterizzare ognuna di
esse per mezzo di tre parametri visti nel precedente caso. La funzione
fitness sarà del tipo:
51
α * (numero totale utenti – numero utenti coperti) + β * overlapping numero totale utenti area totale con pesi opportunamente scelti, mentre l’implementazione assume la forma
riportata in Fig.5.3.
Fig. 5.3 – Implementazione ‘Situazione 2’ L’importanza della funzione di ricerca degli hot spot risulta evidente se si
pensa ad essa come passo preliminare di un progetto composito, in cui si
vuole una copertura “intelligente” del territorio.
Il frutto di questa operazione può essere usato come input per alcune delle
situazioni che saranno mostrate in seguito.
FitnessFcn = @(pop) create_network_3x3_matr_hotspot(pop,X_coord,Y_coord); my_plot_1 = @(options,state,flag) create_network_plot_3x3matr_hs(options, ... state,flag,locations); options = gaoptimset('Generations',250,'PopulationSize',100, ... 'StallGenLimit',100,'StallTimeLimit',inf,'SelectionFcn',{@selectiontournament},'MutationFcn', {@mutationuniform, 0.02}, 'PlotFcns',{@gaplotbestf,my_plot_1},'PopInitRange',[ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 ]); numberOfVariables = 18; [pop,fval,reason,output] = ga(FitnessFcn,numberOfVariables,options)
52
Situazione 3
Ora proviamo, in un certo senso, ad unire le situazioni precedenti. Data una
distribuzione disomogenea di traffico e un numero di stazioni radio base
calcolato secondo la (5.4), il progettista avrà bisogno di un algoritmo che
sia in grado di massimizzare copertura e capacità, minimizzando i costi,
rappresentati dal numero di SRB impiegato.
Per quel che concerne la capacità, nella costruzione della funzione abbiamo
tenuto conto del fatto che, dovendo mantenere una certa QoS, ciascuna
cella avrà capacità limitata in funzione del valore del SIR. Considerando
che esso è dato dalla (5.3), definito un SIRmin, diciamo pari a 6 dB, un SF
pari a 128 ed esprimendo Iout in funzione di Iin come Iout=f x Iin (dove f ~=
0.4), possiamo esprimere il numero limite di connessioni come
N < = SF + 1 <= 23.3 (5.5) (1+f) x SIRmin
Il cromosoma sarà della forma e delle dimensioni di cui alla ‘Situazione 1’,
mentre la funzione fitness sarà della forma:
α* (area totale–area coperta)+ β* overlapping+ γ* numero delle SRB attive area totale area totale n * N_SRBmin
δ*(numero totale utenti – numero utenti coperti) numero totale utenti
L’implementazione è mostrata in Fig. 5.4
3 E.Amaldi, A.Capone, F.Malucelli - Planning UMTS Base Station Location: Optimization Models With
Power Control and Algorithms - IEEE transactions on wireless communications, vol. 2, no. 5, september 2003
53
Fig. 5.4 – Implementazione ‘Situazione 3’
Vogliamo che l’algoritmo risulti in grado, senza linee guida, di far fronte
alle richieste, nell’ipotesi ideale di non avere restrizioni né sul numero né
sui luoghi in cui posizionare le stazioni radio base.
Situazione 4
Nella realtà, per ragioni ambientali o giuridiche, non tutti i luoghi della
zona presa in considerazione potranno essere candidati come siti per le
SRB. Avendo a disposizione i siti disponibili, si avrà la necessità di avere
una funzione che accettando in input, oltre alla popolazione e alle
informazioni riguardanti il traffico, le coordinate delle possibili locations,
le selezioni al fine di ottimizzare la rete dal punto di vista della copertura,
della capacità e dei costi. Per il nostro esempio, scegliamo come possibili
siti i vertici di una griglia equispaziata di 150 metri sul territorio. Il
cromosoma sarà questa volta una stringa di bit di lunghezza pari al numero
dei possibili siti. Ogni bit ‘1’ implicherà, per quella soluzione, la presenza
sul territorio della SRB corrispondente alla sua posizione, in caso contrario,
FitnessFcn = @(pop) create_network_3x3_matr_us_covqos(pop,X_coord,Y_coord); my_plot_1 = @(options,state,flag) create_network_plot_3x3matr_us_covqos(options, ... state,flag,locations); options = gaoptimset('Generations',1000,'PopulationSize',200, ... 'StallGenLimit',200,'StallTimeLimit',inf,'MutationFcn', {@mutationgaussian, 0.05},'PlotFcns',{@gaplotbestf,my_plot_1},'PopInitRange',[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1 3 3 1]); numberOfVariables = 138; [pop,fval,reason,output] = ga(FitnessFcn,numberOfVariables,options)
54
non ci sarà alcun contributo da parte della SRB. La funzione fitness rimarrà
quella della situazione precedente e l’implementazione viene di seguito
riportata.
Fig. 5.5 – Implementazione ‘Situazione 4’
È in questo ambito che ci può tornare utile il risultato della situazione
presentata al punto 2. In particolare esso può essere considerato come passo
preliminare al presente: individuati, infatti, gli hot spot e posizionati nella
tabella di input, possiamo imporre, agendo sulle options del toolbox, che in
ogni soluzione nelle aree individuate essere hot spot, siano sempre
posizionate stazioni radio base.
Con questa funzione, dunque, compito del progettista rimarrà
essenzialmente quello di modificare le variabili di input al tool al fine di
poter elaborare correttamente la tabella in ingresso (che può essere ricavata
anch’essa tramite AG, attraverso una delle funzioni viste in precedenza
opportunamente riveduta).
Situazione 5
Si tratta di una situazione analoga alla precedente, ma in questo caso il
vincolo non è solo territoriale, ma anche economico. In particolare, il
progettista ha la possibilità di gestire un numero limitato di SRB. Compito
dell’algoritmo è questa volta massimizzare capacità e copertura. Il
FitnessFcn = @(pop) create_network_3x3_matr_lbsqos(pop,X_coord,Y_coord, LOC_X,LOC_Y); my_plot_1 = @(options,state,flag) create_network_plot_3x3matr_lbs(options, ... state,flag,LOC_X,LOC_Y,locations); options = gaoptimset('Generations',1000,'PopulationType','bitstring','PopulationSize',100, ... 'StallGenLimit',200,'StallTimeLimit',inf,'MutationFcn', {@mutationuniform, 0.03},'PlotFcns',{@gaplotbestf,my_plot_1}); numberOfVariables = 361; [pop,fval,reason,output] = ga(FitnessFcn,numberOfVariables,options)
55
cromosoma tornerà ad essere un vettore double, di lunghezza questa volta,
pari al numero di SRB a disposizione. Per favorire la convergenza sarà
opportuno inizializzare la popolazione con un range di variazione pari al
numero delle possibili location.
Fig. 5.5 – Implementazione ‘Situazione 5’
È interessante vedere come si comporta nel caso esso sia inizializzato a un
numero sufficiente di SRB e nel caso contrario.
Situazione 6
Come sappiamo, punto sensibile del sistema UMTS è la potenza in
trasmissione, soprattutto per quanto riguarda la qualità del servizio. Il
progettista avrà la necessità di dover collocare le SRB sul territorio anche
in base a un criterio di minimizzazione delle potenze in gioco. Obiettivo
della nostra funzione è proprio fornire gli strumenti per farlo, pur
mantenendo una accettabile qualità del servizio.
Introdurremo, quindi, come ulteriore parametro del sito la potenza. Se nella
“situazione 1” l’unica conseguenza risultava la variazione del raggio di
copertura della cella, ora faremo in modo che con la potenza, come è ovvio,
vari anche la capacità del sito.
Partendo dal fatto che la (5.5) può essere riscritta come
SIR = SF Pr (5.6) (N-1) Pr + η
FitnessFcn = @(pop) create_network_3x3_matr_pbsqos(pop,LOC_X,LOC_Y, X_coord,Y_coord); my_plot_1 = @(options,state,flag) create_network_plot_3x3matr_pbs(options, ... state,flag,LOC_X,LOC_Y,locations); options = gaoptimset('Generations',2000,'PopulationSize',250, ... 'StallGenLimit',200,'StallTimeLimit',inf,'MutationFcn', {@mutationgaussian, 0.05}, 'PlotFcns',{@gaplotbestf,my_plot_1},'PopInitRange',[1;361]); numberOfVariables = 30; [pop,fval,reason,output] = ga(FitnessFcn,numberOfVariables,options)
56
e fissato un SIRmin, per cui rimane garantita la QoS, possiamo esprimere la
capacità di una cella in funzione della potenza ricevuta Pr come:
N = SF - η + 1 (5.7) SIRmin Pr
L’implementazione, a parte le necessarie azioni correttive atte ad introdurre
le varianti appena descritte, resta pressoché la medesima. Alla funzione
fitness usata in precedenza sarà aggiunta una componente che valuti la
potenza complessiva della rete.
Fig. 5.6 – Implementazione ‘Situazione 6’
FitnessFcn = @(pop) create_network_3x3_matr_us_covqosp(pop,X_coord,Y_coord); my_plot_1 = @(options,state,flag) create_network_plot_3x3matr_us_covquosp(options, ... state,flag,locations); options = gaoptimset('Generations',1000,'PopulationSize',200, ... 'StallGenLimit',200,'StallTimeLimit',inf,'MutationFcn', {@mutationgaussian, 0.05},'PlotFcns',{@gaplotbestf,my_plot_1},'PopInitRange',[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1 3 3 16.3 1]); numberOfVariables = 138; [pop,fval,reason,output] = ga(FitnessFcn,numberOfVariables,options)
57
5.2.4 – Testing
Situazione 7
Come ultimo scenario presentiamo un prototipo di procedura di Power
Control centralizzato. L’idea nasce dall’esigenza di un test a conclusione
della fase di progettazione, al fine di valutare la robustezza della rete ad
una variazione di traffico. Dato, quindi, il set di SRB il cui numero e la cui
posizione sul territorio sono stati stabiliti in fase di progetto, vediamo
come, introducendo come sola variabile la potenza e facendo uso delle
formule precedentemente introdotte, l’algoritmo provvede a minimizzarne
la potenza complessiva, garantendo il servizio a tutti gli utenti. La funzione
fitness è costituita unicamente dall’elemento che ne valuta la potenza,
mentre la capacità totale sarà garantita da una funzione di penalità, che
provvede a scartare le soluzioni che non sono in grado di soddisfare una
data percentuale di utenti.
Fig. 5.7 – Implementazione ‘Situazione 7’
5.2.5 – Monitoring
Si è ritenuto opportuno nella terza fase monitorare l’evoluzione del
fenotipo generazione per generazione, mediante una semplice funzione di
plot adattata alle specifiche richieste dal tool, al fine di provvedere ad un
raffinamento in corso d’opera dei parametri di implementazione
dell’algoritmo. La funzione rappresenterà il punto effettivo di collocazione
FitnessFcn = @(pop) create_network_3x3_matr_pc(pop,LOCATE_X,LOCATE_Y, X_coord,Y_coord); my_plot_1 = @(options,state,flag) create_network_plot_3x3matr_pc (options, ... state,flag,LOCATE_X,LOCATE_Y,locations); options = gaoptimset('Generations',100,'PopulationSize',80, ... 'StallGenLimit',200,'StallTimeLimit',inf,'MutationFcn', {@mutationgaussian, 0.05}, 'PlotFcns',{@gaplotbestf,my_plot_1},'PopInitRange',[0;16.3]); numberOfVariables = 25; [pop,fval,reason,output] = ga(FitnessFcn,numberOfVariables,options)
58
delle SRB sul territorio, nonché l’area di copertura e la distribuzione del
traffico sul territorio.
59
60
6 – OTTIMIZZAZIONE DELLA PROGETTAZIONE
DELL’INTERFACCIA RADIO UMTS (RISULTATI)
Presentiamo ora i risultati ottenuti attraverso l’utilizzo delle funzioni
elaborate nel precedente capitolo.
Situazione 1
La prima funzione si prefiggeva di ottimizzare il problema dal punto di
vista della sola copertura del territorio, tenendo conto del fattore costo.
Sono stati rilevati i seguenti risultati.
Nel primo caso (Fig. 6.1 (a), (b)), abbiamo scelto come pesi per la funzione
fitness α = 0.6, β=0.1, γ=0.3.
La presenza di una forte componente di costo ha in parte penalizzato la
massimizzazione della copertura.
Fig. 6.1 (a) – Situazione iniziale Fig. 6.1 (b) – Situazione dopo 300 generazioni
La convergenza della popolazione è mostrata in figura 6.2 (c). La
popolazione tende a convergere solo nelle ultime generazioni, per la
presenza all’interno della funzione di una funzione di penalità.
Si è ottenuta la copertura del 89.3% del territorio, impiegando un numero
di SRB pari a 23.
61
Fig.6.1 (c) – Convergenza popolazione
Nel secondo caso (Fig. 6.2 (a), (b)) sono stati scelti i seguenti pesi: α = 1,
β=0, γ=0.
Si è, in pratica, scelto di massimizzare la copertura a scapito del fattore di
costo. Vediamo, però, che per come è stata costruita, la funzione tenderà
comunque a limitare il numero di SRB presenti sul territorio, valutando di
volta in volta se il guadagno in copertura giustifichi o meno l’aggiunta di
una nuova SRB.
Fig. 6.2 (a) – Situazione iniziale Fig. 6.2 (b) – Situazione dopo 300 generazioni
62
In questo caso rileviamo una copertura del territorio del 98,1% ottenuta con
27 SRB. La situazione finale dei criteri di stop è mostrata in fig. 6.2 (c).
Fig. 6.2 (c) – Situazione dei criteri di stop al termine del processo
(l’algoritmo ha avuto termine per il raggiungimento del
numero massimo di generazioni)
Situazione 2
Scopo di questa funzione era quella di posizionare un dato numero di SRB
in un pari numero di hot spot.
Vista l’univocità della richiesta non si è vista la necessità di analizzare più
di un caso. Si sono scelti i seguenti pesi α=0.9 e β=0.1.
Dalle figure 6.3 (a) – (b), si evince che la specifica risulta soddisfatta,
poiché con sei SRB si è coperto il 63% degli utenti.
63
Fig. 6.3 (a) – Individuazione degli hot spot
Fig.6.3 (b) – Convergenza della popolazione
Situazione 3
Data una distribuzione non omogenea di traffico, si richiedeva alla
funzione di massimizzare capacità e copertura contenendo i costi.
Nel primo caso (Fig. 6.4 (a) – (b)) si sono scelti i seguenti pesi α=0.3,
β=0.1, γ=0.2 e δ=0.5. Si è dato chiaramente maggiore rilievo alla
componente capacitiva.
64
Fig.6.4 (a) – Situazione
Fig. 6.4 (b) – Situazione dopo 1000 generazioni
Fig. 6.4 (c) – Convergenza della popolazione
65
Si è ottenuta per mezzo di 25 SRB la copertura del 92,3% del territorio e
del 99,06% degli utenti.
Nel secondo caso (Fig. 6.5 (a) – (b)), scegliendo i seguenti pesi α=0.5,
β=0.1, γ=0.2 e δ=0.3, si è deciso di prendere in considerazione la
situazione complementare.
Fig.6.5 (a) –Situazione iniziale
Fig. 6,5 (b) – Situazione dopo 1000 generazioni
66
Fig. 6.5 (c) – Convergenza della popolazione
Sono stati ottenuti i seguenti risultati a fronte dell’impiego di 25 SRB:
- Copertura del territorio: 96.8%
- Copertura utenti: 98.12%
Situazione 4
Scopo di questa funzione era ottimizzare la funzione in termini di capacità
e copertura, avendo a disposizione un numero limitato di siti.
Fig. 6.6 (a) – Situazione iniziale Fig. 6.6 (b) – Situazione dopo 500
generazioni
67
Fig. 6.6 (c) – Convergenza della popolazione
A fronte dell’impiego di 26 SRB, si ottiene una copertura dell’88.9% del
territorio e una capacità del 98.43% .
Questo risultato, di certo non ottimale, è dovuto principalmente, come si
può notare dalla Fig. 6.6 (c), alla convergenza prematura della popolazione
ad una soluzione non ottima (si è venuta a formare una popolazione
mediocre).
Situazione 5
In questa occasione si richiedeva alla funzione di massimizzare capacità e
copertura avendo a disposizione un numero limitato di siti e di SRB. Nel
primo caso (Fig. 6.7 (a) – (b)), abbiamo a disposizione 26 SRB.
68
Fig. 6.7 (a) – Situazione iniziale
Fig. 6.7 (b) – Situazione dopo 600 generazioni
Fig. 6.7 (c) – Convergenza della popolazione
69
Si è riuscito ad ottenere una copertura del 96.9% del territorio e del 98.75%
degli utenti.
Nel secondo caso (Fig. 6.8), abbiamo a disposizione 20 SRB (< N_SRBmin).
Fig. 6.8 (a) – Situazione iniziale
Fig. 6.8 (b) – Situazione dopo 300 generazioni
Con un numero insufficiente di SRB la funzione non può chiaramente dare
una copertura e una capacità soddisfacenti. Tuttavia possiamo rilevare che
70
per ottimizzare come meglio può la copertura, l’algoritmo tende a collocare
le SRB nei punti a maggior concentrazione di traffico.
Situazione 6
In questo caso si voleva uno strumento che permettesse, oltre alla
massimizzazione di copertura e capacità, anche una minimizzazione delle
potenze in gioco (Fig.6.9).
Fig. 6.9 (a) – Situazione iniziale
Fig. 6.9 (b) – Situazione dopo 1000 generazioni
71
Fig. 6.9 (c) – Convergenza della popolazione
In questo caso abbiamo una copertura del 94,9% del territorio e del 98.75%
degli utenti. Notiamo che la funzione ha posizionato SRB nei punti a
maggior intensità di traffico al fine di ridurre le potenze. Si può osservare
lasciando lavorare ancora l’algoritmo si sarebbero ottenuti risultati migliori
da un punto di vista della copertura, ma per lo scopo del nostro lavoro tali
risultati sono stati ritenuti sufficienti.
Situazione 7 (Test)
Si voleva che la funzione, stabilita la posizione delle SRB, regolasse la
potenza in funzione degli utenti.
72
Fig. 6.10 (a) – Situazione di partenza (tutte le SRB
lavorano a potenza massima)
Fig. 6.10 (b) – Situazione dopo 100 generazioni
La potenza risulta minimizzata senza
effetti sulla capacità iniziale
73
Fig. 6.10 (c) – Convergenza della popolazione
(si può notare il decremento di potenza
tra la prima generazione e la 100ma)
74
6.1 – Bilancio dei risultati
I risultati ottenuti possono essere così riassunti:
Funzione N_SRB Copertura Capacità
1 A 23 89,3% -
1 B 27 98.1% -
2 6 - 63%
3 A 25 92.3% 99.06%
3 B 25 96.8% 98.12%
4 26 88.9% 98.43%
5 A 26 96.9% 98.75%
5 B 20 73.2% 92.18%
6 31 94.9% 98.75%
Tab. 6.1 – Panoramica sui risultati ottenuti
La tabella 6.1 mette in evidenza che, nella gran parte dei casi, sono stati
ottenute soluzioni soddisfacenti sia da un punto di vista di copertura, sia da
un punto di vista della capacità della rete.
Dai risultati ottenuti si può ricavare che gli algoritmi genetici assolvono
alla loro funzione in modo tanto più efficace tanto più precise sono le
informazioni date loro in input, mentre possono dare risultati più o meno
apprezzabili nel caso contrario. In particolare, nei casi in cui si tiene conto
sia della copertura che della capacità, si registra una forte tendenza alla
minimizzazione del numero delle stazioni radio base, nei casi in cui esso
non costituisce informazione di partenza (Fig. 6.11), che risulta quasi
sempre di poco inferiore al numero di SRB minimo calcolato per questo
territorio.
75
Fig. 6.11 – Numero di SRB impiegate
Si può inoltre notare come queste funzioni tendano a differire
notevolmente, a seconda dei casi, sul piano della copertura (Fig. 6.12),
mentre si registra una scarsa variabilità sul piano capacitivo (Fig. 6.13).
Fig. 6.12 – Copertura del territorio
76
Fig. 6.13 – Capacità di rete
Per quel che concerne i tempi di elaborazione, a parte il caso 6, la cui
complessità computazionale richiede un tempo abbastanza cospicuo,
possiamo constatare un raggiungimento di buoni risultati in tempi
relativamente brevi. La situazione appare più incoraggiante da questo
punto di vista se si osservano gli andamenti della fitness degli individui. Si
rileva, infatti, che si raggiunge una buona fitness per l’individuo migliore
già dopo 150 – 200 generazioni, mentre nelle generazioni successive si
rilevano piccoli e lenti miglioramenti di fitness che vanno a raffinare la
soluzione trovata. Il tempo di elaborazione va quindi rapportato anche al
grado di qualità della soluzione che si vuole ottenere.
77
7 – CONCLUSIONI
Con il presente lavoro ci si è proposti di dare una soluzione genetica al
problema dell’ottimizzazione della copertura cellulare, facendo particolare
riferimento al sistema UMTS.
Consapevoli delle nuove problematiche introdotte da questa tecnologia, si è
voluta mettere in evidenza soprattutto la necessità di tentare nuovi approcci
al fine di trovare quello che meglio si adatti alla risoluzione di una
problematica, che, come è risaputo, si fa pressante non solo sul piano
tecnico.
Le funzioni proposte, pur nella loro apparente semplicità, costituiscono un
primo passo verso un processo di automatizzazione della gestione delle
risorse che nel tempo, vista la scarsità di mezzi, diventerà sempre più
indispensabile.
I risultati da noi ottenuti, anche se riconducibili ad una realtà sottoposta a
varie semplificazioni, si sono dimostrati soddisfacenti sotto molti punti di
vista e questo ci spinge a proseguire su questa strada al fine di trovare
soluzioni che si adattino sempre meglio ad una realtà che, già di per sé
variegata, è, oltretutto, in continua evoluzione.
Ci si propone, fin da ora, di rimuovere le approssimazioni usate sia sul
piano tecnico, sia su quello ambientale, introducendo nuovi parametri,
come tilt e rotazione delle antenne, in un panorama reale, che ci costringa a
relazionarci con tutti i vincoli ambientali e normativi che un progettista è
chiaramente costretto ad affrontare. Si approfondirà il tema della qualità
del servizio, qui considerata solo per il traffico voce, andando a valutare
quelle che sono le nuove tematiche derivanti da una tecnologia la cui
complessità rende il termine radiotelefonia sempre più riduttivo. E per far
questo non potremo fare a meno di quello che è stato l’elemento
imprescindibile del nostro lavoro: gli Algoritmi Genetici, si sono, infatti,
78
dimostrati, nonostante la generalità applicativa che li contraddistingue,
fortemente adattabili a tale contesto, quasi fossero stati elaborati
specificatamente per questo tipo di problematica. Alla loro efficienza da un
punto di vista della validità dei risultati, si è associato un tempo di
elaborazione relativamente ridotto, che, con ulteriori raffinamenti sul piano
della codifica, può essere ancora migliorato.
Il nostro prossimo obiettivo sarà quello di sfruttare al meglio per i nostri
scopi queste caratteristiche, cercando inoltre di esplorare le potenzialità
ancora inespresse di questa straordinaria tecnica di ottimizzazione.
79
BIBLIOGRAFIA
Capitolo 2
- J. Holland – Adaptation in natural and artificial systems - University of
Michigan Press, 1975.
- Irene Inchingolo – Algoritmi genetici.
- Alberto Brogli – Intelligenza artificiale.
- Genetic Algorithm and Direct Search Toolbox – User’s Guide – The
MathWorks inc.
Capitolo 3
- John E. Moulder – Electromagnetic Fields and Human Healt – Medical
College of Winsconsin.
- P. Volpe – Impatto ambientale dell’UMTS – Ericsson Lab Italy
- E.Dinan, A.Kurochkin, S.Kettani - UMTS Radio InterfaceSystem
Planning and Optimization - Bechtel Telecom. Technical Journal.
- G.Di Bernardo – UMTS Architettura e Sistema di Accesso - Ericsson
Telecomunicazioni S.p.a.
- M.Dècina, P.Giacomazzi – Qualità del servizio nei sistemi radiomobili di
terza generazione – Politecnico di Milano, Mondo digitale (2002)
- G.Marino – L’accesso radio UMTS – Telecom Italia
- 3rd Generation Partnership Project; Technical Specification Group
Services and System Aspects; Service aspects; Quality of Service and
Network Performance.
- V. Pretari, V. Pasteris – UMTS, la comunicazione mobile di Terza
Generazione – reperibile on line al sito: www.netmanager.it.
80
Capitolo 4
- E.Amaldi, A.Capone, F.Malucelli - Planning UMTS Base Station
Location: Optimization Models With Power Control and Algorithms - IEEE
transactions on wireless communications, vol. 2, no. 5, september 2003
- E. Amaldi, A. Capone, and F. Malucelli - Base station configuration and
location problems in UMTS networks - in Proc. 9th Int. Conf.
Telecommunication Systems, Modeling, and Analysis, 2001, pp. 341–348.
- E.Amaldi, A.Capone, F.Malucelli - Optimizing base station siting in
UMTS networks - Proc. IEEE VTC Spring 2001, vol. 4, pp. 2828–2832,
May 2001.
- E.Amaldi, A.Capone, F.Malucelli - Improved models and algorithms for
UMTS radio planning - Proc. IEEE VTC Fall 2001, vol. 2, pp. 920–924,
Oct. 2001.
- E.Amaldi, A.Capone, F.Malucelli – Optimization models and algorithms
for downlink UMTS radio planning - in Proc. IEEE Wireless
Communications and Networking Conf., vol. 2, Mar. 2003, pp. 827–831.
- Chamaret B., Josselin S., Kuonen P., Pizarroso M., Salas-Manzanedo B.,
Ubeda S., Wagner D. - Radio Network Optimization With Maximum
Independent Set Search – IEEE.
- S.B.Jamaa, Z.Altman, A.Ortega,B.Fourestié - UMTS Design Strategies
Based on Indicator Matrix Approach - IEEE Communications Society
- B.-S.Park, J.-G.Yook, H.-K.Park - The Determination of Base Station
Placement and Transmit Power in an Inhomogeneous Traffic Distribution
for Radio Network Planning - 2002 IEEE.
- I.Laki, L.Farkas, L.Nagy - Cell Planning in Mobile Communication
Systems using SGA Optimization - 2001 IEEE.
- Calegari P., Guidec F., Kuonen P., Wagner D. - Genetic Approach To
Radio Network Optimization For Mobile Systems - 1997 IEEE.
81
- F.Garzia, R.Cusani - Optimisation Of Cellular Base Stations Placement In
Territory With Urban And Environmental Restrictions By Means Of
Genetic Algorithms – Infocom Dpt – ‘La Sapienza’ Univesity
- Liang Guo, Jie Zhang and Carsten Maple - Coverage and Capacity
Calculations for 3G Mobile Network Planning - Department of Computing
and Information Systems - University of Luton, Luton, LU1 3JU, U.K.
- C. H. Baek, Y. I. Kim, B. Y. Cho, S. W. Park, and Y. H. Ji - Cell Finder-
2000 with a New Optimal Measurement Technology for CDMA Cell
Planing of PCS and IMT-2000 Systems - 3G Mobile Communication
Technologies, Conference Publication No. 471, © IEE 2000.
- X. Wang, T.Long, Y.H. Lee – Automated Cell Planning Based On
Propagation Loss - © 2003 IEEE.
- X. Huang, U. Behr, and W. Wiesbecd - Automatic Cell Planning for a
Low-Cost and Spectrum Efficient Wireless Network - © 2000 IEEE.
- Z. Altman, J.M. Picard, S. Ben Jamaa, B. Fourestié - OaSys: FTR&D
UMTS Automatic Cell Planning Tool - © 2002 IEEE
- Z. Altman, J.M. Picard, S. Ben Jamaa, B. Fourestié, A. Caminada, T.
Dony, J. F. Morlier, S. Mourniac - New Challenges in Automatic Cell
Planning of UMTS Networks - © 2002 IEEE
Capitolo 5
- “L’esposizione ai campi elettromagnetici a radiofrequenza - Valori di
campo elettromagnetico in area urbana per installazioni tipiche di stazioni
radio base - “Libro Bianco”, reperibile al sito:
www.freefoundation.com/documento/2002-05-29librobianco.
- Fabio Garzia – L’inquinamento elettromagnetico – Cedam editore
- Kathrein – Base Station Antennas for Mobile Communications