You are on page 1of 9

HRVATSKI OGRANAK MEðUNARODNOG VIJEĆA

ZA VELIKE ELEKTROENERGETSKE SUSTAVE – CIGRÉ


9. savjetovanje HRO CIGRÉ
Cavtat, 8. - 12. studenoga 2009.
A1-14

Igor ðokić, dipl.ing.el. Doc. dr sc Muharem Mehmedović


Elektroprenos-Elektroprijenos BIH Elektrotehnički fakultet Osijek
i.djokic@elektroprivreda.ba muharem.mehmedovic@zg.htnet.hr

PRIMJENA EVOLUCIJSKOG ALGORITMA ZA PROCJENU PARAMETARA


GENERATORA U PRAZNOM HODU

SAŽETAK

Model generatora u praznom hodu se koristi za analizu dinamičkih pojava na osobnom računalu.
Meñutim, prilikom primjene ovoga modela potrebno je poznavati parametre generatora koji predstavljaju
ulazne podatke za model. Ovi parametri obično nisu poznati i nije ih jednostavno izmjeriti.
Ovaj rad obrañuje primjenu evolucijskog algoritma, kao jednu od metoda optimizacije, za procjenu
parametara generatora u praznom hodu.
U radu je, takoñer, predstavljen model generatora u praznom hodu prilagoñen za rad na računaru,
kao i osnove evolucijskog algoritma. Na osnovu evolucijskog algoritma i modela generatora u praznom
hodu napravljen je računalni program u programskom paketu MatLab za procjenu parametara generatora u
praznom hodu. Program je primjenjen za slučaj prepoznavanja parametara jednog turbogeneratora i
jednog hidrogeneratora, te su dati rezultati provedenih simulacija.

Ključne riječi: generator, prazan hod, evolucijski algoritam, struja uzbude, napon generatora

APPLICATION OF EVOLUTIONARY ALGORITHM TO OPEN CIRCUIT GENERATOR


PARAMETERS ESTIMATION

SUMMARY

Open circuit generator model is used for dynamic analysis on personal computer. But, when using
this model one must be familiar with generator parameters which represent initial data for the model.
Usually, these parameters are unknown and can not be simply measured.
This paper presents application of evolutionary algorithm as one of optimisation methods to open
circuit generator parameters estimation.
Open circuit generator model adjusted to work on personal computer and basis of evolutionary
algorithm are also presented in this paper. Based on evolutionary algorithm and open circuit generator
model computer program for open circuit generator parameters estimation was created in MatLab. This
computer program was applied for parameters estimation in case of both turbogenerator and
hydrogenerator and results of performed simulations are presented.

Key words: generator, open circuit, evolutionary algorithm, excitation current, generator voltage

1. UVOD

Modeliranje rada sinkronih strojeva bazira se na matematičkom modelu sinkronih strojeva. Ovaj
model u općem slučaju čini osam jednadžbi od kojih se: tri odnose na statorske konture, tri na rotorske
konture a dvije su jednadžbe gibanja. S pojavom osobnih računala, sve boljih performansi, moguće je,
pomoću ovog modela, načiniti veoma točne analize dinamičkih pojava u sinkronim strojevima. Ipak, svaki

1
model nekog realnog sustava je dobar onoliko koliko su dobri ulazni podaci na koje se primjenjuje model.
Upravo izbor ulaznih podataka predstavlja najveći problem pri primjeni modela sinkronih strojeva.
Ulazne podatke, za model sinkronih strojeva, predstavljaju vrijednosti djelatnih otpora i reaktancija
u statorskim i rotorskim krugovima. U većini slučajeva izravno mjerenje ovih veličina nije moguće provesti
zbog čega točno odreñivanje parametara sinkronih strojeva često zahtijeva primjenu alternativnih metoda.
U ovom radu bazirat ćemo se na procjeni parametara sinkronih strojeva u praznom hodu i to primjenom
evolucijskog algoritma. Snimljeni odziv stvarnog generatora (odstupanje napona generatora od stacionarne
vrijednosti i odstupanje struje uzbude od stacionarne veličine) na promjenu napona uzbude poslužit će nam
kao polazište, dok će nam evolucijski algoritam poslužiti kao alat kojim će se generirati moguća rješenja
danog problema odnosno parametre generatora u praznom hodu.

2. MODEL GENERATORA U PRAZNOM HODU

Model sinkronog stroja može se općenito za slučaj nesimetričnog opterećenja predstaviti s tri
statorske, tri rotorske jednadžbe i dvije jednadžbe gibanja. Ove jednadžbe su još poznate kao Parkove
jednadžbe [1]:

- Statorske jednadžbe:

dψ d (1)
ud = − ψ qω − rs id
ωsdt

dψ q (2)
uq = + ψ dω − rs i q
ωsdt

dψ 0 (3)
u0 = −r i
ωsdt s 0

- Rotorske jednadžbe:

dψ fd (4)
ufd = +r i
ωsdt fd fd

dψ 1d (5)
0= +r i
ωsdt 11d 1d

dψ 1q (6)
0= +r i
ωsdt 11q 1q

- Jednadžbe gibanja:

dω mT − (ψ d i q − ψ q i d ) (7)
=
dt TM

dγ (8)

ωsdt

gdje su:
- ud, uq, u0, ψd, ψq, ψ0, id, iq, i0, napon, magnetski tok i struja na statoru u (d, q, 0) sustavu
vezanom za rotor dok je rs djelatni otpor armature.
- ufd, ψfd, ψ1d, ψ1q, ifd, i1d, i1q, napon, magnetni tok i struja na rotoru za uzbudnu, prigušnu
d-os i prigušnu q-os, dok su rfd, r11d i r11q djelatni otpori u navedenim krugovima rotora.

2
Kutna brzina ω je, kao i ostale veličine, u relativnim jedinicama, a TM (s) je konstanta tromosti
( TM = Jω2
ms / Sn ). Vrijeme t je u sekundama. Sinkrona električka kutna brzina ( ωs = 100π (rad s −1)
odnosno 120π (rad s −1) ) je za broj pari polova puta veća od mehaničke sinkrone brzine ωms .
Pomoću ovih jednadžbi moguće je vjerodostojno predstaviti ponašanje sinkronih strojeva u
dinamičkim stanjima.
Takoñer, na temelju ovih jednadžbi moguće je izvesti model sinkronog stroja u praznom hodu, uz
sljedeće pretpostavke [1]:

- Armaturne (statorske) struje jednake su nuli:

iTst = iTdq = [id i q ] = [0 0] (9)

- Moguće je zanemariti djelovanje prigušnih kontura u poprečnoj osi na rotoru:

i1q = 0 (10)

- Moguće je brzinu smatrati konstantnom što je posljedica pretpostavke da je moment ubrzanja


jednak nuli:


= 0 , odnosno: ω = ω0 (11)
dt

Dakle, za rotor sada vrijede sljedeće algebarske i diferencijalne jednadžbe:

ψ fd = xfd i fd + xad i1d (12)


ψ 1d = xad i fd + x11d i1d

dψ fd
= ωs (ufd − rfd i fd )
dt . (13)
dψ 1d
= −ωs r11d i1d
dt

Za napon generatora vrijedi relacija:

uq = ug = ω0ψ d = ω0 ( xad i fd + xad i1d ) (14)

gdje su: xfd – reaktancija koja odgovara samoinduktivitetu uzbudnog namota (xfd=xad+xfdl),
xad - reaktancija koja odgovara glavnom meñuinduktivitetu,
xfdl - rasipna reaktancija uzbudnog kruga u d-osi,
x11d - reaktancija koja odgovara samoinduktivitetu prigušnog namota u d-osi (x11d=xad+x1dl),
x1dl - rasipna reaktancija prigušnog kruga u d-osi.

2.1. Model generatora u praznom hodu prilagoñen veličinama koje je moguće izravno mjeriti

Na osnovu linearnih i diferencijalnih jednadžbi 12 i 13 prirodan izbor varijabli stanja je ψfd i ψ1d
budući da se magnetni tokovi sporije mijenjaju od struja tako da su pogodniji za integriranje. Meñutim, za
generator u praznom hodu uobičajeno je da se mjere struja uzbude ifd i napona generatora ug, odnosno
njihova odstupanja od stacionarnog stanja. Uzimajući u obzir da su nam poznati struja uzbude i napon
generatora moguće je na osnovu jednostavnih operacija polazeći od jednadžbi 12 i 13 dobiti sljedeći sustav
[1]:

dy (15)
= Ay + Bu
dt

3
T
gdje su: vektor stanja y=[ug ifd] (16)

a upravljanje u=efd (17)

dok se matrica A naziva matrica sustava, a matrica B matrica upravljanja, [1]:

 xfdl r11d 
ω0 ( x1dl rfd − xfdl r11d )
ωs  xad (18)
A=−  
d1 − r11d x
rfd (1 + 1dl ) + r11d 
 ω0 xad xad 

 ω0rfd 0 x1dl 
ω  xad 0  (19)
B= s 
d1  rfd 0 (1 + x1dl )
 xad 0 xad 

 x  (20)
d1 = x1dl + x fdl ⋅ 1 + 1dl 
 x ad 

gdje su: rfd0 i xad0 djelatni otpor i meñuinduktivitet uzbudni namot – statorski namot, a za koji se
pretpostavlja da je jednak meñuinduktivitetu uzbudni namot – prigušni namot. Djelatni otpor uzbudnog
namota rfd0 odgovara odreñenoj referentnoj temperaturi rotorskog, a xad0 odgovara pravcu zračnog
raspora.

Sve prethodno navedene jednadžbe vrijede za lienearni sinkroni stroj. Meñutim, sinkroni stroj nije u
stvarnosti linearni objekt budući da i u praznom hodu postoje problemi sa zasićenjem. Ipak, navedeni
model može se primjeniti i za slučaj sinkronog stroja u zasićenju ali su tad matrica sustava i matrica
upravljanja jakobijani sustava koji opisuju relativno korektno samo lokalna (u bliskom okolišu radne točke)
svojstva sustava (sinkronog stroja) [1].
Glavni meñuinduktivitet xad u radnoj točki poprima vrijednost xadz (zasićena pogonska vrijednost), a
u linearnom dijelu karakteristike nezasićenu vrijednost xad0.
Budući da su sve jednadžbe dane u relativnim jedinicama onda će se u nastavku govoriti o
reaktancijama a ne o induktivitetima jer su u relativnim jedinicama induktiviteti i reaktancije jednaki.
Dakle, kao što se može vidjeti iz jednadžbi 15 – 20 da bi uspješno primijenili model generatora u
praznom hodu potrebno je poznavati sljedeće parametre: x1dl, xfdl, xadz, r11d, rfd, xad0. Sve prethodno
navedene veličine su izražene u relativnim jedinicama.
Da bi se odredile ove veličine moguće je primjeniti neku od metoda numeričke optimizacije. Budući
da se prilikom rješavanja ovakve zadaće vrlo često javlja problem nemogućnosti izlaska iz lokalnog
maksimuma potrebno je primijeniti jednu od metoda koja uspijeva izbjeći lokalni maksimum. U ovom se
radu koristi metoda evolucijskog algoritma. Ova metoda je primijenjena na način da je snimljeni odziv
(odstupanje napona generatora i struje uzbude od stacionarnih veličina, a koje se u konkretnom slučaju
odnose na nazivni napon i brzinu vrtnje generatora) stvarnog generatora u praznom hodu na promjenu
napona uzbude a zatim je evolucijski algoritam iskorišten za generiranje traženih parametara generatora i
ocjenu njihovog kvaliteta.

3. EVOLUCIJSKI ALGORITAM

Evolucijski algoritam, zajedno s genetičkim algoritmom, predstavlja metodu umjetne inteligencije


koja se koristi za rješavanje problema optimizacije, a bazira se na načelima prirodne selekcije kao što su:
mutacija, rekombinacija, reprodukcija, selekcija itd. Na temelju početne generacije slučajno izabranih
rješenja nekog problema, evolucijski algoritam stvara nove generacije mogućih rješenja koje bolje
odgovaraju postavljenom problemu. Važno je napomenuti da, za razliku od drugih numeričkih metoda
optimizacije koje nalaze točno rješenje odreñenog problema, evolucijski algoritam kao rezultat ne daje
točno rješenje već se iz generacije u generaciju približava točnom rješenju, ali ga ne mora dostići. Ipak, za
razliku od metoda koje pronalaze točno rješenje, ali se pritom mogu zaustaviti u lokalnom maksimumu

4
(rješenju), evolucijski algoritam može izbjeći taj lokalni maksimum konvergirajući iz generacije u generaciju
ka globalnom rješenju.
Ukoliko pretpostavimo da je potrebno naći rješenje nekog postavljenog problema pri čemu
poznajemo donju i gornju granicu unutar kojih treba da se nalazi traženo rješenje, evolucijski algoritam se
može prikazati pomoću sljedećih koraka [2], [3], [4]:

3.1. Inicijalizacija
0 0
Početna populacija (generacija) rješenja p ={p i, i=1,2,...m}, (m je veličina populacije) se slučajno
odabire iz skupa uniformno raspodijeljenih rješenja unutar donje i gornje granice mogućih rješenja [pmin,
pmax]. Početnu populaciju čine vektori rješenja p0i dok se pmin i pmax odabiraju sukladno prethodnom
poznavanju danog problema.

3.2. Statistika

Da bi se statistički analizirala rješenja odreñene generacije potrebno je prije svega odrediti tzv.
funkciju prikladnosti (“fitness” funkcija) koja bi trebala dati odgovor koliko je jedan od vektora rješenja blizu
točnom rješenju problema ili na odreñeni način rangirati pojedinačna rješenja. Izbor ove funkcije prije svega
ovisi o problemu koji je potrebno riješiti, a zatim i o tome o kojem se ekstremu radi: maksimumu ili
minimumu. Jasno je da upravo izbor ove funkcije predstavlja najveći izazov u primjeni evolucijskog
algoritma budući da od nje ovisi i kvaliteta traženog rješenja.
Nakon odreñivanja vrijednosti funkcije prikladnosti za svaki pojedinačni član jedne generacije
odreñuju se: maksimalne vrijednosti funkcije prikladnosti u okviru jedne generacije fmax, minimalne
vrijednosti funkcije prikladnosti fmin, zbrojevi vrijednosti funkcija prikladnosti svih članova jedne generacije fΣ
i prosječne vrijednosti funkcije prikladnosti favg.

3.3. Mutacija

Svaki parametar pli,j (i=1,...,m, j=1,...,n a l je broj generacije) unutar jedne generacije mutira na
sljedeći način:

pli+m,j=pli,j+N(0,βj fi/fmax), i=1,...,m, j=1,...,n (21)

gdje su:
l
- p i,j j-ti elemenat i-tog vektora rješenja unutar l-te generacije.
- N(µ,σ2) Gauss-ov slučajni broj sa srednjom vrijednošću µ i varijancom σ2.
- βj koeficjent proporcionalnosti koji se može odrediti pomoću sljedeće jednadžbe:
max min
βj=pmut(pj – pj ) (22)

gdje je: pmut vjerojatnost mutacije a pjmax – pjmin definiraju opseg j-tog parametara.

Ukoliko jedna od vrijednosti unutar novodobivenog vektora prijeñe graničnu vrijednost, za taj član
vektora, njoj se dodjeljuje odgovarajuća granična vrijednost.
Generalno je vjerojatnost mutacije fiksna tijekom cijelog procesa traženja rješenja zadanog
problema. Ipak, prilikom primjene evolucijskog algoritma mala vrijednost vjerojatnosti mutacije može
dovesti do preuranjene konvergencije dok velika vjerojatnost mutacije može uzrokovati da proces uopće ne
konvergira. Ovaj se problem može riješiti tako da se vjerojatnost mutacije prilagoñava vrijednostima
funkcije prikladnosti unutar jedne generacije i to na sljedeći način:

pmut(l) –pmutstep, ako je fmin nepromijenjeno ili povećano


pmut(l+1)= pmut(l), ako je fmin(l) povećano (23)
pmutfinal, ako je pmut(l)-pmutstep<pmutfinal

pri čemu je: pmut(0)=pmutinit dok su pmutinit, pmutfinal i pmutstep fiksni brojevi unaprijed odreñeni. pmutinit
ovisi o rješavanom problemu [4] dok bi pmutfinal trebao biti oko 0.005. Ovi parametri jamče da će, ukoliko

5
doñe do smanjenja funkcije prikladnosti, vjerojatnost mutacije ostati velika čime bi se pretraživalo veće
područje kako ne bi bila izostavljena moguća bolja rješenja.

3.4. Nadmetanje

Nakon mutacije novu generaciju rješenja čini 2m vektora. Od tih 2m vektora nekoliko (k) vektora se
zadržava, ovisno o razini funkcije prikladnosti, kao osnova nove generacije dok ostalih 2m-k vektora ulazi u
meñusobno nadmetanje. Nadmetanje se simulira tako što se svakom od ovih vektora pripisuje vrijednost wi
na sljedeći način:

q
w i = ∑ wt . (24)
t =1

Ovdje q predstavlja broj nadmetanja i-tog vektora s q vektora slučajno odabranih izmeñu prostalih
2m-k vektora. Veličina wt može biti 0 ili 1 u ovisnosti da li je i-ti vektor pobjednički vektor nad t-tim vektorom
i može se prikazati sljedećom formulom:

1 ako je ul<fr/(fr+fi)
wt= (25)
0 u suprotnom.

Ovdje su:
- fr vrijednost funkcije prikladnosti slučajno izabranog vektora plr ,
l
- fi vrijednost funkcije prikladnosti vektora p i,
- ul slučajno izabrani broj iz uniformne raspodjele (0,1).

Kad svi vektori poprime vrijednost svoje funkcije wi oni se slažu u opadajućem slijedu sukladno
njenoj vrijednosti (broju pobjeda). Prvih m-k vektora zajedno sa, prethodno odabranih k vektora, prelaze u
sljedeću generaciju čineći novih m vektora.
Zatim se ponavlja točka 3.2. odnosno računaju statističke vrijednosti za ovu generaciju.

3.5. Test konvergencije

Ukoliko se ne zadovolji uvjet konvergencije ponovno se moraju načiniti mutacije i nadmetanja.


Jedan od kriterija konvergencije može biti i:

favg/fmax≥δ (26)

Vrijednost parametra δ potrebno je odabrati tako da bude bliska 1.

4. RAČUNALNI PROGRAM U PROGRAMSKOM PAKETU MATLAB

Na osnovi koraka evolucijskog algoritma, opisanih u točkama 3.1. – 3.5., načinjen je računalni
program u programskom paketu MatLab.
Program na temelju unaprijed definiranih granica generira početnu generaciju slučajno odabranih
rješenja koja se sastoji od 150 vektora rješenja. Svaki od ovih vektora rješenja (dimenzije 6x1) se uvrštava
u jednadžbu 15 i vrši se njena integracija kako bi se dobio odziv generatora (sa uvrštenim slučajnim
parametrima) na pobudu koja je unaprijed snimljena i kao takva unesena u računalni program. Nakon
integriranja jednadžbe 15 kao rezultat se dobiva promjena napona generatora i promjena struje uzbude
ovisno o uvrštenom vektoru rješenja.
Kao ocjena dobivenog rješenja i kvalitete izabranog vektora rješenja usporeñuju se krivulje
odstupanja napona generatora i struje uzbude, dobivenih integracijom jednadžbe 15, s krivuljom
odstupanja napona generatora i struje uzbude, snimljenih na generatoru čiji su parametri nepoznati, a
unaprijed su uneseni u program. Za usporedbu razlika izmeñu dvije krivulje koristi se metoda najmanjih
kvadrata. Dakle, metoda najmanjih kvadrata predstavlja potrebnu funkciju prikladnosti. Ipak, u samom
algoritmu programa korištena je maksimizacija funkcije prikladnosti što znači da je primijenjena inverzna

6
vrijednost funkcije dobivene metodom najmanjih kvadrata. Dakle, što je manja razlika izmeñu izračunate
krive i krive dobivene mjerenjem na stvarnom generatorom to je vektor rješenja kvalitetniji. Izborom funkcije
prikladnosti riješen je najveći problem u primjeni evolucijskog algoritma dok su ostali koraci riješeni na
način opisan u točkama 3.1. – 3.5.
Kao uvjet konvergencije δ (jednadžba 26) izabran je broj 0.95, a ako taj uvjet ne bude zadovoljen
kao maksimalan broj generacija izabrano je 200.
Pored tog, problem je predstavljao i izbor vjerojatnosti mutacije. U literaturi je moguće naći da ova
vrijednost treba biti 1/3 promatranog intervala [4] ali da načelno ovisi o tretiranom problemu. Nakon
provedenih simulacija pokazalo se da se za 200 generacija najbolji rezultat dobiva ako se početna
vjerojatnost mutacije postavi na 0.25.

4.1. Rezultati simulacija pomoću programa napravljenog u programskom paketu MatLab

Primjena evolucijskog algoritma za odreñivanje parametara generatora u praznom hodu izvršena je


na jednom hidrogeneratoru i na jednom turbogeneratoru kod kojih su unaprijed snimljene krivulje
odstupanja napona generatora i struje uzbude od stacionarnih veličina na promjenu napona uzbude. Pored
ove dvije veličine kao rezultat simulacija daje se i odstupanje napona uzbude, promjena fitnes funkcije u
ovisnosti od broja generacije i promjena traženih parametara u ovisnosti od broja generacije. Nazivni
podaci ova dva generatora su:

• Hidrogenerator: Sn=80 MVA, cos(φ)=0,9, Un=10,5 kV, n=600 min ,


-1

• Turbogenerator: Sn=247 MVA, cos(φ)=0,85, Un=15,75 kV, n=3000 min-1.

Legenda: Krivulje prikazane na prve tri slike pomoću crvene boje dobivene su mjerenjem dok su krivulje
prikazane pomoću zelene boje dobivene kao rezultat proračuna

Slika 1 Primjer procjene parametara hidrogeneratora u praznom hodu

7
Legenda: Krivulja prikazane na prve tri slike pomoću crvene boje dobivene su mjerenjem dok su krivulje
prikazane pomoću zelene boje dobivene kao rezultat proračuna

Slika 2 Primjer procjene parametara turbogeneratora u praznom hodu

Kao što je vidljivo s dijagrama za odstupanje napona generatora i struje uzbude, sa slika 1 i 2,
razlika izmeñu krivulje dobivene mjerenjem i one dobivene nakon uvrštavanja najboljeg rezultata posljednje
generacije vektora, dobivene pomoću evolucijskog algoritma, vrlo je mala.
Nakon završetka simulacije program pohranjuje vrijednosti najboljeg vektora posljednje generacije
tako da je ove vrijednosti moguće koristiti kao tražene parametre generatora.
Za slučaj procjene parametara hidrogeneratora, prikazan na slici 1., rezultat simulacije je bio
sljedeći vektor: x1dl=0.14423; xfdl=0.099098; xadz=0.46715; r11d=0.003629; rfd=0.00051955; xad0=1.1842.
Za slučaj procjene parametara turbogeneratora, prikazan na slici 2., rezultat simulacije je bio
sljedeći vektor: x1dl=0.063189; xfdl=0.039352; xadz=0.88014; r11d=0.007523; rfd=0.00092456; xad0=1.5544.

5. ZAKLJUČAK

Evolucijski algoritam predstavlja metodu umjetne inteligencije koju je vrlo jednostavno moguće
primijeniti za rješavanje problema optimizacije u kojima je veoma važno da se izbjegne zaustavljanje
procesa pronalaženja rješenja u tzv. lokalnim ekstremima. Na primjeru procjene parametara
turbogeneratora i hidrogeneratora vidljivo je da je moguće postići veoma dobre rezultate koji se odlično
poklapaju s rezultatima dobivenim mjerenjem, posebice ako se ima u vidu složenost i praktična
neizvodivost odreñivanja parametara generatora izravnim mjerenjima. Ipak, budući da se kao rezultat
simulacije ne dobiva uvijek točno rješenje potrebno je izuzetno poznavanje postavljenog problema kako bi
se dobiveni rezultati mogili koristiti u daljnjem radu.

8
6. LITERATURA

[1] M. Mehmedovic: Identifikacija parametara sustava regulacije uzbude sinkronih strojeva, Doktorska
disertacija, Sveučilište u Zagrebu ETF, Zagreb, 1995.
[2] L. L. Lai, J. T. Ma: Application of Evolutionary Programming to Transient and Subtransient
Parameter Estimation, IEEE Transactions on Energy Conversion, Vol. 11, No. 3, September 1996.
[3] Kwang Y. Lee, Frank F. Yang: Optimal Reactive Power Planning Using Evolutionary Algorithms: A
Comparative Study for Evolutionary Programming, Evolutionary Strategy, Genetic Algorithm, and Linear
Programming, IEEE Transactions on Power Systems, Vol. 13, No. 1, February 1998.
[4] Z. Michalewicz, D.B. Fogel: How to Solve it: Modern Heuristics, Springer-Verlag Berlin Heidelberg
2000.

You might also like