Tez No İndirme Tez Künye Durumu
100797 Bu tezin, veri tabanı üzerinden yayınlanma izni bulunmamaktadır. Yayınlanma izni olmayan tezlerin basılı kopyalarına Üniversite kütüphaneniz aracılığıyla (TÜBESS üzerinden) erişebilirsiniz.
Bulanık kontrolör ile yeni bir global eniyileme yöntemi / A New method of global optimization by using fuzzy controller
Yazar:BURAK BERK ÜSTÜNDAĞ
Danışman: PROF.DR. ATİLLA BİR
Yer Bilgisi: İstanbul Teknik Üniversitesi / Fen Bilimleri Enstitüsü
Konu:Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control
Dizin:Bulanık denetim = Fuzzy control ; Optimizasyon = Optimization ; Optimizasyon modelleri = Optimization models
Onaylandı
Doktora
Türkçe
2000
98 s.
BULANIK KONTROLÖR İLE YENİ BİR GLOBAL ENIYILEME YÖNTEMİ ÖZET Global enküçültme, X<=Rn kompakt bir küme olmak üzere, fiR^R1 amaç ölçüt fonksiyonu, f*=min f (x) xeX (1) şeklinde tanımlanan bir f* değerini bulmayı amaçlar. f(x) fonksiyonunu enküçülten x değeri, ayrıca -f(x) fonksiyonunu enbüyüteceğinden, bu tanım global enbüyük için de geçerlidir ve genel olarak global eniyileme olarak adlandırılır. Amaç ölçüt fonksiyonu f nin süreksizliliği, birden fazla ekstremumunun bulunması, kullanılacak eniyileme tekniğini kısıtlar. Örneğin, süreksiz bir amaç ölçüt fonksiyonunun eniyilenmesinde, türev ifadesini kullanan yöntemlerde sorunlarla karşılaşılır. Şekil 1 'de birim geribeslemeli bir ayrık kontrol sisteminin blok yapısı görülmektedir. f(.) diferansiyel denklem takımı yerine bir f(x) fonksiyonu yerleştirilmesi halinde, kontrol kuramı kullanılarak, (1) ile tanımlanan global eniyileme probleminin çözümüne, aynı blok diyagramı ile yaklaşılabilir. Şekil 1 Sayısal arama probleminin bir otomatik kontrol sistemi olarak görülmesi. Kontrol kuramı gereği uygun seçilmiş bir G kontrolörü, sürekli halde e hata işaretini sıfıra götürür. Diğer bir bakış açısıyla, k adım sayısı olmak üzere, k-*» için e(k)-»0, f(u(k))-> r ya da, * eniyi çözümü ifade etmek üzere, f(u)-r I -»0 =>u*=x*, f(x*)=r (2) (3) k-xo XIIifadeleri geçerlidir. Buna göre, u kontrolör çıkışı, f(x)-r=0 denkleminin çözümünü verir. Özel olarak referans işaretinin r=0 olarak verilmesi durumunda, sürekli halde u'nun son değeri, f(x) fonksiyonunun bir köküne karşı düşer. Bu kontrol kuramı yaklaşımı diferansiyel denklemlerin sayısal çözümlerinde eniyilenmiş adım uzunluğunun hesaplanmasında kullanılmıştır [2]. Bu çalışmada ise, global eniyileme probleminin çözümünde kullanılacak olan bir fonksiyonun köklerinin belirlenmesinde, aynı yaklaşımda bulunulmuştur. Burada önerilen yöntemde, f(.) yerine, herhangi bir tek veya çok değişkenli amaç ölçüt fonksiyonu ve G yerine de bulanık tabanlı bir kontrolör kullanılır. Şekil 2 'de görülen kapalı çevrim kontrol düzeni ile flx)-r=0 denkleminin çözümü elde edilir. Burada örnekleme periyodu k adım sayışma karşı düşmekte ve çözüm olarak kontrolör çıkışı değerlendirilmektedir. Denklemlerin sayısal yöntemlerle özyinelemeli çözümleri yerine kontrol kuramı yaklaşımı ile çözümünde geleneksel kontrolörlerin kullanımı bazı sorunlar getirmektedir. Örneğin kök arama probleminde, PID türü kontrolör kullanıldığında, çözüme erişmede kararlılık sorunları ile karşılaşılır. Çözümü aranan f(x) fonksiyonunun kök civarındaki türevinin büyük olması sadece salınım yaratmamakta aynı zamanda kök noktasının atlanmasına da neden olmaktadır. -VOX şk Bulanık kontrolör du=Gc(E,CE) Şekil 2 Tek değişkenli f(x)-r=0 denkleminin çözümü için bulanık kontrolör kullanılan düzenin blok şeması. Burada açıklanan çözüm tekniğinde Mamdani'nin önerdiği bulanık kontrolör yapısı kullamlmıştır [24]. Şekil 2'de görülen blok yapıda e hatayı, ce hata değişimini, See hata ölçeklendirilme katsayısını, Scce hata değişiminin ölçeklendirilme katsayısını, E ölçeklendirilmiş hatayı, CE ölçeklendirilmiş hata değişimini, du bulanık kontrolör çıkışını, u ayrık integre edilmiş kontrolör çıkışım ve u* ulaşılan kök değerini belirtmektedir. Bu tür bir bulanık kontrolörün du çıkışı, hata ve hatanın değişimine göre belirli bir değerden sonra doymaya girmektedir. f(x) fonksiyonu kökünün aranmasında xmkullanılan kapalı çevrimli sistemdeki tek bellek elemanı bulanık kontrolör çıkışındaki integratördür. Sayısal çözüm amaçlı bu sistem, sınırlı giriş için sınırlı çıkış üreteceğinden, hatalı kontrolör parametresi seçimi, yalnızca aranan kök civarında sınırlı genlikli sahnıma yol açmaktadır. Bulanık kontrolör karar tablosu doğru seçilmiş ise, giriş kazanç parametrelerinde (See, Scce) ideal değerden sapma olması durumunda bile sistem, en fazla, aranan kök civarında kararlı bir salımma girer. Bulanık kontrolör çıkışı u, her iki işaret yönünde de doymaya girdiğinden sistem en azından Lyapunov anlamında kararlıdır. Arama yapılacak üst sınır US ; başlama noktası AS olsun. (AS,US) aralığında arama yapabilmek için u(0)=AS olmalıdır. Yapılan bu atama sayısal arama işlemine istenen bir noktadan başlanmasını sağlar. Unimodal bir fonksiyonun eniyilenmesi ya da köklerinin bulunmasına ilişkin çok sayıda yöntem bulunmaktadır. Bilindiği üzere yerel kök arama veya eniyileme yöntemleri unimodal olmayan fonksiyonlarda başarısız olabilmektedir. Bulanık kontrolör kullanılan bu yeni yöntemde, verilen bir başlangıç noktasından itibaren istenilen doğrultudaki bir köke erişilirken, sadece daha önceki sayısal denemeler ve bulanık karar tablosu referans alındığından, fonksiyonun karmaşıklığı çözüme ulaşma başarısını etkilemez. Bu özellik global eniyileme probleminin çözümünde kullanılmaktadır. Bulanık kontrolör ile global eniyileme için çeşitli yaklaşımlar mümkündür. Burada önerilen eniyileme algoritması, bulanık kontrolörlü kapalı çevrim kontrol düzeni ile çözüm istenen aralığın taranması üzerinedir. Tarama işlemi, alt sınırdan üst sınıra, üst sınırdan alt sınıra, ya da çok başlangıç noktalı yapılabilir. Eniyileme algoritması, alt sının başlangıç noktası kabul etmekte ve verilen bir f(.) fonksiyonunun enbüyük değerini aramaktadır. Aramaya başlanan noktada fonksiyon artış yönünde ise r=0 için f '(u)=0 çözümü sağa doğru aranır ve bulunan ilk kök yeni global enbüyük noktası olarak kabul edilir. Aramaya başlanan noktada fonksiyon azalma yönüde ise, r=f^u) için sağa doğru bulanık kontrolör ile kök aranır ve bulunan ilk kökten itibaren r=0 için f '(u)=0 çözümü elde edilerek varılan yeni nokta global enbüyük kabul edilir. Her iki halde de r=yeni global enbüyük, alınarak f(u)=r çözümü ile tekrarlı olarak işleme devam edilir. Arama sırasında kontrol işareti u>US koşulu oluşursa varılmış olan en son f (u)=0 çözümü global enbüyüğü verecektir. Bu durum şekil 3 'deki örnek bir fonksiyon üzerinde arama algoritmasının aldığı yol üzerinde (kaim çizgili) görülmektedir, f '(u)=0 çözümünde türev alma işlemini gerçekleştirmek için geri besleme yoluna z"1 öteleyici ve fark alıcı konularak f(k)-fpc-l) değeri kullanılabilir. Fakat adım boyu farklı olduğundan doğru sonuca ulaşmaktaki başarım düşmektedir. İşlem bilgisayar ortamında yapıldığında tercih edilmesi gereken, f(x) yerine sayısal türev (örneğin (f(x+h)-f(x))/h ) kullanmaktır. f(x)=0 alt işletiminde, sonlandırma kriteri olarak global aramada istenen duyarlılığı almak gerekmez. Çünkü, global noktalara f '(x)=0 çözümünün sonrasında ulaşılmaktadır. Örneğin, En=0.000001 hata üst sının ile çözüm isteniyorsa; kök arama çevrimlerinde E"=0.01 ; türev arama çevrimlerinde ise 1^=0.000001 seçmek aynı doğrulukta, daha kısa sürede çözüme ulaşmayı sağlar. Amaç ölçüt fonksiyonu değişkenleri üzerine getirilebilecek kısıtlamalara uymak için, amaç ölçüt fonksiyonuna ceza bileşeni eklenebilir [29]. xıvRef2 Ref1
A NEW GLOBAL OPTIMIZATION METHOD BY USING FUZZY LOGIC CONTROLLER SUMMARY Let X be a compact set called feasible region and f be an objective function such that X0, f(u(k))-»r (2) or XVIfi»-r I ->0 =>u=x, f(x)=r (3) k-x» where * represents the optimal solution and r is the reference value. The output of the controller u yields the solution of the equation f(x)-r=0 as it can be seen from the equation (3). If reference sign r is particularly set to zero then the steady state value of u will be equal to one of the roots of f(x). This control theory approach was previously used for the calculation of the step length in numerical solution of differential equations [2]. Roots of a function which will be evaluated in obtaining solution of the global optimization problem is determined by the same approach. A single or multi- variable objective function is placed instead of f(.) and a fuzzy rule based controller takes the place of G in the proposed method. The closed loop control system shown in figure 2 finds the solution of the equation f(x)-r=0 where k represents the number of steps and controller output is considered as the solution. Some problems arise in application of classical linear controllers with control theory approach for the solution of equations instead of well known iterative numerical methods. For example, when a PID type controller is used for root seeking, stability problems are met in reaching the solution. Large valued derivatives of the function around the roots to be solved in an equation, not only causes oscillations, and it may also be the reason of missing the root. d(k)=±1 1 -JrOx e(k) £ 51 |z-1| V- CE ce(k) &. -m- J FUZZY LOGIC du,-J CONTROLLER -^U du=Gc(E,CE) LL. Figure 2 Block diagram of the system used for solution of the single variable equation f(x)-r=0. In this new method, the fuzzy logic controller structure offered by Mamdani is used in the block diagram given in figure 2 [24]. e is actual error, ce is change of actual error, E is scaled error, CE is scaled change of error, See is scaling factor of the error, Scce is scaling factor of the change of error, du is output of the fuzzy logic controller, u is discretely integrated controller output and u* represents the value of calculated root in figure 2. Output of this kind of fuzzy controller saturates over a certain limit depending on the error and change of the error. The integrator at the output of the fuzzy controller is only the memory element in the closed loop system used for finding of the roots. xvnUnsuitable selection of the parameters (See, Scce) causes only limited amplitude oscillation around the root since new method generates bounded output for bounded input if at least fuzzy decision table has been chosen properly. Let the upper bound of the search region be US (upper bound) and starting point of search be AS (lower bound) of the region then u(0) must be set to AS for searching in the interval (AS,US). This numerical assignment provides search to be started from a predetermined point. There exist many methods for optimizing or finding the roots of a unimodal function. All of these methods may fail in non-unimodal functions. Complexity of the function does not affect the achievement in reaching the solution, since only the fuzzy decision table and previously trial points are evaluated starting from a given point. This property will be used in solution of global optimization problem. There are several possible approaches for global optimization with fuzzy logic controller. The proposed optimization algorithm is based on scanning of the feasible region in a closed loop control system with fuzzy logic controller. Search direction may be from the upper bound to lower bound or from lower bound to upper bound or it even can be applied in sub-intervals covering the feasible region. Optimization algorithm accepts the lower bound as the starting point and finds the maximum value of a given function f(.). Roots of the equation f'(u)=0 is searched through running towards the right hand side for r=0 and the first found root is considered to be new global maximum value if the slope of the function is positive in the starting point of search. Otherwise root of f is searched through running towards the right hand side for r=f(u) and the new reached point determined by the solution of the equation f '(u)=0 is considered to be a new global maximum value. This procedure is repeated with solution of f(u)=r by taking r is equal to the global maximum value in both cases. The lastly determined root of f '(u)=0 will be the global maximum value, if controller output (u) exceeds the upper bound US (saturation). This search procedure is illustrated with an example function shown in figure 3. The bold line represents the route of the search algorithm in finding the solution. f(k)-f(k-l) value can be evaluated by adding a shift operator (z"1) and a subtracter on the feedback line for evaluating the derivative f '(u) however this operator decreases the performance in finding the correct solution since step lengths are different in each iteration. The numerical equivalent of derivative such as f(x+h)-f(x))/h has to be preferred because these operations are handled in computer environment. xviuRef2 Refl Figure 3 Search of global maximum value of a single variable function There is no need target resolution to be a precise value of global optimization as the ending criteria in the sub operation f(x)=0 because global extremal points are only reached after the solution of f (x)=0. For example, if the demanded upper limit of the error is Em=0.000001, the ending criteria for root search is set as Em=0.01 and stopping criteria of the derivative loops is set as Em=0.000001 then the same correct global maximum value will be found by lesser number of evaluations. In order to fit in restrictions on the function optimization parameters penalty components can be added to the objective function. Finding the correct solution is guaranteed ifa Lipchitz value can be given for f(x) in the proposed method of global optimization. Although theoretically none of the solution methods can guarantee finding the correct global maximum value, the proposed method is successful in solution of standard test functions. Previously found global maxima is set as new reference for other variables after a search for a variable in multi variable optimization problems Otherwise, the number of evaluations would be increased exponentially in proportion to the number of variables. When the problem is solved by proposed method on a network, each computer shares a sub interval and new global maximum points are sent to each other after all of the derivative loops. This feature provides decreasing the amount of iterations for the machines those evaluate some intervals far from real global maxima region. xix