Главная страница

Автоматик коде. СанктПетербургский государственный


Скачать 0.58 Mb.
НазваниеСанктПетербургский государственный
АнкорАвтоматик коде
Дата07.12.2022
Размер0.58 Mb.
Формат файлаdocx
Имя файлаAvtomaticheskoe_ispravlenie_oshibok_v_programmnom_kode.docx
ТипОбзор
#833783
страница6 из 8
1   2   3   4   5   6   7   8

Апробация

  1. Схема эксперимента


В исходной статье[10] для экспериментов использовались Amazon EC2 Intel Xeon 2.6GHz машины, запущенные на 64-битном Ubuntu сер- вере (для fbc использовалась 32-битная виртуальная машина с Intel Core 2.7Ghz). В данной работе все эксперименты были проделаны с использованием настроенного docker контейнера на 64-битной Ubuntu машине с процессором Intel Core i5-3317U 1.70GHz × 4 с 8GB оператив- ной памятью и 32GB SSD-кешем.

В исходной статье Prophet запускался на первых 200 локациях с временными ограничениями в 12 часов. В связи с тем, что локализа- тор недостаточно хорошо находит место ошибки для php-308525-308529 (правильная локация имеет 513 ранг), для проверки исправления ново- го класса ошибки в ходе данной работы вручную добавляется необхо- димая локация в конец первых 200 локаций перед этапом, отвечающим за генерацию исправлений.

    1. Анализ результатов


В итоге через 134 минуты пользовательского времени (665 минут реального и 37 минут системного времени) было сгенерировано исправ- ление для php-308525-308529 см. рис. 5.

Пространство поиска содержало 42590 всевозможных кандидатов. Среди них правильное исправление имело 2637 ранг исправления4 и было первым исправлением, который Prophet принял. Нетрудно заме- тить, что данное исправление идентично исправлению разработчика.

Чтобы оценить влияние измененной модели корректного кода на су- ществующие исправляемые ошибки, было проведено сравнение работы исходной системы и системы с новой моделью, результаты показаны в таблице 3. Каждая запись второго столбца (“Пространство поиска”)

4Ранг исправления в отличие от ранга схемы трансформации считается по всему пространству поиска, то есть среди конкретных схем и инстанцированных схем с абстрактным условием.


Рис. 5: Сгенерированное правильное исправление для php-308525- 308529

имеет вид X(Y/Z), где X – размер исходного пространства поиска до добавления новых признаков в модель, Y число правильных, Z чис- ло правдоподобный исправлений в пространстве поиска. Столбцы “Ранг до” и “Ранг после” соответствует рангу корректного исправления до и после добавления новых признаков в модель соответственно. Столб- цы “Function Mutation” и “Ранг схемы после” соответствует количеству исправлений вида FunctionMutation и рангу правильной схемы транс- формации после добавления новых признаков в модель.

В результате использования новой модели корректного кода пра- вильные исправления были найдены первыми среди правдоподобных, ранги правильных исправлений в основном стали лучше и пространство поиска увеличилось не более чем на 10 конкретных схем трансформа- ций.

    1. 1   2   3   4   5   6   7   8


написать администратору сайта