MOTOR KONTROLÜNDE AKTĠF ÖĞRENMENĠN KULLANILMASI

advertisement
MOTOR KONTROLÜNDE AKTĠF ÖĞRENMENĠN KULLANILMASI
Onur BATTAL
YÜKSEK LĠSANS TEZĠ
ELEKTRĠK EĞĠTĠMĠ
GAZĠ ÜNĠVERSĠTESĠ
FEN BĠLĠMLERĠ ENSTĠTÜSÜ
TEMMUZ 2011
ANKARA
Onur BATTAL tarafından hazırlanan 'MOTOR KONTROLÜNDE AKTĠF
ÖĞRENMENĠN KULLANILMASI' adlı bu tezin Yüksek Lisans tezi olarak
uygun olduğunu onaylarım.
Yrd. Doç. Dr. Ercan Nurcan YILMAZ
……………………………….
Tez DanıĢmanı, Elektrik Eğitimi Anabilim Dalı
Bu çalıĢma, jürimiz tarafından oy birliği ile Elektrik Eğitimi Anabilim Dalında
Yüksek Lisans tezi olarak kabul edilmiĢtir.
Doç. Dr. Recep DEMĠRCĠ
……………………………….
Endüstriyel Teknoloji Eğitimi Anabilim Dalı, Gazi Üniversitesi
Yrd. Doç. Dr. Ercan Nurcan YILMAZ
……………………………….
Elektrik Eğitimi Anabilim Dalı, Gazi Üniversitesi
Yrd. Doç. Dr. Ali SAYGIN
……………………………….
Elektrik Eğitimi Anabilim Dalı, Gazi Üniversitesi
Tarih: 01/07/2011
Bu tez ile G.Ü. Fen Bilimleri Enstitüsü Yönetim Kurulu Yüksek Lisans
derecesini onamıĢtır.
Prof. Dr. Bilal TOKLU
Fen Bilimleri Enstitüsü Müdürü
……………………………….
TEZ BĠLDĠRĠMĠ
Tez içindeki bütün bilgilerin etik davranıĢ ve akademik kurallar çerçevesinde
elde edilerek sunulduğunu, ayrıca tez yazım kurallarına uygun olarak
hazırlanan bu çalıĢmada bana ait olmayan her türlü ifade ve bilginin
kaynağına eksiksiz atıf yapıldığını bildiririm.
Onur BATTAL
iv
MOTOR KONTROLÜNDE AKTĠF ÖĞRENMENĠN KULLANILMASI
(Yüksek Lisans Tezi)
Onur BATTAL
GAZĠ ÜNĠVERSĠTESĠ
FEN BĠLĠMLERĠ ENSTĠTÜSÜ
Temmuz 2011
ÖZET
GeliĢen
teknolojiyle
birlikte
insanların
bilgi
ve
bilgisayar
teknolojilerinden beklentileri giderek farklılaĢmaktadır. Ġlk baĢlarda
sadece karmaĢık hesaplamaları yapmak ve bilgi aktarımı için kullanılan
bilgisayarlar, artık çeĢitli olaylar karĢısında karar verme ve öğrenebilme
yeteneğine sahip olmuĢlardır. Ġnsanların öğrenen ve karar verebilen
sistemler üretme isteği, yapay zeka kavramının doğmasına neden
olmuĢtur. Bir sistemin tasarlanması ve kontrol edilmesi sistemin
modellenmesi ile mümkündür. Zeki sistemler üretmede çok sıkça
baĢvurulan yöntemlerden biride Yapay sinir ağlarıdır. Yapay sinir ağları
insanın karar verme, iliĢkiler kurma ve öğrenme yeteneklerinin
makinelere kazandırılmasını sağlayan matematiksel sinir hücresi
modelleridir. Bu tezde katı modellemesi yapılan ve 4 hareket eksenine
sahip bir robot kolunun hareket noktalarının servo motorlar ile
konumlandırılması, yapay sinir ağlarının öğrenme türlerinden olan aktif
öğrenme
yani
yaparak
öğrenme
stratejisi
ile
benzetim
sunulmuĢtur.
Bilim Kodu
: 703.3.012
Anahtar Kelimeler : Servo motor, Yapay sinir ağı, Aktif öğrenme.
Sayfa Adedi
: 44
Tez Yöneticisi
: Yrd. Doç. Dr. Ercan Nurcan YILMAZ
olarak
v
USING ACTIVE LEARNING IN MOTOR CONTROL
(M.Sc. Thesis)
Onur BATTAL
GAZI UNIVERSITY
INSTITUTE OF SCIENCE AND TECHNOLOGY
July 2011
ABSTRACT
The expectations in information and computer technologies of people
increasingly differentiated with developing technology.
At first,
computers be used just to make complex calculations and transfer
information, no longer have had the ability to the face of various events
decision-making and to learn. People's desire to produce systems
capable of learning and decision making, has led to the concept of
artificial intelligence. Design and control of the system possible to
system modelling. One of many ways to the frequently referenced in
produce intelligent systems is artificial neural networks. Neural
networks of human decision making, relationship-building and machine
learning capabilities to gain them for the mathematical models of nerve
cells. In this thesis, solid modeling, and the axis of motion with four
points of a robot arm motion with the positioning of the servo motors,
the types of artificial neural networks learning as active learning, ie
learning by doing simulation strategy is presented.
Science Code
: 703.3.012
Key Words
: Servo motor, Artificial neural networks, Active
learning
Page number
: 44
Adviser
: Assist. Prof. Dr. Ercan Nurcan YILMAZ
vi
TEġEKKÜR
ÇalıĢmalarım boyunca yardım ve desteğini esirgemeyen ve beni yönlendiren
kıymetli hocam Sayın Yrd. Doç. Dr. Ercan Nurcan YILMAZ’ a, tez
çalıĢmalarım boyunca yardımlarını esirgemeyen Yrd. Doç. Dr. Yakup
TURGUT’ a, maddi manevi tüm desteklerinden dolayı aileme ve beni hiçbir
zaman yalnız bırakmayıp destekleyen eĢim Öğr. Gör. Funda BATTAL' a
sonsuz teĢekkürlerimi sunarım.
vii
ĠÇĠNDEKĠLER
Sayfa
ÖZET...............................................................................................................iv
ABSTRACT......................................................................................................v
TEġEKKÜR.....................................................................................................vi
ĠÇĠNDEKĠLER.................................................................................................vii
ÇĠZELGELERĠN LĠSTESĠ…............................................................................ix
ġEKĠLLERĠN LĠSTESĠ......................................................................................x
SĠMGELER VE KISALTMALAR......................................................................xi
1. GĠRĠġ.......................................................................................................... 1
2. YAPAY SĠNĠR AĞLARI……........................................................................ 4
2.1. Yapay Sinir Ağlarının Nöron Modeli ................................................... 5
2.2. Yapay Sinir Ağının Yapısı ……........................................................... 9
2.3. Yapay Sinir Ağlarında Öğrenme Stratejileri ..................................... 11
2.3.1. Denetimli (supervised) öğrenme ............................................ 12
2.3.2. Destekleyici (reinforcement) öğrenme......................................13
2.3.3. Denetimsiz (unsupervised) öğrenme........................................14
2.4. Öğrenme Kuralları .............................................................................14
2.4.1. ÇevrimdıĢı (off-line) kurallar.....................................................15
2.4.2. Çevrimiçi (on-line) kurallar.......................................................15
2.5. Öğrenme Oranı.……………………………......................................... 15
2.6. Yapay Sinir Ağlarının Üstünlükleri.………......................................... 16
3. AKTĠF ÖĞRENME…..……....................................................................... 18
3.1. Algoritma ………………..………....................................................... 19
Sayfa
4. UYGULAMA……..……............................................................................. 24
4.1. Katı Model ………………………..................................................... 24
4.2. Ara Yüz …..……………………….................................................... 29
4.3. Servo Motorlar …..……………….................................................... 30
4.3.1. DA servo motorun çalıĢması …............................................ 30
4.3.2. RC servo motoru …………….…........................................... 31
4.4. Benzetim Sonuçları ..………………................................................ 35
5. SONUÇ VE ÖNERĠLER……..……........................................................... 40
KAYNAKLAR..…………….……..……........................................................... 42
ÖZGEÇMĠġ……………….……..……............................................................ 44
ix
ÇĠZELGELERĠN LĠSTESĠ
Çizelge
Sayfa
Çizelge 2.1. Toplama fonksiyonu örnekleri .……...………..............................7
Çizelge 2.2. Aktivasyon fonksiyonları ….……………......................................9
Çizelge 4.1. Taban servo motoru için alınan veriler ......................................35
Çizelge 4.2. 1.Eklem servo motoru için alınan veriler ...................................36
Çizelge 4.3. 2.Eklem servo motoru için alınan veriler ...................................37
Çizelge 4.4. Kıskaç servo motoru için alınan veriler .....................................38
x
ġEKĠLLERĠN LĠSTESĠ
ġekil
Sayfa
ġekil 2.1. Biyolojik nöron yapısı………........................................................... 4
ġekil 2.2. Yapay sinir modeli ………............................................................... 6
ġekil 2.3. Sigmoid fonksiyon …….…….......................................................... 8
ġekil 2.4. Çok katmanlı YSA ………............................................................. 10
ġekil 3.1. Sistemin blok diyagramı ….……................................................... 20
ġekil 3.2. Aktif öğrenme algoritması akıĢ diyagramı ………......................... 21
ġekil 4.1. SolidWorks' de oluĢturulmuĢ model ............................................. 25
ġekil 4.2. 3 boyutlu katı model ……….......................................................... 27
ġekil 4.3. Fiziksel model …………................................................................ 28
ġekil 4.4. Kontrol ara yüzü ………….…….................................................... 29
ġekil 4.5. DC servo fiziksel modeli ..……….................................................. 32
ġekil 4.6. H-Köprüsü fiziksel modeli ……...…................................................33
ġekil 4.7. Sistemin tam fiziksel modeli ……….............................................. 34
ġekil 4.8. Taban servo motoru için iterasyon-motor açısı grafiği ................. 36
ġekil 4.9. 1.Eklem servo motoru için iterasyon-motor açısı grafiği .............. 37
ġekil 4.10. 2.Eklem servo motoru için iterasyon-motor açısı grafiği ............ 38
ġekil 4.11. Kıskaç servo motoru için iterasyon-motor açısı grafiği .............. 39
xi
SĠMGELER VE KISALTMALAR
Bu çalıĢmada kullanılmıĢ bazı simgeler ve kısaltmalar, açıklamaları ile birlikte
aĢağıda sunulmuĢtur.
Simgeler
Açıklama
wij
Ağırlıklar
Vi(t)
Toplama fonksiyonu sonucu
θj
EĢik değer
Gi
GiriĢ değerleri
∆𝒘𝒊 (𝒕)
Ağırlık düzeltme katsayısı
𝝋
Unutma faktörü
𝝀
Öğrenme katsayısı
Kısaltmalar
Açıklama
YSA
Yapay sinir ağı
VLSI
Very-large-scale integration
GUI
Graphical User Interface
DA
Doğru Akım
PWM
Pulse-width modulati
1
1. GĠRĠġ
Günümüzde, geliĢen teknolojiyle birlikte insanoğlu her alanda karmaĢık
problemlerle karĢı karĢıya kalmaktadır. Bu problemlerin çözümü için bazı
durumlarda
kendi
doğasının
veya
çevresindeki
diğer
canlıların
davranıĢlarından faydalanmaktadır. KuĢkusuz bu çözümleri üretirken en
önemli araç olarak bilgisayarlar ve bilgisayarlı sistemleri kullanmaktadır.
Teknolojik geliĢmeler izlendiğinde ilk baĢlarda yalnızca veri aktarımı veya
karmaĢık hesaplamaları yapmak için kullanılan bilgisayarlar artık çeĢitli
olaylarla ilgili karar verme ve iliĢkileri öğrenebilme yeteneğine sahip olmuĢtur.
Modern bilgisayarların her zamankinden daha güçlü hale gelmesi, insanların
çoğu görevleri yerine getirmek için karar verebilen veya iliĢkisel bağıntılar
kurabilen makinelerin geliĢtirilmesini sağlamıĢtır [1-3].
Bir sistemin kontrol edilmesi ve davranıĢlarının belirlenmesi için matematiksel
olarak modellenmesi gerekmektedir. KarmaĢık sistemler birbiriyle bağlantılı
çok sayıda eleman içerdiğinden matematiksel olarak klasik yöntemlerle
modellenmeleri oldukça zordur. Matematiksel olarak modellenemeyen,
hakkında sınırlı bilgiye sahip olunan ve çözülmesi mümkün olmayan fiziksel
sistem ve süreçler, sezgisel yöntemler yardımıyla bilgisayarlar tarafından
çözülebilmektedir. Bu tür çözümlerin en temel özellikleri, bir sistemin giriĢçıkıĢ iliĢkilerine bağlı olarak, bilgiye dayalı karar verebilme ve var olan bilgiler
ile olayları öğrenerek daha sonra karĢılaĢılabilecek olaylar hakkında karar
verebilmeleridir. Böyle bir yaklaĢımla modellenmiĢ bir sistem değiĢen Ģartlara
uyum sağlama ve bilinmeyen sistem giriĢleri için genelleme yeteneğine sahip
olduğundan makul sistem çıkıĢları üretebilmektedir. Akıllı veya sezgisel
yöntemler olarak bilinen bu tür çalıĢmalar "yapay zeka" kavramını
oluĢturmaktadır. Yapay zeka teknikleri kullanılarak oluĢturulmuĢ sistem veya
süreçler "Zeki sistemler" olarak adlandırılır [1, 4, 5].
Belirli bir algoritma veya formülasyon ile çözülemeyen problemlerin çözümü
için en çok kullanılan akıllı yöntem yapay sinir ağlarıdır. Yapay sinir ağları
2
insan beyninin fonksiyonlarından olan öğrenme olayının bir sistemin
kontrolünde veya modellenmesinde kullanılması için geliĢtirilmiĢ, beyin sinir
hücrelerinin matematiksel modelleridir. Yapay sinir ağlarının öğrenme özelliği
herhangi bir olay için girdi ve çıktılar arasındaki iliĢki doğrusal olsun veya
olmasın eldeki mevcut giriĢ-çıkıĢ örneklerinden öğrenerek daha sonra
karĢılaĢacağı hiç görmediği olaylar hakkında genelleme yaparak çözüm
üretmeye dayanır. Bu özelliğinden ötürü yapay sinir ağları elektrik, elektronik,
sinyal iĢleme, görüntü iĢleme ve daha birçok uygulamada kullanılmaktadırlar
[1-3].
Yapay sinir ağları, proses elemanı olarak adlandırılan nöronların birbirlerine
ağırlık değerleri ile bağlanmasıyla oluĢturulur. Bir problemin çözümü için
eldeki veriler kullanılarak yapay sinir ağının öğrenmesi, bu ağırlık değerlerinin
istenilen çıkıĢlar elde edilene kadar değiĢtirilmesiyle sağlanır. Doğru ağırlık
değerleri bulunduğunda, problemin çözümü için oluĢturulan yapay sinir ağı,
problem hakkında genellemeler yapabilme yeteneğine sahip olur. Ağın
öğrenmesi için ağırlık değerlerinin değiĢtirilmesi iĢlemi belirli öğrenme
kurallara göre yürütülür. Bu kurallar kontrol edilecek veya modellenecek
sistemin gerçek zamanlı çalıĢabilmesine göre çevrimiçi (on-line) ve
çevrimdıĢı (off-line) öğrenme kuralları olarak ikiye ayrılır. Çevrimiçi öğrenme
kurallarına göre tasarlanmıĢ sistemler kendilerinden istenilen fonksiyonları
yerine getirirken bir yandan da öğrenmelerine devam ederler. ÇevrimdıĢı
öğrenme kurallarına dayalı sistemler ise öncelikle eldeki örnek veriler
yardımıyla eğitilirler ve daha sonra kullanıma alınırlar. Bu tür sistemlerde ağ
kullanıma alındığında öğrenme olmamaktadır. Daha sonradan sistemin
öğrenmesi gereken yeni olaylar ortaya çıktığında sistem tekrar kullanımdan
çıkartılarak yeniden eğitilmekte, eğitim iĢlemi bitiminde sistem tekrar
kullanıma alınmaktadır [1].
Bu tez çalıĢmasında, yapay sinir ağlarının çevrimiçi (on-line) öğrenme
kuralları kapsamında olan aktif öğrenme stratejisi, katı modellenmesi
simülasyon ortamında gerçekleĢtirilmiĢ 4 eksenli bir robot kolunun belirli bir
3
pozisyona gelebilmesi için her bir eklem noktasına bağlı olan ve robot
kolunun hareketini sağlayan RC Servo motorların kontrolü için benzetim
olarak uygulanmıĢtır.
4
2. YAPAY SĠNĠR AĞLARI
Yapay sinir ağları, insan beyninin öğrenme, ezberleme, iliĢkiler kurup yeni
bilgiler türetme gibi özelliklerini gerçekleĢtirmek amacı ile geliĢtirilen
matematiksel modeller ya da bilgisayar programlarıdır. YSA, insan beyninin
biyolojik yeteneklerini sağlayabildiği için sinyal iĢleme, kontrol teorisi, sistem
modelleme, robotik, zeki sistemler ve kalite kontrolü gibi birçok uygulama
alanında araĢtırmacıların ilgisini çekmektedir.
YSA uyum, öğrenme, genelleme, verilerin kümelenmesi veya organize
edilmesi gibi iĢlemleri kendi hesaplama modeli ile paralel bilgi iĢleme
mantığıyla gerçekleĢtirir. Bir yapay sinir ağının paralel bilgi iĢleme mantığı,
insan
beynini
oluĢturan
sinir
hücrelerinden
(nöronlar)
esinlenerek
oluĢturulmuĢtur. Ġnsan beyni yaklaĢık olarak 1011 adet nörondan meydana
gelir ve her bir nöron birbiri ile yaklaĢık 104 adet bağlantı kurar. ġekil 2.1.' de
bir nöronun yapısı görülmektedir [6,7].
ġekil 2.1. Biyolojik nöron yapısı
Biyolojik bir nöron dentritler, hücre gövdesi ve akson olmak üzere üç temel
bileĢenden meydana gelir. Dentritler, elektrik sinyallerini hücre gövdesine
taĢıyan sinir lifleridir. Hücre gövdesi, dentritler vasıtasıyla taĢınan sinyalleri
iĢleme tabi tutar ve hücrenin kendi elektrik sinyalini oluĢturmasını sağlar.
Nöronda oluĢturulan bu elektrik sinyali hücre gövdesinden diğer nöronlara
5
akson vasıtasıyla taĢınır. Bir sinir hücresinin aksonu ve diğer bir sinir
hücresinin dentriti arasındaki bağlantılar ise snapsler ile sağlanır. Sinirsel
iletim esnasında, nöronların ve her bir snaps arasında kalan bölgelerde
meydana gelen olaylar karmaĢık bir kimyasal iĢlem ile belirlenir ve bu
iĢlemler yapay sinir ağlarının fonksiyonlarının oluĢturulmasına temel teĢkil
eder [7].
Yapay sinir ağları beyinin karmaĢık yapısına benzememektedir. Ancak
biyolojik ve yapay sinir ağları arasında iki önemli benzerlik noktası vardır.
Bunlardan birincisi her iki ağın yapı taĢları birbirlerine çok iyi derecede bağlı
basit hesaplama mekanizmalarıdır. Ġkinci önemli benzerlik ise bu iki yapıyı
oluĢturan yapı taĢları (nöronlar) arasındaki bağlantılar ağın fonksiyonunu
belirler [7].
Ġnsan beyni birçok görevi yerine getirmede geleneksel bilgisayarlardan daha
hızlıdır. Bu biyolojik sinir ağlarının çok büyük ölçekteki paralel yapısından ve
yapıyı
oluĢturan
kaynaklanmaktadır.
paylaĢmaktadırlar.
bütün
nöronların
Yapay
sinir
Çoğu
yapay
aynı
ağları
sinir
ağı
anda
ise
halen
bu
çalıĢmasından
paralel
yapıyı
geleneksel
sayısal
bilgisayarlarda uygulansa bile paralel yapıları bu ağların VLSI, optik aygıtlar
ve paralel iĢlemcilerle uygulanmasını daha uygun kılmaktadır [7].
2.1. Yapay Sinir Ağlarının Nöron Modeli
Bir yapay sinir ağı, bir birine ağırlıklar vasıtasıyla bağlı iĢlem elemanlarından
oluĢur. YSA' daki iĢlem elemanları (düğümler) basit sinirler olarak
adlandırılırlar. ġekil 2.2.' de bir iĢlem elemanının modeli gösterilmektedir.
6
ġekil 2.2. Yapay sinir modeli
Yapay sinir ağını oluĢturan iĢlem elemanları temel olarak üç ana kısımdan
oluĢur:

Ağırlıklar (wij): iĢlem elemanının giriĢlerine uygulanan bilgiler veya
birden fazla iĢlem elemanından ve katmandan oluĢan ağlarda her bir
elemanın giriĢ veya çıkıĢ değerleri ağırlıklar ile çarpılarak ya tek bir
iĢlem elemanının toplama fonksiyonuna ya da diğer bir iĢlem
elemanının giriĢ verisini oluĢturur.

Toplama fonksiyonu ( Vi(t) ): iĢlem elemanının ağırlık değerleri ile
çarpılmıĢ giriĢ değerleri ile hücreye gelen net giriĢ verisini hesaplamak
için kullanılan fonksiyondur. En yaygın kullanım Ģekli her giriĢ
değerinin ağırlı ile çarpılarak toplanması Ģekliyle oluĢturulan ağırlıklı
toplamı bulmaktır [1,6].
Ağırlıklı toplam için toplama fonksiyonu:
𝑉𝑖 𝑡 =
𝑖
𝑖=0 𝑤𝑖𝑗 𝐺𝑖
(2.1)
Ģeklinde ifade edilir. EĢitlik 2.1' de Gi değerleri hücrenin her bir
giriĢinden uygulanan verileri ifade eder. Eğer iĢlem elemanı net girdisi
bir eĢik değer θj ile toplanıp aktivasyon fonksiyonuna gönderilmek
istenirse eĢitlik 2.2 kullanılmalıdır.
7
𝑉𝑖 𝑡 =
𝑖
𝑖=0 𝑤𝑖𝑗 𝐺𝑖
+ θ𝑗
(2.2)
Uygulamada bir problem için en uygun toplama fonksiyonunu
belirlemek için kullanılan bir yöntem yoktur. Genellikle deneme
yanılma yolu ile bir proses elemanının toplama fonksiyonu belirlene
bilir. Çizelge 2.1.' de çeĢitli toplama fonksiyonu örnekleri verilmiĢtir.
Çizelge 2.1. Toplama fonksiyonu örnekleri [1].
Net GiriĢ
Açıklama
Ağırlık değerleri giriĢler ile çarpılır ve
𝑉𝑖 𝑡 =
𝑤𝑖𝑗 𝐺𝑖
𝑖
daha sonra bulunan değerlerde birbiri
ile çarpılarak net girdi hesaplanır.
i kadar girdi içerisinden ağırlıklar ile
𝑉𝑖 𝑡 = 𝑀𝑎𝑥 𝑤𝑖𝑗 𝐺𝑖
çarpıldıktan sonra en büyüğü hücrenin
girdisi olarak kabul edilir.
i kadar girdi içerisinden ağırlıklar ile
𝑉𝑖 𝑡 = 𝑀𝑖𝑛 𝑤𝑖𝑗 𝐺𝑖
çarpıldıktan sonra en küçüğü hücrenin
girdisi olarak kabul edilir.
i kadar girdi içerisinden ağırlıklar ile
𝑉𝑖 𝑡 =
𝑠𝑔𝑛(𝑤𝑖𝑗 𝐺𝑖 )
𝑖
çarpıldıktan sonra pozitif ve negatif
olanların sayısı bulunur. Büyük olan
sayı hücrenin net girdisi olarak kabul
edilir.
Hücreye gelen bilgiler ağırlıklı olarak
𝑉𝑖 𝑡
= 𝑉𝑖 𝑡 𝑒𝑠𝑘𝑖
+
(𝑤𝑖𝑗 𝐺𝑖 )

toplanır ve daha önce gelen bilgilere
eklenerek
hücrenin
net
girdisi
hesaplanır.
Aktivasyon fonksiyonu: giriĢ değerlerinin ağırlıklar ile çarpılıp daha
sonra toplama fonksiyonu ile iĢlem elemanının net girdi değerinin
8
hesaplanmasıyla elde edilen veri aktivasyon fonksiyonunda iĢlenerek
elemanın, girdilere karĢılık gelen çıktıyı üretmesini sağlar. Toplama
fonksiyonunda olduğu gibi aktivasyon fonksiyonunda da farklı
hesaplamalar kullanılabilir. Yapay sinir ağları oluĢturulurken kullanılan
en yaygın aktivasyon fonksiyonu sigmoid fonksiyondur. Sigmoid
fonksiyon,
1
𝑓(𝑉𝑖 ) = 1+𝑒 −𝑉𝑖
(2.3)
eĢitliği ile ifade edilir ve Ģekilsel olarak Ģekil 2.3.' deki gibi gösterilir.
ġekil 2.3. Sigmoid fonksiyon
ĠĢlem elemanlarında kullanılabilecek diğer aktivasyon fonksiyonları çizelge
2.2.' de verilmiĢtir.
9
Çizelge 2.2. Aktivasyon fonksiyonları [1].
Aktivasyon fonksiyonu
Lineer fonksiyon:
𝑓 𝑉𝑖 = 𝑉𝑖
Açıklama
Gelen girdi verileri olduğu gibi hücre
çıkıĢı olarak kabul edilir.
Step fonksiyonu:
=
1
0
𝑓 𝑉𝑖
𝑒ğ𝑒𝑟 𝑉𝑖 > 𝑒ş𝑖𝑘 𝑑𝑒ğ𝑒𝑟
𝑒ğ𝑒𝑟 𝑉𝑖 ≤ 𝑒ş𝑖𝑘 𝑑𝑒ğ𝑒𝑟
Hesaplanan net girdi değerinin belirli
bir
eĢik
değerinin
altında
veya
üstünde olmasına göre hücre çıkıĢı 1
veya 0 değerini alır.
Sinüs fonksiyonu:
𝑓 𝑉𝑖 = sin⁡
(𝑉𝑖 )
Hücrenin
veya
düĢünülen
ağın
öğrenmesi
olayların
fonksiyonuna
uygun
sinüs
dağılım
gösterdiği durumlarda kullanılır.
EĢik değer fonksiyonu:
0
𝑒ğ𝑒𝑟 𝑉𝑖 ≤ 0
𝑓 𝑉𝑖 = 𝑉𝑖 𝑒ğ𝑒𝑟 0 < 𝑉𝑖 < 1
1
𝑒ğ𝑒𝑟 𝑉𝑖 ≥ 1
Girdi verisinin 0 ve 1'den büyük veya
küçük olmasına göre değer alır. 0 ve
1
arasındaki
değerlerin
dıĢında
değer alamaz.
Hiperbolik tanjant fonksiyonu:
𝑓 𝑉𝑖 = (𝑒 𝑉𝑖 + 𝑒 −𝑉𝑖 )/(𝑒 𝑉𝑖 − 𝑒 −𝑉𝑖 )
Gelen net giriĢ verisinin tanjant
fonksiyonundan geçirilmesi ile çıkıĢ
değeri hesaplanır.
2.2. Yapay Sinir Ağının Yapısı
Bir önceki baĢlık altında yapay sinir ağlarını oluĢturmak için kullanılan iĢlem
elemanlarından bahsedilmiĢti. Yapay sinir ağları çok sayıda iĢlem elemanının
sıralı olarak art arda bağlanması ile oluĢturulur. Sinir hücrelerinin ağı
oluĢtururken bir araya gelmesi rastgele olmaz. Yapay sinir ağları genel olarak
10
birbirine paralel bağlı hücrelerden meydana gelen katmanlardan meydana
getirilir ve 3 katmanlı bir yapı oluĢturulur [1,8]. Bunlar:

Giriş katmanı: Bu katman dıĢarıdan alınacak bilgilerin ağ içerisine
alınmasını ve gizli katmanlara aktarmasını sağlar. Bazı ağlarda giriĢ
katmanında bilgiler iĢlenmez ve direkt olarak gizli katmanlara aktarılır.

Gizli katmanlar: GiriĢ katmanından ağ içerisine alınan bilgiler gizli
katmanda iĢlenerek çıkıĢ katmanına aktarılırlar. Çözülecek problemin
karmaĢıklığına
göre
ağ
yapısında
birden
fazla
gizli
katman
oluĢturulabilir. Gizli katmanlara sahip olmayan, sadece giriĢ ve çıkıĢ
katmanı olan ağlar karmaĢık problemlere çözüm üretmekte yetersiz
kalmaktadırlar. Bu nedenle çözülecek problemin karmaĢıklığına göre
en az bir gizli katman kullanılır ve istenirse gizli katman sayısı
artırılabilir [1,9].

Çıkış katmanı: Bu katman ağın çıkıĢ birimidir. Gizli katmandan gelen
bilgiler bu katmanda iĢlenerek, giriĢ katmanından ağ içerisine alınan
bilgiler için üretilen çıkıĢ bilgisi bu katman ile ağ dıĢına gönderilir.
ġekil 2.4.' de iki gizli katmana sahip 4 katmanlı bir YSA görülmektedir.
ġekil 2.4. Çok katmanlı YSA
11
ġekil 2.4.' deki ağı oluĢturan her sinir bulunduğu katmandan sonra gelen
diğer katmanı oluĢturan bütün sinirler ile bağlantılıdır. Her katmandaki
düğümlere sadece önceki katmandaki düğümlerden gelen bilgiler uygulanır.
Bir iĢlem elemanı kendisine asla bağlanamaz. Bir katmanı oluĢturan sinirler
arasında veya geri-besleme Ģeklinde bağlantı yoktur. GiriĢ katmanına
uygulanan bilgiler, giriĢ katmanı ile gizli katmanı birbirine bağlayan ağırlıklar
ile çarpılıp gizli katmana geçmektedir. Gizli katmana gelen bilgiler sırasıyla
toplama fonksiyonu ve aktivasyon fonksiyonlarından geçirilerek gizli katman
ile çıkıĢ katmanı arasında bulunan ağırlıklar ile çarpılıp çıkıĢ katmanına
aktarılır. ÇıkıĢ katmanını oluĢturan düğümler de gizli katmandan ağırlıklar ile
çarpılıp
aktarılan
bilgileri
yine
sırasıyla
toplama
ve
aktivasyon
fonksiyonlarından geçirerek ağ giriĢine uygulanan bilgilere karĢılık üretilmek
istenen çıkıĢ verisini oluĢtururlar. YSA üzerinde meydana gelen bilgi akıĢı
giriĢ katmanından çıkıĢ katmanına doğru tek yönlü bir iletiĢim Ģeklinde
gerçekleĢtirilir [8,9].
2.3. Yapay Sinir Ağlarında Öğrenme Stratejileri
Yapay sinir ağlarının en önemli özelliklerinden olan öğrenme, her bir iĢlem
elemanının giriĢlerine bağlı olan ağırlık değerlerinin, belirli algoritmalara veya
stratejilere göre değiĢtirilme iĢlemidir. YSA çıkıĢında arzu edilen sonuçlara
ulaĢmak için giriĢ bağlantılarının ağırlıklarının değiĢtirilme iĢlemi adaptasyon
fonksiyonu olarak adlandırılır ve öğrenme modunu belirler. Bir yapay sinir
ağının öğrenme stratejisi, bu ağ ile öğrenmeyi gerçekleĢtirecek sistem ve
kullanılan öğrenme algoritmasına bağlı olarak değiĢmektedir. Yapay sinir
ağlarının öğrenme iĢlemi genel olarak 3 tip öğrenme stratejisi gerçekleĢtirilir.
Bunlar;
Denetimli
(supervised)
öğrenme,
Destekleyici
(reinforcement)
öğrenme, denetimsiz (unsupervised) öğrenmedir. Denetimli öğrenme bir
öğretmen gerektirir. Öğretmen, bir veri eğitim kümesi veya ağ sonuçlarının
performans sınıflandırması olabilir. Her iki öğrenme stratejisinde de öğretmen
öğrenme iĢlemini destekleyici (reinforcement) olabilir. Yani sadece ağ
tarafından üretilen çıktının doğru veya yanlıĢ olduğunu gösteren bir sinyal ile
12
öğrenen sisteme yardımcı olur. Öğrenme iĢleminde harici bir öğretici
olmadığı zaman öğrenme iĢlemini gerçekleĢtirecek sistem, ağ içerisinde
tasarlanmıĢ bazı dâhili ölçütlere göre kendini organize etmelidir ve bu iĢlem
yaparak öğrenme kavramını oluĢturur [10].
2.3.1. Denetimli (supervised) öğrenme
Yapay sinir ağları ile yapılan uygulamaların çoğunda öğrenme iĢlemi
denetimli (supervised) öğrenme Ģeklinde olur. Bu mod da bir yapay sinir
ağının gerçek çıkıĢı istenilen çıkıĢ ile karĢılaĢtırılır. Bağlantı ağırlıkları
genellikle baĢlangıçta rastgele belirlenir. Bir sonraki iterasyonda gerçek çıkıĢ
verisinin istenilen çıkıĢ değerine daha yakın bir değerde olması için ağırlıklar
tekrar ayarlanır. Öğrenme yöntemi tüm iĢlem elemanlarının hatalarını en aza
indirmek için çalıĢır [10].
Denetimli öğrenme ile yapay sinir ağı kullanılmaya baĢlanmadan önce
eğitilmelidir. Eğitim ağa giriĢ ve çıkıĢ verisinin gösterilmesiyle gerçekleĢtirilir.
Bu veriler genellikle eğitim veri seti olarak adlandırılır. Veri seti sistemin
öğrenmesi istenilen giriĢlere karĢılık gelen çıkıĢ değerlerinden meydana gelir.
Verilen sıralı giriĢ verileri için gerekli çıkıĢlar üretildiğinde ağ arzu edilen
istatiksel doğrula ulaĢmıĢ olur. Daha fazla öğrenme gerekli olmadığında
öğrenme algoritması ile değiĢtirilen ağırlık değerleri son hali ile bırakılır.
Birçok uygulamada gerçek veriler kullanılmalıdır. Bu tür eğitim aĢamaları çok
zaman alabilmektedir ve denetimli öğrenme ile eğitilen prototip sistemlerde
eğer iĢlem gücü yetersiz ise eğitim süreci haftalar almaktadır [10].
Bir yapay sinir ağının denetimli öğrenme sırasında eğitim veri seti ile
göstermiĢ olduğu performansının yanı sıra daha sonra hiç görmemiĢ olduğu
giriĢ verileri karĢısında neler yapabileceği de önemlidir. Bir sistemin
eğitildikten sonra test verilerine makul cevaplar vermemesi YSA' nın eğitim
sürecinin bitmediği anlamına gelir. Test aĢaması ağın, bir uygulama içinde
13
yer alan genel kalıpları öğrenip öğrenmediğini anlamak için yapılan basit
ancak çok önemli bir aĢamadır [10].
2.3.2. Destekleyici (reinforcement) öğrenme
Bu stratejide de denetimli öğrenmede olduğu gibi sistemin öğrenmesine bir
öğretmen yardımcı olur. Fakat denetimli öğrenmenin aksine öğrenme
sırasında sisteme sadece giriĢ verileri gösterilirken çıkıĢ veri seti gösterilmez.
Bunun yerine sisteme gösterilen giriĢ verilerine karĢılık gelen çıkıĢları ağın
kendisinin üretmesi beklenir ve öğretmen sadece ağın ürettiği çıkıĢın doğru
veya yanlıĢ olduğunu bildiren bir iĢaret sinyali üretir. Daha sonra sistem bu
iĢaret sinyalini dikkate alarak ya öğrenme sürecini bitirir ya da süreci devam
ettirir [1].
Birçok karmaĢık sistem için üretilen sistem çıkıĢının doğru veya yanlıĢ olma
denetimi,
denetimli
öğrenme
stratejileri
için
eğitim
verilerinin
oluĢturulmasında hem zaman alıcı hem de zor bir süreci gerektirir. Bu tür
uygulamalarda destekleyici öğrenme stratejilerinin kullanılması eğitim için
gerekli verileri sayısının azalmasını sağlar. Makine öğrenmesi alanında
sistemden beklenen bir eylemin, basit bir değerlendirme aĢamasında
geçirilmesine dayalı öğrenme Ģekline destekleyici (reinforcement) öğrenme
denmektedir. Çevreden veya durum tahmin ağından gelen değerlendirme
bilgisi destek sinyali olarak adlandırılır ve bu sinyal sistem çıkıĢının doğru
veya yanlıĢ olduğunu tahmin edebilir. Eğer sistemin eylemleri karmaĢık bir
öğrenme aĢaması için önceden planlanan doğrultuda değilse, sistemden en
iyi çıkıĢı elde edebilmek için çıkıĢ tahmin iĢlemi devam ettirilmek zorundadır.
Sistemin eğitimi için gerekli destek sinyali sistemden alınacak bir eylemler
sırasından sonrada elde edilebilir. Durum sinyali karar denetim kontrolü
uygulandıktan sonra yok olacağından, karar denetim kontrolü destekleyici
öğrenmede, problem çözümü aĢamasında yapay sinir ağının eğitim için
ağırlık değerlerinin ayarlanması iĢleminde büyük bir öneme sahiptir [11].
14
2.3.3. Denetimsiz (unsupervised) öğrenme
Bu öğrenme stratejisinde sistemin öğrenmesine yardımcı olan bir öğretmen
yoktur. Olayları öğrenecek sisteme sadece giriĢ verileri gösterilir. Sisteme
sunulan örnekler arasındaki iliĢkinin YSA' nın kendi kendine öğrenmesi
beklenir. Bu yüzden bu tür stratejiler bilgisayarlara kendi kendilerine
öğrenebilme yeteneği kazandırabilir. Daha çok sınıflandırma ve haritalama
gibi YSA uygulamalarında tercih edilen öğrenme stratejisidir. Denetimsiz
öğrenme alanlarından olan öz denetimli (self supervised) öğrenme bu
stratejinin en ilgi çeken alanıdır. Çünkü bu tür bir strateji ile eğitilen ağlar
ağırlık değerlerinin değiĢimi veya ayarlanması için hiçbir dıĢ etkiye ihtiyaç
duymazlar. Bunun yerine kendi içlerinde kendi performanslarını izlerler. Yani
ağ giriĢine uygulanan verilerin eğilimlerini bulmaya çalıĢırlar ve ağın
fonksiyonuna göre kendi içlerinde bir uyarlama yaparlar [1,10].
Bir denetimsiz öğrenme algoritması ağı oluĢturan iĢlem elemanı kümesi
içerisindeki iĢbirliğini göz önüne alır. Yani harici bir giriĢ kümesindeki
herhangi bir iĢlem elemanının aktif olması, bu küme içerisinde yer alan diğer
iĢlem elemanlarının da aktivitelerinin artmasına neden olmaktadır. Aynı
Ģekilde herhangi bir iĢlem elemanının aktivitesinin azalması, yine kümeyi
oluĢturan
tüm
iĢlem elemanları üzerinde
azaltıcı bir etki
olmasını
sağlamaktadır.
2.4. Öğrenme Kuralları
Yapay sinir ağlarında öğrenme, yukarıda bahsedilen stratejilerden herhangi
birinin uygulanması halinde bazı kurallar çerçevesinde gerçekleĢtirilir.
Bahsedilen kurallar uygulanma Ģekline göre çevrimdıĢı (off-line) ve çevrimiçi
(on-line) kurallar olmak üzere ikiye ayrılır.
15
2.4.1. ÇevrimdıĢı (off-line) kurallar
ÇevrimdıĢı öğrenme kurallarına göre öğrenen sistemler eğitim aĢamasında
kullanıma alınmazlar. YSA' nın eğitim süreci bittikten sonra ağırlık değerleri
sabitlenir ve sistem daha sonra iĢletmeye alınır. Bu kurallar ile eğitilen
sistemlerin daha sonradan öğrenmeleri gereken farklı olaylar veya sistem
davranıĢları ortaya çıkarsa sistem yeniden, yeni verilerle eğitilmek için devre
dıĢı bırakılır. Yapay sinir ağlarının çoğu çevrimdıĢı öğrenme tiplerine göre
eğitilir [12].
2.4.2. Çevrimiçi (on-line) kurallar
Çevrimiçi öğrenme kuralları sistem iĢletmedeyken bir karar verme algoritması
ile öğrenmesine gerçek zamanlı olarak devam etmesine dayanır. Yani sistem
kendisinden beklenen iĢlevleri veya görevleri yerine getirirken bir yandan da
yeni olayları ve davranıĢları öğrenmeye devam eder. Bu öğrenme tipi çevrim
dıĢı öğrenme kurallarında göre daha karmaĢık bir tasarım yapısına sahiptir
[12].
Çevrimiçi öğrenme kapsamında olan aktif öğrenme 3. Bölümde daha detaylı
olarak anlatılmıĢtır.
2.5. Öğrenme Oranı
Yapay sinir ağlarının öğrenme hızı çeĢitli kontrol edilebilir faktörlere bağlıdır.
Öğrenme yaklaĢımı seçiminde birçok faktör dikkate alınmalıdır. ÇevrimdıĢı
öğrenme kurallarının uygulandığı öğrenen sistemlerde, daha düĢük öğrenme
oranları ile YSA' nın eğitilmesi ve öğrenmesi daha fazla zaman almaktadır.
Öğrenme oranının artırılması ağın eğitim sürecini kısaltır. Aktif öğrenme ile
öğrenen bir sistemin çevrimiçi olarak verilen bir giriĢ değeri için istenilen bir
çıkıĢı sağlaması ne kadar kısa sürede gerçekleĢirse sistemin cevabı o kadar
kısa sürede üretilmiĢ olur [10].
16
Zamanın yanı sıra çeĢitli faktörler öğrenme süreci içerisinde dikkate
alınmalıdır. YSA' nın karmaĢıklığı, boyut, paradigma seçimi, mimari, öğrenme
kuralları ve ağdan istenen doğruluk bir bütün olarak dikkate alınmalıdır. Bu
faktörler ağın eğitim sürecinin uzunluğunun belirlenmesinde önemli rol oynar.
Bu faktörlerden herhangi birisinin değiĢimi eğitim süresini uzatabilir veya ağ
çıkıĢının kabul edilemez değerlerde olmasına yol açar [10].
Çoğu öğrenme fonksiyonu bazı Ģartlar veya öğrenme sabitlerine sahiptir.
Öğrenme oranı 0 ile 1 arasında bir değerdir. Eğer öğrenme oranı 1 'den
büyük olursa öğrenme algoritmasında ağırlıkların düzeltilmesi sırasındaki
aĢma değeri ağ çıkıĢ değerinin salınımlı olmasına neden olur. Küçük
öğrenme oranları ise anlık hata değerinin çabucak düzeltilmesine imkân
vermez ancak küçük adımlar ile hataların düzeltilmesi ağ çıkıĢında en az
yakınsamaya ulaĢılmayı sağlar [10].
2.6. Yapay Sinir Ağlarının Üstünlükleri
Yapay sinir ağlarının diğer sistemlere göre avantajları aĢağıda açıklanmıĢtır
[13].

Matematiksel olarak modellenmesi mümkün olmayan sistemleri veya
problemleri çözebilirler.

Bir sistemin davranıĢındaki doğrusal olmayan iliĢkileri kolaylıkla
modelliye bilirler.

Yapay sinir ağlarının çalıĢma hızları geleneksel sistemlerden hızlıdır.

Öğrenecekleri problemlerde meydana gelebilecek değiĢiklere karĢı
tekrar eğitilebilirler ve uyum yetenekleri vardır.

Mimarilerinden kaynaklanan paralel çalıĢma özelikleri gerçek zamanlı
çalıĢmalarını kolaylaĢtırmaktadır.
17

Genelleme yeteneğine sahip olduklarından YSA' nın eğitim sırasında
kullanılan eğitim veri seti dıĢındaki veriler içinde çıkıĢlar üretebilirler.
18
3. AKTĠF ÖĞRENME
Denetimli öğrenme ile eğitilecek sistemlerin eğitim aĢaması, bu sistemden
üretilen giriĢ ve çıkıĢ verilerinden oluĢturulmuĢ bir eğitim kümesine dayanır.
KarmaĢık sistemlerde eğitim veri setinin sistemden kolayca elde edilememesi
bu tür sistemlerin yapay sinir ağları ile modellenmesini ve kontrolünü
zorlaĢtırır. Bunun yanında yapay sinir ağının eğitimi için kullanılan yaklaĢım
fonksiyonunun kalitesi ve eğitim veri kümesinin büyüklüğüne bağlı olarak
eğitim süresinin uzun olması gibi problemlerle de karĢılaĢılır. Güvenilir bir
yaklaĢım elde edebilmek için, sistemin durum uzayını kaplayan ve sistemden
beklenen göreve özgün veri örneklerine ihtiyaç duyulur. Ayrıca öğrenen
sisteme etkin bir Ģekilde sunulan veriler sistem çıkıĢının hızlı bir Ģekilde
sonuca yakınsamasına neden olabilir. Bu yakınsaman, rastgele seçilmiĢ
eğitim verilerine sistemin zaten yeteri kadar aĢinalık kazanmasından
kaynaklanır ve bu aĢamadan sonra sistemin öğrenilecek olay hakkında
genelleme yapma kabiliyetini artırmak mümkün olmaz. Bu problem öğrenme
iĢleminin her iterasyonunda kötüleĢir ve ağın olayı öğrenme kabiliyeti azalır.
En verimli öğrenme için veri seçimini optimize etme metotları literatür de
denetimli ve denetimsiz öğrenmede aktif veri seçimi kavramı altında veya
model tabanlı destekleyici öğrenmede keĢif stratejileri adıyla anılır [14].
Dinamik olarak değiĢen bir sistemin etkili gerçek zamanlı kontrolünün
sağlanması için sürekli olarak kendini adapte etme yeteneğine sahip bir
kontrol sistemi uygulanmasıyla mümkündür. Bu ise kontrol sisteminin, kendi
kontrol parametrelerinde dinamik sistem için bir planlar dizisi ile uygun
değiĢiklikler yapmasıyla sağlanır. Yapay sinir ağları bu tür karmaĢık
problemleri çözmek için bir sistemin giriĢleri ile arzu edilen çıkıĢlarının
doğrusal
olmayan
haritalama
yeteneği
ile
elde
edilmesini
sağlayabildiklerinden gerçek zamanlı kontrolün istendiği kontrol sistemi
uygulamaları için uygun yapılardır [15].
19
Aktif öğrenme, dinamik olarak değiĢen problemlerin çözümü için YSA tabanlı
denetleyici
tasarımında,
sistem
değiĢikliklerine
bağlı
olarak
kontrol
parametrelerinin güncelleĢtirilmesi için önemli rol oynamaktadır. KeĢfetme ile
öğrenme olarak da nitelenebilen aktif öğrenmede, öğrenen sistem kendi
deneyim ve ön bilgileriyle problemi çözmeye çalıĢır. Yani sistemin kendi
çevresiyle etkileĢime girerek, deneme yanılma yolu ile çevresindeki
değiĢiklikleri keĢfetmesi ve kendisini adapte etmesi sağlanır. KeĢfederek
öğrenme basitçe 'yaparak öğrenme' olarak tanımlanır. Bu öğrenme metodu
denetimli makine öğrenmesinde 'aktif makine öğrenmesi' olarak bilinir.
Denetimli öğrenmede öğrenecek sisteme eğitimi için yeteri sayıda eğitim
örneklerinin sunulması gerekir. Örnekler ve öğrenen sistemden elde edilen
öğrenme çıktıları arasındaki hata sinyali öğrenme sürecinin devamlılığını
kontrol etmek için kullanılır. Eğitim verilerini elde etmek bazen zor olmaktadır.
Aktif öğrenme, mevcut örneklere olabilecek tüm durumları keĢfederek yeni
örnekler eklenmesini mümkün kılmaktadır [16, 17].
3.1. Algoritma
Bu tez çalıĢmasında, hareket açıları RC servo motorlarla sağlanan 4 eksenli
bir robot kolunun modellenmesi simulink ortamında gerçekleĢtirilmiĢtir. ġekil
3.1.' de sistemin blok diyagramı verilmiĢtir.
Her bir nöronun giriĢ değerleri hareket noktalarının ulaĢmasının istenildiği
açıların derece cinsinden değerleridir. Nöronlar tarafından üretilen çıkıĢ
değerleri ise hareket noktalarına bağlı RC servo motorların anahtarlama
sinyalleridir. Aktif öğrenme algoritması ile nöron giriĢ ağırlık değerleri (wi)
Ģekil 3.2.' de gösterilen akıĢ Ģeması ile değiĢtirilmektedir.
20
ġekil 3.1. Sistemin blok diyagramı
21
ġekil 3.2. Aktif öğrenme algoritması akıĢ diyagramı
22
ĠĢlem elemanlarının ağırlıklı toplam için toplam fonksiyonu:
𝑉𝑖 𝑡 =
4
𝑖=1 𝑤𝑖 𝐺𝑖
(3.1)
eĢitliği ile hesaplanmıĢtır.
Hesaplanan ağırlıklı toplamlar her bir nöronun çıkıĢ değerlerinin elde edilmesi
için
1−𝑒 −𝑉 𝑖
𝑓 𝑉𝑖 = 1+𝑒 −𝑉 𝑖
(3.2)
hiperbolik tanjant sigmoid fonksiyonundan geçirilmiĢtir.
Ağırlıkların güncelleĢtirilmesi
𝑤𝑖 𝑡 + 1 = 𝑤𝑖 𝑡 + ∆𝑤𝑖 (𝑡)
(3.3)
eĢitliği gerçekleĢtirilir. EĢitlikte yer alan ağırlık düzeltme katsayısı (∆wi)
∆𝑤𝑖 𝑡 = 𝜑𝑓(𝑉𝑖 )[𝜆𝑉𝑖 𝑡 − 𝑤𝑖 𝑡 ]
(3.4)
ağırlık düzeltme kuralı ile hesaplanır. EĢitlikte yer alan φ unutma faktörüdür
ve genellikle ağırlıklardaki artıĢı sınırlandırmak için 0.01 ile 0.1 arasında
seçilir. 𝜆 ise öğrenme katsayısıdır.
Algoritmanın iĢleyiĢ aĢamaları Ģu Ģekildedir
:

BaĢlangıç ağırlık değerleri (w1, w2, w3, w4) rastgele atanır,

Hareket noktalarının açı değerleri derece cinsinden nöronların
giriĢlerine uygulanır,

Her bir nöronun ağırlıklı toplamı eĢitlik 3.1 ile hesaplanır,
23

EĢitlik 3.2 ile iĢlem elemanlarının çıkıĢ değerleri elde edilir,

Elde edilen çıkıĢ değerleri DC servo motorların anahtarlama sinyali
olarak sürücülere uygulanır,

Hareket noktalarının ulaĢtığı açı değerleri istenilen açı değerleri ile
karĢılaĢtırılarak çıkıĢ hatası bulunur,

Bulunan çıkıĢ hatası kabul edilebilir sınırlar içerisinde ise ağılık
değerleri değiĢtirilmez,

Eğer çıkıĢ hatası kabul edilebilir sınırlar içerisinde değil ise öncelikle
eĢitlik 3.4' e göre ağırlık düzeltme katsayısı hesaplanır. Daha sonra
eĢitlik 3.3' e göre ağırlık güncelleĢtirilmesi yapılarak yeni ağırlık
değerleri bulunur.

Ġstenilen çıkıĢ değerine ulaĢılıncaya kadar bir önceki adımdaki ağırlık
güncelleĢtirme iĢlemi tekrar edilir.
24
4. UYGULAMA
4.1. Katı Model
Bu tez çalıĢmasında uygulaması gerçekleĢtirilen aktif öğrenme algoritması, 3.
bölümde anlatıldığı gibi nöronlar üzerinden bir robot kolunun eklem yerlerinin
hareketini sağlayan DC Servo motorların kontrol sinyallerini üretmek için
kullanılmıĢtır. 3 boyutlu olarak katı modellemesi SolidWorks yazlımında
yapılan 4 eksenli robot kolu daha sonra SimMechanics araç kutusu
kullanılarak MATLAB/Simulink programına aktarılmıĢ ve MATLAB/Simulink
ortamın da Simscape yazılımı kullanılarak geliĢtirilmiĢtir.
SimMechanics, Simulink programında, katı cisimlerin bağlantı noktaları ve
newton dinamikleri yardımıyla birbirlerine bağlanarak mekaniksel sistemlerin
dizayn edilmesini ve simulasyonunun gerçekleĢtirilmesini sağlamak için
oluĢturulmuĢ bir mühendislik yazılımıdır. Bu yazılımın içerisinde barındırdığı
SimMechanics Link aracı ise CAD programları (AutoCad, SolidWorks v.b.) ve
Simulink içerisindeki SimMechanics yazılımı arasında bir köprü görevi görür.
Bu tez çalıĢmasında SolidWorks de oluĢturulan robot kolunun katı modeli
SimMechanics eklentisi kullanılarak Simulink' e aktarılmıĢtır. SolidWorks
SimMechanics eklentisi ile fiziksel model olarak gerçekleĢtirilmiĢ robot
kolunun SolidWorks montaj dosyası XML veya grafik dosyası formatı olarak
kaydedilmiĢ ve Simulink içerisindeki SimMechanics yazılımı ile düzenlenmesi
ve kontrol edilmesi için Simulink ortamına aktarılmıĢtır.
ġekil 4.1.' de robot kolunun SolidWorks' de hazırlanmıĢ ve SimMechanics
Link eklentisi ile Simulink ortamına aktarılmadan önceki montajlı hali
gösterilmektedir.
25
ġekil 4.1. SolidWorks' de oluĢturulmuĢ model
26
Simscape, Simulink ortamında fiziksel olarak sistem modellemesi için
kullanılan blok kütüphaneleri ve özel benzetim özelliklerini barındıran bir
yazılımdır. Standart simulink modelleme yaklaĢımından farklı olarak, özellikle
gerçek
fiziksel
bileĢenlerden,
modellenecek
sistemin
benzetiminin
oluĢturulmasına imkân vermektedir.
Simulink blokları temel matematiksel iĢlemleri temsil etmektedir. Simulink
blokları birbirlerine bağlandıklarında ortaya çıkan diyagram, benzetimi
yapılacak sistemin matematiksel modeli veya temsili eĢdeğeridir. Simscape
teknolojisi fiziksel ağ yaklaĢımına dayalı sistem tasarımı altında modeller
oluĢturulmasını sağlar. Bu yaklaĢıma göre her sistem, bağlantı noktaları ile
enerji alıĢveriĢi vasıtasıyla kendisini oluĢturan iĢlevsel elemanların etkileĢimi
ile temsil edilmektedir.
Simscape kütüphanelerinde yer alan fiziksel elemanların bağlantı noktaları iki
yönlüdür ve elemanlar arasındaki fiziksel bağlantıları taklit ederler. Simscape
blok bağlantıları pompa, valf ve benzeri gibi gerçek bileĢenlerin bağlantılarını
andırır. BaĢka bir deyiĢle simscape diyagramları fiziksel sistem düzenini
sağlamaktadır. Gerçek fiziksel bileĢenlerin bağlantılarında olduğu gibi
simscape blokları birbirlerine bağlandıklarında sistemde oluĢan bilgi veya
sinyal akıĢının yönünün belirtilmesine gerek yoktur. Fiziksel ağ yaklaĢımı
sayesinde
değiĢkenler ve
çift
yönlü
fiziksel bağlantılarda
gelebilecek geleneksel sorunlar giderilmiĢ olur [20].
Robot kolunun 3 boyutlu katı modeli ġekil 4.2.' de gösterilmiĢtir.
meydana
27
ġekil 4.2. 3 boyutlu katı model
Sistemin 3 boyutlu katı modelinin elde edilebilmesi için simscape ortamında
oluĢturulmuĢ fiziksel model ġekil 4.3.' de gösterilmiĢtir.
28
ġekil 4.3. Fiziksel model
29
4.2. Ara Yüz
Katı modellemesi ve fiziksel modeli oluĢturulan robot kolunun aktif öğrenme
algoritması ile kontrolünün sağlanabilmesi için MATLAB/GUI ile bir ara yüz
hazırlanmıĢtır. Aktif öğrenme algoritması GUI ara yüzü vasıtasıyla MATLAB
programla dili kullanılarak m-file editörü üzerinden yazılmıĢtır. OluĢturulan
ara yüz ġekil 4.4.' de gösterilmiĢtir.
ġekil 4.4. Kontrol ara yüzü
Hazırlanan ara yüz iki kısımdan oluĢmaktadır. Birinci kısım aktif öğrenme
algoritması ile robot kolunun hareket noktalarının ulaĢmasının istendiği açı
değerlerinin girildiği bölümdür. Bu bölümde derece cinsinden girilen taban
açısı, 1. Eklem açısı, 2. Eklem açısı ve kıskaç açı değerleri her bir öğrenici
nöronun giriĢ verilerini oluĢturmaktadır. Açı değerlerinin girilmesiyle tamam
butonuna tıklanıldığında, robot kolunun bu dört hareket noktasının istenilen
30
açı değerlerine gelebilmeleri için bölüm 3'de anlatılan algoritma ile öğrenici
nöronların ağırlık değerleri değiĢtirilerek, hareket noktalarına bağlı RC Servo
motorların anahtarlama sinyalleri üretilir ve robot kolunun yaparak öğrenme
mantığı ile istenilen pozisyona gelmesi sağlanır.
Ġkinci kısımda ise istenirse robot kolunun kontrolü, RC servo motorların
anahtarlama sinyallerinin süreleri girilerek manuel olarak yapılabilmektedir.
4.3. Servo Motorlar
Servo motorlar, kontrol motorları olarak da adlandırılan elektrik motorları olup
özellikle geri beslemeli kontrol sistemlerinde çıkıĢ hareketini kontrol edici
olarak kullanmak üzere tasarlanır ve üretilirler. Gömülü kontrol devrelerine
sahiptirler ve birkaç vat ile birkaç yüz vat olacak Ģekilde farklı güçlerde
yapılırlar. Servo motorların yüksek hız tepkisine sahip olmaları rotor ataletinin
düĢük olmasını gerektirir. Bu motorlar yapı olarak daha küçük çaplı ve daha
uzundurlar. Servo motorların en yaygın kullanım alanlarına örnek olarak;
robotlar, radarlar, bilgisayar malzemeleri, takım tezgâhları, izleme ve yol
gösterme sistemleri ve iĢlev denetleyiciler gösterilebilir [18].
4.3.1. DA servo motorun çalıĢması
Bir servo motorun milinden geri besleme sinyalini almak için dinamik
performansı düĢük, kullanımı kolay ve ekonomik olan tako jeneratör, hall
sensör veya artırımlı enkoder geri besleme elemanları kullanılır. Sistem
darbe geniĢlik modülasyonu (PWM) tekniği kullanılarak kontrol edilir.
Pozisyon bilgisine karĢılık gelen PWM sinyali motor sürücüsüne uygulanır.
Servo motor milindeki geri besleme elemanı giriĢ bilgisini referans alıp rotoru
istenilen referans konumuna gelene kadar hareket ettirir. GiriĢ referans
değeri değiĢmediği sürece milin konumu sabit kalır [19].
31
4.3.2. RC servo motor
RC servo motor içerisinde bir doğru akım motoru, kod çözücü, motoru
sürmekte kullanılan elektronik bir devre ve motor gücünü arttırmakta
kullanılan plastik veya metal diĢlilerden oluĢan servo motor çeĢididir. RC
servo motorların elektronik sürücüsü kendi içerisinde bulunduğu için ve fazla
akım çekmedikleri için mikrodenetleyiciler ile de direkt olarak sürülebilirler.
RC servoların çalıĢma gerilimleri 4,8 - 6V civarındadır ve standart RC
servonun gücü 1 cm/3.5 kg’ dır. Bu değer servonun miline bağlanacak kolun
merkezden uzaklığının 1 cm olduğunda servonun bu kola 3.5 kg güç
verebileceği
anlamına
gelir.
Bu
mesafe
3.5
cm
olursa
servonun
uygulayabileceği güç 1 kg’ a düĢmektedir. Yani servonun miline bağlanacak
kolun uzunluğu ile servonun kol gücü arasında ters orantı vardır.
Benzetimde
MATLAB/Simulink-Simscape
ortamında
fiziksel
olarak
modellenmiĢ servo motor kullanılmıĢtır. ġekil 4.5.' de servo motorun fiziksel
modellenmesi gösterilmektedir.
32
ġekil 4.5. DC servo fiziksel modeli [21].
Servo motor kontrol elektroniği (H-Köprüsü) ve motor miline bağlı bir Ģaft
diskine sahip olarak modellenmiĢtir. GiriĢ sinyali olarak uygulanan gerilim
anahtarlama elemanları yardımı ile H-Köprüsü vasıtasıyla servo motora
uygulanmaktadır. Anahtarlama sinyali, robot kolunun eklem noktalarına göre
maksimum
iletim
süresi
6.6
saniye
olacak
Ģekilde
aktif
öğrenme
algoritmasıyla öğrenici nöronlar tarafından üretilir. Herhangi bir hareket
noktasına bağlı servo motorun sürücüsüne 6.6 saniye iletim süresine sahip
bir sinyal uygulandığında, hareket noktasının 360 0 hareket ettirileceği
anlamına gelir. Yani istenilen hareket açısına göre sürücüye uygulanacak
sinyal 0 ile 6.6 saniye arasında değiĢmektedir.
33
ġekil 4.6.' da H-Köprüsü fiziksel modeli gösterilmiĢtir.
ġekil 4.6. H-Köprüsü fiziksel modeli [21].
ġekil 4.7.' de sistemin, MATLAB/Simulink-Simscape ortamında oluĢturulmuĢ
tam fiziksel modeli gösterilmektedir.
34
ġekil 4.7. Sistemin tam fiziksel modeli
35
4.4. Benzetim Sonuçları
Aktif öğrenme algoritması önceki bölümde anlatılan sistemin tam fiziksel
modeline uygulanmıĢtır. Robot kolunun taban, 1.eklem, 2.eklem ve kıskaç
hareket noktalarının pozisyonları RC servo motorlar ile kontrol edilmiĢtir. Her
hareket noktasının ulaĢması istenilen açı değerleri kontrol ara yüzünde
bulunan aktif öğrenme kısmından girilmiĢtir. Ara yüz altında oluĢturulan
Matlab m-file dosyasında bölüm 3' de anlatılan aktif öğrenme algoritması
oluĢturulmuĢ ve her eklem noktasının ulaĢması istenilen açı değerleri için
gerekli motor anahtarlama sinyalleri ilgili bu algoritma ile öğrenen nöronlar
tarafından üretilmiĢtir. Benzetimde taban için 120 0, 1.eklem için 750, 2.eklem
için 400 ve kıskaç için 2500 referans açı değerleri seçilerek nöronların bu açı
değerleri için RC servo motor anahtarlama sinyallerini deneyerek bulmaları
sağlanmıĢtır.
Çizelge 4.1.' de 1200 referans değerine göre taban servo motoru için alınan
değerler verilmiĢtir.
Çizelge 4.1. Taban servo motoru için alınan veriler
Ġterasyon
Ağırlık Değeri
Nöron ÇıkıĢı
Motor Açısı
1
2
3
4
5
6
7
8
9
10
0.127
0.0615
0.0462
0.0375
0.0318
0.0277
0.0246
0.0221
0.0201
0.0185
15.238
7.389
5.543
4.505
3.819
3.326
2.952
2.657
2.418
2.221
831.156
403.033
302
245
208.307
181.416
161.016
144.926
131.889
121.144
ġekil 4.8.' de taban servo motoru için alınan verilerden elde edilen iterasyon
sayısı motor açısı grafiği verilmiĢtir.
36
ġekil 4.8. Taban servo motoru için iterasyon-motor açısı grafiği
Çizelge 4.2.' de 750 referans değerine göre 1.eklem servo motoru için alınan
değerler verilmiĢtir.
Çizelge 4.2 1.Eklem servo motoru için alınan veriler
Ġterasyon
Ağırlık Değeri
Nöron ÇıkıĢı
Motor Açısı
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
0.1419
0.0816
0.0617
0.0503
0.0427
0.0372
0.0331
0.0298
0.0271
0.0249
0.0231
0.0215
0.0211
0.0189
0.0178
10.641
6.125
4.629
3.774
3.206
2.796
2.484
2.238
2.038
1.873
1.733
1.613
1.509
1.418
1.338
580.413
334.088
252.488
205.852
174.871
152.507
135.489
122.071
111.162
102.162
94.526
87.981
82.308
77.344
72.981
37
ġekil 4.9.' da 1.eklem servo motoru için alınan verilerden elde edilen
iterasyon sayısı motor açısı grafiği verilmiĢtir.
ġekil 4.9. 1.Eklem servo motoru için iterasyon-motor açısı grafiği
Çizelge 4.3.' de 400 referans değerine göre 2.eklem servo motoru için alınan
değerler verilmiĢtir.
Çizelge 4.3. 2.Eklem servo motoru için alınan veriler
Ġterasyon
Ağırlık Değeri
Nöron ÇıkıĢı
Motor Açısı
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
0.0349
0.0327
0.0308
0.0291
0.0276
0.0262
0.0250
0.0239
0.0229
0.0219
0.0211
0.0203
0.0195
0.0188
0.0182
1.398
1.311
1.234
1.166
1.105
1.0514
1.002
0.957
0.916
0.878
0.844
0.812
0.783
0.755
0.730
76.253
71.508
67.308
63.599
60.272
57.326
54.654
52.199
49.963
47.890
46.035
44.290
42.708
41.181
39.817
38
ġekil 4.10.' da 2.eklem servo motoru için alınan verilerden elde edilen
iterasyon sayısı motor açısı grafiği verilmiĢtir.
ġekil 4.10. 2.Eklem servo motoru için iterasyon-motor açısı grafiği
Çizelge 4.4.' de 2500 referans değerine göre kıskaç servo motoru için alınan
değerler verilmiĢtir.
Çizelge 4.4. Kıskaç servo motoru için alınan veriler
Ġterasyon
Ağırlık Değeri
Nöron ÇıkıĢı
Motor Açısı
1
2
3
4
5
6
7
0.0318
0.0277
0.0245
0.0221
0.0201
0.0184
0.0171
7.958
6.929
6.148
5.534
5.0367
4.624
4.276
434.069
377.942
335.342
301.852
274.688
252.216
233.234
ġekil 4.11.' de kıskaç servo motoru için alınan verilerden elde edilen
iterasyon sayısı motor açısı grafiği verilmiĢtir.
39
ġekil 4.11. Kıskaç servo motoru için iterasyon-motor açısı grafiği
Bu tez çalıĢmasında aktif öğrenme algoritması ile alınan veriler bölüm 3' de
bahsedilen algoritmada unutma faktörü φ=0.05 ve öğrenme katsayısı
λ=0.0027 alınarak elde edilmiĢtir. Bu katsayılar öğrenici nöronların en iyi
öğrenme performansını gösterecek Ģekilde çeĢitli denemeler yapılarak
belirlenmiĢtir.
40
5. SONUÇ VE ÖNERĠLER
Bu tez çalıĢmasında, yapay sinir ağlarının öğrenme türlerinden aktif öğrenme
stratejisi servo motor kontrolü için kullanılmıĢtır. Katı modellemesi ve
benzetimi
MATLAB/Simulink
ortamında
Simscape
yazılımı
ile
gerçekleĢtirilmiĢ 4 eksenli bir robot kolunun hareket noktalarının konum
kontrolü servo motorlar ile sağlanmıĢtır. Aktif öğrenme algoritması servo
motorların
istenilen
konuma
gelebilmeleri
için
gerekli
anahtarlama
sinyallerinin üretilmesini sağlamıĢtır.
YSA yapısı olarak, robot kolunun 4 hareket noktasına bağlı servo motorların
referans açı değerleri giriĢ olacak Ģekilde 4 öğrenici nöron oluĢturulmuĢtur.
Her nöronun giriĢler ile bağlantısının sağlandığı ağırlık değerleri, girilen
referans açı değerlerine robot kolunun hareket noktaları ulaĢıncaya kadar
aktif öğrenme algoritması ile değiĢtirilmiĢtir.
Benzetimden elde edilen verilere göre taban için girilen referans açı değeri
1200 için bu noktanın anahtarlama sinyalini üreten nöron 10 iterasyon
sonucunda yaklaĢık 10' lik açı hatasıyla öğrenmesini tamamlamıĢtır.
1.eklem için girilen referans açı değeri 750 için bu noktanın anahtarlama
sinyalini üreten nöron 15 iterasyon sonucunda yaklaĢık 20' lik açı hatasıyla
öğrenmesini tamamlamıĢtır.
2.eklem için girilen referans açı değeri 400 için bu noktanın anahtarlama
sinyalini üreten nöron 15 iterasyon sonucunda yaklaĢık 10' lik açı hatasıyla
öğrenmesini tamamlamıĢtır.
Kıskaç için girilen referans açı değeri 2500 için bu noktanın anahtarlama
sinyalini üreten nöron 7 iterasyon sonucunda yaklaĢık 20' lik açı hatasıyla
öğrenmesini tamamlamıĢtır.
41
1.eklem,
2.eklem,
taban
ve
kıskaç
nöronlarının
öğrenme
verileri
incelendiğinde, hareket noktalarının ulaĢmaları istenilen referans açı
değerleri büyüdükçe nöronların aktif öğrenme süreçleri de uzamaktadır.
Benzetim çalıĢmalarından elde edilen sonuçlar, motor kontrolünde, klasik
YSA öğrenme türlerinin yanı sıra aktif öğrenme stratejisinin, yaparak veya
deneyerek
göstermiĢtir.
öğrenen
bir
sistem
oluĢturulmasında
kullanılabileceğini
42
KAYNAKLAR
1. Öztemel, E., "Yapay Sinir Ağları", Papatya Yayıncılık, Ġstanbul,
Ankara, Ġzmir, Adana, 21-52, (2006).
2. Fauset, L., "Fundamentals of Neural Networks (Architectures,
Algorithms and Applications)", Prentice Hall,1-7, (1994).
3. Duman, N., "Yapay Sinir Ağları ve Bir Uygulama ", Yüksek Lisans
Tezi, Cumhuriyet Üniversitesi Sosyal Bilimler Enstitüsü, Sivas, 111 (2006).
4. Akıncıoğlu, U., "Doğrusal Olmayan Süreç Denetim Tasarımına Yapay
Sinir Ağlarının Uygulanması ", Yüksek Lisans Tezi, Ankara
Üniversitesi Fen Bilimleri Enstitüsü, Ankara, 1-12, (2006).
5. Hanbay, D., "Yapay Sinir Ağı Tabanlı Akıllı Yöntemlerle KarmaĢık
Sistemlerin Modellenmesi", Doktara Tezi, Fırat Üniversitesi ElektrikElektronik Mühendisliği Anabilim Dalı, Elazığ, 1: 10-11, (2007).
6. T. Hagan M., B. Demuth H., Beale M., "Neural Network Desing", PWS
Publishing Company, Chine, 20-23, (2002).
7. Anderson, D., McNeil, G., "Artificial Neural Networks Technology",
Kaman Sciences Corporation, Utica, 5-13, (1992).
8. Güvenç, U., "Yapay Sinir Ağı Tabanlı Bir Anahtarlamalı Relüktans
Motorun Tork Dalgalanmalarının Azaltılması ", Yüksek Lisans Tezi,
Gazi Üniversitesi Fen Bilimleri Enstitüsü, Ankara, 23-33, (2005).
9. Kröse, B., Smagt P., "An Introduction to Neural Networks", The
University of Amsterdam, Amsterdam, 13-18, (1996)
10. Jinlin, X., Qiang, G., Weiping, J., " Reinforcement Learning for Engine
Idle Speed Control", International Conference on Measuring
Technology and Mechatronics Automation, China, 108-1011,
(2010).
11. Klerfors, D., "Artificial Neural Networks (What are they?, How do they
work?, In what areas are they used?)", An individual project with in
MISB-420-0, Saint Louis University School of Business &
Administration, Spain, 2-10, (1998).
12. Uğur, A., " Yapay Sinir Ağları ", Ders Notları, Ege Üniversitesi
Bilgisayar Mühendisliği Bölümü, Ġzmir, 35-41, (2005).
13. Robbel, P., "Active Learning in Motor Control", Master of Science,
Artificial Intelligence School of Informatics University of
Edinburg, Edinburg, 18-25, (2005).
43
14. Choy, M.C., Srinivasan, D., Cheu, R.L., "Neural Networks for
Continuous Online Learning and Control", IEEE Transactıons On
Neural Networks, 17(6):1511-1512, (2006).
15. Juan R.R., Julian D., "Artificial Neural Networks in Real-Life
Applications ", Idea Group Publishing, 8-13, (2006).
16. Li, D., Liu B., Maple, C., Jiang, D., Yue, Y., " Active Robot Learning for
Building up High-order Beliefs ", IEEE Fifth International Conference
on Fuzzy Systems and Knowledge Discovery, 201-202, (2008).
17. Bal, G., “Özel Elektrik Makinaları”, Seçkin Yayıncılık, Ankara, 179192 (2006).
18. Ardıç, G., Arslan, A., ve diğerleri, “Elektrik Elektronik Teknolojisi Servo
Motor ve Sürücüleri”, MEGEP, Ankara, (2007).
19. Köktençiftçi, Ġ., Yalçınkaya, E., "Servo Motorun Mikrodenetleyici ile
Konum ve Hız Denetimi", MYO-ÖS 2010- Ulusal Meslek
Yüksekokulları Öğrenci Sempozyumu, Düzce, 4-5, (2010).
20. The MathWorks, Inc., "Simscape User's Guide", U.S.A., 12-13,
(2007).
21. Ġnternet : MathWorks Company, "Simulink Desing Optimization, DC
Servo Motor Parameter Estimation"
http://www.mathworks.com/products/sl-designoptimization/demos.html?file=/products/demos/shipping/sldo/spe_serv
omotor.html
44
ÖZGEÇMĠġ
KiĢisel Bilgiler
Soyadı, adı
: BATTAL, Onur
Uyruğu
: T.C.
Doğum tarihi ve yeri
: 09.08.1984 Ankara
Medeni hali
: Evli
Telefon
: 0 (533) 964 30 43
ĠĢ Telefonu
: 0 (384) 441 34 40
e-mail
: [email protected]
Eğitim
Eğitim Birimi
Derece
Lisans
Mezuniyet tarihi
Gazi Üniversitesi/ Elektrik Eğitimi Bölümü
Lise
Sincan Teknik Lisesi
2008
2002
ĠĢ Deneyimi
Yıl
Yer
Görev
2008-2010
Gazi Üniversitesi
Asistan Öğrenci
2008-2010
Gazi Üniversitesi
DıĢardan görevlendirme ile
öğretim görevlisi
2010-
NevĢehir Üniversitesi
Yabancı Dil
Ġngilizce
Yayınlar
Hobiler
Futbol, Bilgisayar teknolojileri, Seyahat, Sinema
Öğretim Görevlisi
Download