Bulut sistemlerde görev çizelgeleme için yenilikçi tek ve çok amaçlı metasezgisel yöntemlerin geliştirilmesi
Development of innovative single and multi-objective metaheuristic methods for task scheduling in cloud systems
Yazar: CEBRAİL BARUT
Danışman: DOÇ. DR. GÜNGÖR YILDIRIM
Fırat Üniversitesi / Fen Bilimleri Enstitüsü / Bilgisayar Mühendisliği Ana Bilim Dalı
Derece: Doktora, 2024
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control

Özet:
Klasik bilgi işlem birimleri ve veri merkezlerinden farklı olarak bulut sistemler oldukça dinamik bir yapıya sahiptir. Bu dinamizmi sağlayan ana faktörler; çok sayıda ve farklı taleplere sahip müşteri tipi, anlık değişen talep oranına göre aktif sanal makine sayısının değişebilmesi ve güvenlik gereksinimleridir.  Bulut sistemlerce sunulan yazılım ve donanım servisleri bu dinamikliğe sanallaştırma teknolojilerinin sağlamış olduğu avantajlar ile cevap verirler. Ancak sanallaştırma teknolojileri, oluşacak her problemi çözmek için yeterli değildir. Kullanıcılardan gelen çok sayıdaki görev talebinin verimsiz bir şekilde sanal kaynaklara yönlendirilmesi, sağlayıcıya yüksek enerji maliyeti ve kaynak israfı, son kullanıcıya ise pahalı hizmet alımı ve memnuniyetsizlik olarak geri döner. Bulut sistemlerde başarılı görev dağılımını sağlayan iyi düşünülmüş bir görev çizelgeleme stratejisi, bu bakımdan, hayati bir öneme sahiptir. Oldukça karmaşık olan bulut sistemlerde görev çizelgeleme problemi için, hem pratikte hem de teoride son yıllarda ciddi çalışmalar yapılmıştır. 
Bu tez çalışması bulut sistemlerin dinamik doğasını dikkate alan farklı çizelgeleme stratejileri için çalışılmıştır. Bu amaçla, bulut sistemlerde görev çizelgeleme için iki yenilikçi optimizayon yöntemi önerilmiştir. Birinci yöntem, tek amaçlı bir optimizasyon yaklaşımıdır ve bulut sistemlerde görevlerin icra süresini minimize etmeyi amaçlar. Literatürde var olan yöntemlerden farklı olarak kural çıkarım tabanlı bir metodoloji izleyen bu yöntem, daha önce karşılaşılan senaryolardaki görev çizelgeleme çözümleri ve mevcut senaryo arasındaki benzerliği tespit ederek optimum çizelgelemeyi yapmaktadır. Önerilen bu yöntemin başarısı, hem klasik çizelgeleme yöntemleri hem de diğer metasezgisel yöntemlerin bulmuş olduğu çözümler ile karşılaştırmalı olarak sunulmuştur. Deneylerde elde edilen sonuçlar, önerilen yöntemin karar verme süreci yönünden diğer yöntemlere göre yaklaşık 18 kat daha hızlı olduğunu göstermiştir.  Tezde önerilen ikinci yöntem ise görevlerin icra sürei ve enerji tüketimi amaçlarının eş zamanlı optimizasyonunu hedefler. Bu yöntemde NSGA-2 ve SPEA2 gibi iki farklı metasezgisel algoritmanın paralel ve hibrit çalışmasına dayalı bir yaklaşım kullanılmıştır. Önerilen yöntem iki algoritmayı eş zamanlı çalıştırarak birbirlerine olan üstünlüklerine göre seçim yapmaktadır. Önerilen yöntem NSGA-2 ve SPEA2 algoritmalarına göre daha başarılı sonuçlar almıştır.
Tez çalışması ile bulut sistemlerde görev çizelgeleme üzerine yenilikçi ve etkili metasezgisel yaklaşımlar sunulmuştur. Arşiv temelli bu bakış açısı, sadece bulut sistemler için değil aynı zamanda benzer dinamik sistemlere de adapte edilebilecek yapıdadır. Tezde önerilen yöntemlerin araştırmacılar için yeni çözüm fikirlerinin geliştirilmesine katkı vereceği ve farklı alanlarda bu yaklaşımların etkili olacağı düşünülmektedir.

Abstract:
Unlike traditional computing units and data centers, cloud systems have a highly dynamic structure. The main factors that provide this dynamism are; customer types with many and different demands, the number of active virtual machines can change according to the instantly changing demand rate, and security requirements. Software and hardware services offered by cloud systems respond to this dynamism with the advantages provided by virtualization technologies. However, virtualization technologies are not sufficient to solve every problem that may arise. Inefficiently directing a large number of task requests from users to virtual resources results in high energy costs and resource waste for the provider, and expensive service purchases and dissatisfaction for the end user. A well thought out task scheduling strategy that ensures successful task distribution in cloud systems is of vital importance in this respect. Serious studies have been carried out in recent years for the task scheduling problem in cloud systems, which is quite complex, both in practice and in theory.
This thesis study is studied for different scheduling strategies considering the dynamic nature of cloud systems. For this purpose, two innovative optimization methods are proposed for task scheduling in cloud systems. The first method is a single-objective optimization approach and aims to minimize the execution time of tasks in cloud systems. Unlike the existing methods in the literature, this method, which follows a rule based methodology, performs optimum scheduling by detecting the similarity between the task scheduling solutions in previously encountered scenarios and the current scenario. The success of this proposed method is presented comparatively with the solutions found by both classical scheduling methods and other metaheuristic methods. The results obtained in the experiments show that the proposed method is approximately 18 times faster than other methods in terms of decision-making process. The second method proposed in the thesis aims at simultaneous optimization of task execution time and energy consumption objectives. In this method, an approach based on parallel and hybrid operation of two different metaheuristic algorithms such as NSGA-2 and SPEA2 is used. The proposed method runs the two algorithms simultaneously and makes a selection according to their superiority over each other. The proposed method has obtained more successful results than the NSGA-2 and SPEA2 algorithms.
Innovative and effective metaheuristic approaches on task scheduling in cloud systems have been presented in this thesis. This archive-based perspective is adaptable not only to cloud systems but also to similar dynamic systems. It is thought that the methods proposed in the thesis will contribute to the development of new solution ideas for researchers and that these approaches will be effective in different areas.