Geri Dön

A reinforcement learning approach for control flow error detection in automated software testing

Yazılım otomatık testlerıne pekıştırmelı öğrenme yaklaşımı uygulayarak akış hatalarını yakalama

  1. Tez No: 720160
  2. Yazar: ENGİN DURMAZ
  3. Danışmanlar: DOÇ. DR. MUSTAFA BORAHAN TÜMER
  4. Tez Türü: Yüksek Lisans
  5. Konular: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Computer Engineering and Computer Science and Control
  6. Anahtar Kelimeler: Kilitlenme, Yazılım testi, Öğrenme yöntemleri, Deadlock, Software test, Learning methods
  7. Yıl: 2022
  8. Dil: İngilizce
  9. Üniversite: Marmara Üniversitesi
  10. Enstitü: Fen Bilimleri Enstitüsü
  11. Ana Bilim Dalı: Bilgisayar Mühendisliği Ana Bilim Dalı
  12. Bilim Dalı: Bilgisayar Mühendisliği Bilim Dalı
  13. Sayfa Sayısı: Belirtilmemiş.

Özet

Test girdileri üretmek için otomatik yazılım test yöntemleri kaçınılmaz hale geldi. Test araçları bir hata bulmak için olaylar üretir ve yazılım üzerinde bu olayların gerçekleşmesini sağlarlar. Ne yazık ki, test edilen uygulama çalışmaz hale geldiğinde, elde edilen olay dizisi bu hata ile ilgisi olmayan bir çok öğe de barındırır. Hata ile ilgisiz olan bu olaylar hata ayıklamayı zorlaştırmaktadır. Biz de bu çalışmada özellikle çökme senaryolarını bulmak ve onarılmasına yardım etmek için, ajanıın hedefinin çökmelere giden en kısa giriş dizilerini bulmak olduğu takviye öğrenme (RL) yaklaşımı sunuyoruz. Bu sayede yazılım geliştiricileri kilitlenmeye giden en kısa yol olan ajanın eylemlerini analiz ederek hataya neden olan akışı kolayca tespit edip müdahale edeceklerdir. Önce hataya sebep olan bir girdi dizisine Recursive Delta Debugging (RDD) uygulayarak bu dizideki hatayla ilgili olmayan girdileri ayıklayıp, daha sonra RL ile daha kısa yolları keşfetmek için öğrenmeyi başlatıyoruz. Kilitlenme hatalarının yakalanmasına ajanın hedefi hataya giden en kısa yolu bulmak şeklinde belirleyerek ve ödüller vererek bir RL problemi olarak yaklaşıyoruz. Bu probleme hem modelden bağımsız politika üzerinde hem de model tabanlı planlama yapabilen RL yöntemlerini uyguluyoruz. Ayrıca, küçük bir varyansta öğrenmeyi durdurarak ve ilgisiz eylemleri yinelemeli olarak kaldıran bir algoritma ile en kısa çarpışma sırasına ulaşarak yakınsamayla boğuşmaktan kaçınarak zaman karmaşıklığını azaltan Algılanmış Hedef Katalizörünü (DGC, Detected Goal Catalyst) içeren yeni bir RL yaklaşımı sunuyoruz. Deneyler, DGC'nin en kısa yolu bulmada hem SARSA hem de Öncelikli Süpürme algoritmalarının öğrenme performansını önemli ölçüde geliştirdiğini göstermektedir.

Özet (Çeviri)

Automatic software testing methods have become inevitable in producing test inputs. Test tools generate events and execute these events on SUT to find a bug. Unfortunately, when a crash occurs, an event sequence which includes many irrelevant events to the failure is obtained. These irrelevant events make debugging process more difficult. To locate and repair bugs with an emphasis on the crash scenarios, we present in this work a reinforcement learning (RL) approach for finding the shortest input sequence(s) leading to system crash or block where these represent the goal state of the RL problem. We shoot for simplifying the bug scenario as much as possible so that developers would analyze agent's actions causing crashes or freeze. In this study, we developed Crash Detection Module (CDM) which consists of three main flows. We first simplify the crash scenario given using Recursive Delta Debugging (RDD), then we apply RL algorithms to explore for the shorter crashing sequence. We approach the exploration of crash scenarios as a RL problem where the agent first attains the goal state of crash/blocking by executing inputs, then shortens the input sequence with the help of the rewarding mechanism. We apply both model-free on-policy and model-based planning-capable RL agents to our problem. Furthermore, we present a novel RL approach, involving Detected Goal Catalyst (DGC), which decreases the time complexity by avoiding grappling with convergence via stopping learning at a small variance and attaining the shortest crash sequence with an algorithm that recursively removes unrelated actions. Experiments show that DGC significantly improves the learning performance of both SARSA and Prioritized Sweeping algorithms on finding the shortest path.

Benzer Tezler

  1. Age of information based flow control in communication networks

    Haberleşme ağlarında bilgi yaşına dayalı akış kontrolü

    SAJJAD BAGHAEE

    Doktora

    İngilizce

    İngilizce

    2023

    Elektrik ve Elektronik MühendisliğiOrta Doğu Teknik Üniversitesi

    Elektrik ve Elektronik Mühendisliği Ana Bilim Dalı

    PROF. DR. ELİF YUSAL

  2. Derin pekiştirmeli öğrenme yöntemi ile görüntü hash kodlarını oluşturma

    Generating image hash codes with deep reinforcement learning method

    ELİF AKKAYA

    Yüksek Lisans

    Türkçe

    Türkçe

    2024

    Elektrik ve Elektronik MühendisliğiSakarya Üniversitesi

    Elektrik ve Elektronik Mühendisliği Ana Bilim Dalı

    DR. ÖĞR. ÜYESİ BURHAN BARAKLI

  3. Şarj istasyonlarında kullanılan çift aktif köprülü dönüştürücüler için pekiştirmeli öğrenmeye dayalı verimlilik optimizasyonu

    Reinforcement learning-based efficiency optimization for dual active bridge converters in charging stations

    ELİF SELİN KARAAĞAÇLI

    Doktora

    Türkçe

    Türkçe

    2025

    Elektrik ve Elektronik MühendisliğiKaradeniz Teknik Üniversitesi

    Elektrik-Elektronik Mühendisliği Ana Bilim Dalı

    PROF. DR. HALİL İBRAHİM OKUMUŞ

  4. Data-driven prediction and emergency control of transient stability in power systems towards a risk-based optimal power flow operation

    Güç sistemlerinde risk tabanlı optimal güç akışı işletimineyönelik geçici hal kararlılığın veri güdümlü tahmini veacil durum kontrolü

    SEVDA JAFARZADEH

    Doktora

    İngilizce

    İngilizce

    2022

    Elektrik ve Elektronik Mühendisliğiİstanbul Teknik Üniversitesi

    Elektrik Mühendisliği Ana Bilim Dalı

    PROF. VEYSEL MURAT İSTEMİHAN GENÇ

  5. Fuel cell air supply system control using deep q-network

    Derin q-aği kullanilarak yakit hücresi hava besleme sistemi kontrolü

    EMİR OĞUZ

    Yüksek Lisans

    İngilizce

    İngilizce

    2026

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrolİstanbul Teknik Üniversitesi

    Kontrol ve Otomasyon Mühendisliği Ana Bilim Dalı

    DOÇ. DR. AHMET ONAT