Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Kısıtlar İçerecek Şekilde Revize Edilmiş Atama Algoritmasına Ait Bir Uygulama - Akademik Bilişim 2015 Bildiri Sunumu

453 views

Published on

Bu çalışmada, istenilen kısıtlar altında uygun grupların ve bununla birlikte ilgili eşleştirmelerin oluşturulmasına olanak sağlayan “Kısıtlar İçerecek Şekilde Revize Edilmiş Atama Algoritması” önerilmiş ve bilgisayar ortamında (Python programlama dilinde) uygulaması gerçeklenmiştir. Uygulama sonuçlarına göre, standart atama algoritmasının uygun çözüm vermediği durumlarda verimli bir şekilde (makul sürede sonuç veren) uygun çözüme ulaşılmaktadır. Algoritmanın çeşitli eşleştirme problemlerine verimli bir şekilde çözüm verecek hale getirilmesinin seçim aşamasında belirtilen kısıtların ağırlıklandırılması değiştirilerek elde edilebileceği gösterilmiştir. Bu uygulamanın kullanılabilirliğini göstermek amacıyla, Ondokuz Mayıs Üniversitesi Bilgisayar Mühendisliği Bölümü bitirme projeleri seçiminde/dağıtımında kullanılacak şekilde özelleştirilme yapılmış ve proje gruplarının oluşturulması konusunda çeşitli değerlendirmeler yapılmıştır.

Published in: Software
  • Be the first to comment

Kısıtlar İçerecek Şekilde Revize Edilmiş Atama Algoritmasına Ait Bir Uygulama - Akademik Bilişim 2015 Bildiri Sunumu

  1. 1. Kısıtlar İçerecek Şekilde Revize Edilmiş Atama Algoritmasına Ait Bir Uygulama Mustafa Can KURNAZI, Recai OKTAŞ2 1 Ondokuz Niayıs Üniversitesi, Akıllı Sistemler Niühendisliği Bölümü, Samsun 2 Ondokuz Mayıs Üniversitesi, Bilgisayar Niühcndisliği Bölümü, Samsun can.kurnaz@bil.omu.cdu.tr roktas@bil.omu.edu.tr
  2. 2. rw _ * . »sunu-ın -îlam ' (Özü ' CHrß ' Algoritma ' Algoritma Paraınelreleri ' Grup Uyumlulıığıı ' Grup-HedelLß1nnhüuğu ' Eşleşebilıne Önceliği ' Uyguhnuısonudar ' Basit Bir Eşleştirme Örneği ' Bitirme Projesi Dağıtımı ' Sonuç
  3. 3. . l Vzet Bu çalışmada, istenilen kısıtlar altında uygun grupların Ve bununla birlikte ilgili eşleştirmelerin oluşturulmasına olanak sağlayan “Kısıtlar İçerecek Şekilde Revize Edilmiş Atama Algoritması" önerilmiş ve bilgisayar ortamında (Python programlama dilinde) uygulaması gerçeklenmiştir.
  4. 4. . l Vzet Uygulama sonuçlarına göre, standart atama algoritmasının uygun çözüm vermediği durumlarda Verimli bir şekilde (makul sürede sonuç veren) uygun çözüme ulaşılmaktadır. Algoritmanın çeşitli eşleştirme problemlerine Verimli bir şekilde çözüm Verecek hale getirilmesinin seçim aşamasında belirtilen kısıtların ağırlıklandırılması değiştirilerek elde edilebileceği gösterilmiştir.
  5. 5. . l Vzet Bu uygulamanın kullanılabilirliğini göstermek amacıyla, Ondokuz Mayıs Üniversitesi Bilgisayar Mühendisliği Bölümü bitirme projeleri seçiminde Ve dağıtımında kullanılacak şekilde özelleştirilme yapılmış Ve proje gruplarının oluşturulması konusunda çeşitli değerlendirmeler yapılmıştır.
  6. 6. n . çırış Eşleştirme problemi, eşleştirme işleminin maliyetinin minimuma indirgenmesi ile birlikte Öğeler arası uyumluluğun yine minimum maliyetler ile kontrol edilmesi, karşılaştırılması ve karar Verilmesi problemidir.
  7. 7. n . çırış Eşleştirme, var olan elemanların özellikleri ile tanımlanmış hedefler arasında kurulan en doğru yoldur. Doğru yola erişilmesi ise doğru matrislerin tanımlanması Ve elemanların doğru yerleştirilmesi ile mümkündür. ı
  8. 8. /N çırış Bu çalışmada var olan elemanların, özelliklerine bağlı olarak en uygun şekilde gruplandırılması ve oluşturulan grupların, yine bu elemanların özelliklerine bağlı olarak hedefler ile arasındaki en uygun bağlantının sağlanması amaçlanmıştır.
  9. 9. /N çırış Bu çalışmanın ikinci bölümünde, amaçlananları gerçekleştirebilecek şekilde modifiye edilmiş bir eşleştirme algoritması tasarımı üzerinde durulmuş, uygulama detaylandırılmıştır. Çalışmanın üçüncü bölümünde, gerçek veriler üzerinden hazırlanan eşleştirme algoritması kullanılarak sonuçlar elde edilmiş ve sonuçların doğruluğu tartışılmıştır. Son olarak dördüncü bölümde uygulamanın sonuçlarına yer verilmiştir. «ı
  10. 10. Algoritma ° Algoritma temel olarak, eşleşmeyi bekleyen tüm elemanların eşleşecekleri hedef için kombinasyonlarının oluşturulması, bu kombinasyonların aynı hedef için puanlanması ve en yüksek puanı alan kombinasyonun bu hedef ile eşleştirilmesi şeklinde tasarlanmıştır. ° Her eşleştirmeden önce yapılan bir kontrol ile dağıtım işlemi tamamlandığında geriye hiç, bir hedef ile eşleştirilmemiş eleman/elemanlar kalması durumu engellenmektedir. 10 *
  11. 11. Älgorıftnıa Algoritmanın en önemli özelliklerinden birisi de eşleştirme sonuçlarının ayarlanabilir olmasında yardımcı olan kısıtlardır. Algoritmanın şu andaki versiyonunda kısıtlar, elemanların birbirleri ile olan uyumluluğu (grup uyııııılıığıı), elemanların hedefler ile olan uyumluluğu (qrııp-[ıeâef ııyuınlıılıığıı) ve elemanların eSı/egıebi/ıııe öııceİi/c/eridir. Bu kısıtlar, her birine verilen ağırlıklar ile çarpılıp ortalaması alınarak kombinasyonların puanları üretilmektedir. 11
  12. 12. Hııı Hudu.' Için Ele-vr ın Koırbınasyonlarını Oluştur Kombinasyonnrı PUııNlu En Yuksek Puanı AI m Kombınusyonu Bu: Uygun Hedvern [şleşlırılme Fsıvi' ' Hedelı Yum Lısıelerden c -. .- Korrb 'xasycntmnı O Lşlur Yapılmaw puapıAlaq EnYJşuı P..-'ıA'.-n Kom:) qdşyonu Komi: '~..ıs,:›r .ı Buî CAR." Eşli_ 5.3* Eh' 'nşvıhf y., HudcHL-'ı Dcnunmunıış Olmak Işın-Hu H.ı5' ı ..h D,.›.,..`,. ,l BU »v Fuar' 4 MÜ Eşleşen Elemanlar ve Bul Neßr' TUV" L swia-'uı-'ı Olanı. lşıh .lk Şekil l. Kısıllaı' içerecek Şekilde Rcvi/.ı- lîdilıniş Atzıına ;Xlgoritııızısı Akış Şeması
  13. 13. Algoritma Parametreleri ° Algoritma her elemanın; ° öncelik sırasına göre uyumlu olduğu üyeler, ° öncelik sırasına göre uyumsuz olduğu üyeler, ° öncelik sırasına göre eşleştirilmesine uygun olan hedeHen ° her hedefin kaç adet üye ile eşleşebileceği (her hedef için farklı rakamlar kullanılabilir) bilgilerini kullanmaktadır. 13
  14. 14. Gimp Uyumluluğu Veri kümesindeki eleman sayısı n olarak düşünülürse, algoritma işleyişinde nxn'lik bir matris barındırmaktadır. Bu matris ilişki matrisidir. İlişki matrisindeki i. satır sütun, i numaralı elemanın numaralı eleman ile olan uyumluluğunu göstermektedir. Uyumluluk durumu l, -l ve O durumları ile ifade edilmektedir. l durumu uyumlu, -l durumu uyumsuzluğu, O durumu ise nötr ilişkiyi ifade etmektedir. 14
  15. 15. Grup Uyumluluğu Grup elemanların birbiri ile olan uyumluluğu ilişki matrisi kullanılarak hesaplanmaktadır. Bir hedef m eleman ile eşleşeceği durumda, oluşturulan tüm kombinasyonlardaki m adet elemanın ilişki matrisindeki karşılığına bakılmaktadır. m elemanlık gruptaki tüm ikili ilişkilerin puanı toplanmaktadır. 15
  16. 16. Çirıup-İriedef Uytımluluğu. Bir gruptaki elemanların bir hedefle olan uyumluluğunu ifade etmektedir. Her elemanın hedeflerin önceliğini belirten bir listesi olduğu kabul edilmektedir. Bu listenin sıralaması eleman- hedef uyumluluğu en çok olan çiftten en az olan çifte doğru oluşturulmuştur. 10'
  17. 17. Ğ ıup-İîedef Uytımluluğu. Bir grubun grup-hedef uyumluluğu, her elemanın o hedef ile uyumluğu puanının ortalaması alınarak hesaplanmaktadır. Bu uyumluluk puanı ise; hedefin elemanın öncelik listesindeki yeri ve eşleşebilme önceliği puanının yardımıyla hesaplanır.
  18. 18. :Lşleşebılıne Önceliği Her elemanın diğer kısıtlara bağlı olmayan kendine ait bir puanı bulunduğu kabul edilmektedir. Bu puan 100 üzerinden verilmiştir. Eşleşebilme önceliği puanına da karşılık gelmektedir. 18
  19. 19. / e, *rneğ:ı- &x Basit .::ir Eşleştıırnıe Şekil 2'de gösterilen gibi 6 eleman ile 4 hedefin eşleştirilmesi ele alınmıştır. Hedeflerden Pl, 2; F2, 5; 135, 3 ve F4, 4 eleman ile eşleştirilmeye uygundur. Şekil 2. Öğrenci - Proje eşleştirıııı* işlenıiııclc* bir :idim ' A113
  20. 20. Bitirme Projesi Dağıtımı ° Bir proje dağıtma işlemi için uygulandığında algoritma, atanmamış tüm öğrencilerden; bir projeyi ilk sırada tercih etmiş Öğrencilerden sıralamaya başlayarak; ° bu proje için grup kombinasyonlarının oluşturulması, ° bu kombinasyonların tüm kısıtlar için ayrı ayrı puanlanması, ° her kısıt için elde edilen puanın o kısıtın ağırlığı ile çarpılması, ° elde edilen puanların toplanması ve en yüksek puanı alan kombinasyonun projeye atanması şeklinde ilerlemektedir. 20
  21. 21. `-` w--` ı l 'Av .J 6('* - "î V - --v «vw - .İ1'L`İ-İE. me .- 1 ojesı -Bagıuıı ı Puanların hesaplanmasında, öğrencilerin not ortalamaları öğrencilerin grup üyesi tercihleri ğrup uyumluluğu puanı, öğrencilerin çalışmak istedikleri proje tercihleri ise g rup-hedef uyumluluğu puanı hesabı için kullanılmıştır. Şekil 3. Öğrenci - Proje eşleştirme işleminde bir adım
  22. 22. &J Bıtûıýrıne Projesi İ: agıtımı Bu çalışma kapsamında algoritmanın başarısı test edilmek istenmiştir. Bu amaçla, Ondokuz Mayıs Üniversitesi Bilgisayar Mühendisliği Bölümü 4. sınıf öğrencilerinin bitirme projeleri tercih bilgileri alınmıştır. Alınan bilgiler, önceden oluşturulmuş gruplar ile proje eşleştirmesi yapılması amacına uygun düzenlenmiş olduğundan, aynı grupta olan tüm öğrencilerin birbirlerinin grup üyesi tercihlerine eklenerek algoritma için kullanılabilecek şekilde özelleştirilmiştir.
  23. 23. 12 Cİ ı - rencl i 2 3 10 m m oBw-ın s m Suv: Pano sm: 05- - MEB& " es-mzses E EEvrzı-:s SA-cv:: Fanı:: e nam SA-orc: î rw. î os-wzm now» Ob-meznn 9 11 « saw-ro s: v:: ws :swe- ıı-~ SA-h:: PG-dncp R0 :ı _FO-;ys KE K5:: ll-.x-rıné' .ı es-vzm nu OB-uzman EK-Ie o RO-»wb 11 7' ı› ı» E K III â 1 Ü "İ 9 O o ı› ' 'f o n 9 u i' N unıl HIII NS-sanıı PO-c ı !FO-yı OE-uzmın uı 1' ı. n CB-urrı-ı NS-ıınıl EE-mZse: KE- .aka OB-utmnn EK-ıı-o H" sanal KE-p eLa RQ-;p KE 'ı SA-dfûâ Si. L P. Ln-.Zses iKEwts E Kz-avco Romeo RO-pys K! ;:5 İ EE-"bu II-ı 'Mu-maar 1 ~1 'İ . ?'71 1' . 33 Ju 2 Ü SA-drop Ofhuzman ıLIearr LE-mzses oa-wzm :mm now:: !nu-m SA-:ro: sı Si: _ Ofruzrrnn EK-lrgu ?ıs-p s RO-.u-b !Lrm 14-' S1 RO-wv-D Obmzmnn Nüsana' h -p ı RO~p s KE-unss Sok-lira! &mhz-s KE-ucs I-ı E OB-utnnan R0- ı lKE-pnıı Eğ›_rj'2ý1e_s_lKE_-±: İ-ı 5339 . us-e haç... HE<uÇS EE--vzm k Lwrrıner w SA-ke: KE-avcp Romeo RO-p KE Kğî; gta, ıLı-.vrıner SÂ-IQJ KE-ahca RQ-.u e; Rqgpxs_ LE S1. Reg-wa_ E CBm-ıhn _ CB-uırrı-ı NÜunıI M Oßuzwen OZEL EE-mses Ksm OB-mzun ÜWBfýJZ/fâllý OZEL :nem rw m â. .m rı _w 2 Tablo l. Bilgisayar Nlühendisliği Bitirme Projesi Dağıtımı işleminde 14. adım
  24. 24. **x l a-x -_ U l W ş .İ`J{.'L`İ-İ"L”111C İFOJCSI _oagı'tîı.ııı.ı- Şekil 4'te gösterildiği gibi seçili olan projesi kalan uyumluluk listesinde ilk sırada olan öğrenciler seçildi; S2, S3, S4, S5, S6, S7, S8, S9, S11, S12. S15, S16, S17, S18 VE S19. Bu öğrencilerin 3'erli koınbinasyonları oluşturuldu ve kombinasyonlar puanlandı. S2' ve öğıreıîcllennden Şekil4.0.1l:l BilgisayarÄlülıeııdisliği oluşan kombinasyon Bitirme Projesi Dzığıtınıı l4.ı.«çlıııı puan alarak en büyük uyumu Koıııbiıızısyoııvc* Puanlaınzı lşleıııi yakaladı, OB-mezun projesi bu öğrenciler ile eşleştirildi. mns
  25. 25. &J Bıtûıýrıne Projesi İ: agıtımı Bu bilgiler kullanılarak ve kısıtlara çeşitli ağırlıklar verilerek, atama deneyleri yapılmıştır. Ondokuz Mayıs Üniversitesi Bilgisayar Mühendisliği Bölümü'nde elle yapılan bitirme projesi dağıtım sonuçlarının belirlenmesinde en önemli kısıtın öğrenci grup tercihleri olduğu kanısına varılmıştır. Bu bilgiyi kullanarak algoritmanın grup uyumluluğu kısıtına yaklaşık olarak %60 ağırlık verildiğinde alınan dağıtım sonuçları, elle hazırlanan Ondokuz Mayıs Üniversitesi Bilgisayar Mühendisliği Bölümü bitirme projesi dağıtım sonuçları ile %100 örtüşmektedir. 25
  26. 26. Sonuç ° Bu çalışmada, bilinen atama algoritması istenilen kısıtlar altında uygun grupların ve bununla birlikte ilgili eşleştirmelerin oluşturulmasına olanak sağlayacak şekilde belli kısıtlara dayandırılarak revize edilmiş ve bu algoritmanın uygulaması gerçeklenmiştir. ° Bu uygulama kullanılarak, Ondokuz Mayıs Universitesi Bilgisayar Mühendisliği Bölümü bitirme projeleri seçimi ve dağıtımı gerçekleştirilmiştir. 26 `
  27. 27. KW n; Orluç Sonuçlar, insan emeği ile uzun uğraşlar sonucunda belirlenen dağıtımlar ile %100 örtüşmektedir. Burada dikkate alınan algoritma; lisans bitirme projelerinin en uygun şekilde, en az insan gücü kullanılarak ve en verimli şekilde dağıtılmasında kullanılabilir.
  28. 28. i .ı l * ğ' l :VAİ -ı - w//éf/ıllllkß - lı'=ı,;ş.:_::,'r_:ı 1 Aga-_ı r,- B x. i4113-4l5ıîêirrrl7ğânîb* f-iiıi-iiîéêêîîilği.ğ.i i!ll.'iî'ı`i!°îi"'"ii_'lf'ii'f, .PÄİÜÜEEİĞFİ_İ!:`Eİİİİ: _~îîliîıuıîsııîûuéiyj&İŞE;â

×