Американцы создали самообучающуюся программу для исправления багов

Американцы создали самообучающуюся программу для исправления багов

Специалисты из Массачусетского технологического университета разработали программу Prophet, способную в полностью автоматическом режиме искать ошибки в исходном коде других программ и исправлять их. Согласно отчету авторов программы, для анализа и исправления программа использует стохастическую модель и способна к платформонезависимому применению исправлений кода. Prophet является значительно доработанной версией программы CodePhage.

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

Согласно утверждению разработчиков, в отличие от многих других программ для исправления кода, Prophet способен работать с исходным кодом программного обеспечения, состоящим не из нескольких сотен, а тысяч и десятков тысяч строк. При этом новый алгоритм способен к самообучению — при подборе патча к исправляемому программному обеспечению Prophet способен выбирать наиболее правильный код из множества вариантов, причем при выборе используется опыт предыдущих исправлений.

В основу алгоритма разработчики положили гипотезу о том, что у всех программ, независимо от языка, на котором они написаны, и платформы, для которой они предназначены, корректные участки кода имеют определенные универсальные признаки корректности, присутствующие на семантическом уровне. Prophet может составлять карту таких признаков корректности для изученных патчей, а затем переносить ее на анализируемый код программного обеспечения.

При работе с исходным кодом программы Prophet использует статический и динамический анализ кода, что позволяет не только выявить некорректные и потенциально нерабочие участки, но и локализовать ошибки с высокой точностью. Для выбора и изменения обнаруженных патчей и последующего их применения к программному коду также используется динамический анализ. Кроме того, как и Code Phage алгоритм Prophet способен «отмечать» потенциально опасные участки — при их исполнении с ошибкой исправленная программа просто закроется.

Тестирование Prophet раззработчики проводили на 69 известных ошибках в восьми программах с открытым исходным кодом. Результаты работы алгоритма сравнивали с другими такими программами — SPR, Kali, GenProg и AE. На анализ исходного кода и применение патчей всем испытуемым алгоритмам отводились 12 часов. За этот период Prophet сумел найти 19 патчей для 69 дефектов, 18 из которых оказались корректными. Причем 15 из 19 исправлений были подобраны алгоритмом с первой попытки.

В свою очередь SPR за 12 часов смогла найти только 16 правильных патчей из 19, причем только 11 корректных исправлений были подобраны с первой попытки. Kali, GenProg и AE сумели подобрать два, один и два корректных исправления соответственно.

Василий Сычёв

N+1

Похожие новости:
Google Earth покажет Землю с воздушного змея
Компания Google добавила в программу Google Earth (в русском переводе - "Google Планета Земля") снимки земной поверхности, сделанные с аэростатов и с воздушных змеев.  В данный момент доступны снимки более чем сорока мест со "впечатляющим" разрешением, отмечает Google ..
2012-04-23 1965 0 Интернет, IT
0
Ученые доказали, что компьютеры могут писать статьи
Современные компьютерные программы могут управлять автомобилями и самолетами, могут писать музыку, играть в шахматы и еще много чего умеют, сообщает «TG Daily». Но могут ли они имитировать творческие возможности человека и писать статьи? Исследователи из Чикагской компании Narrative Science ..
2012-05-15 1833 0 Интернет, IT
1
Новосибирский семиклассник создал компьютерную программу в помощь учителям
Три часа в день, сотни работ. Учитель истории преподает сразу в 6,7 и 9 классах, проверка тетрадей отнимает уйму времени. Новосибирский семиклассник придумал, как избавить учителей от этой работы. Надежда Щербаненко, учитель истории второй новосибирской гимназии, говорит: "Заканчивается тема, ..
2012-02-11 2096 0 Интернет, IT
0
Facebook выпустила программу-клиент для Windows
Для компьютеров с Microsoft Windows 7 и Vista ("старушка" XP пока не поддерживается) вышел онлайн-мессенджер социальной сети Facebook. Помимо своей главной функции, обмена сообщениями, клиент позволяет оперативно получать уведомления и читать обновления в тикере (новостной ленте, где действия друзей ..
2012-03-6 2747 0 Интернет, IT
0
Новый криптоалгоритм делает ПО устойчивым к взлому
Профессор компьютерных наук Амит Сахай из Калифорнийского университета в Лос-Анджелесе и его коллеги придумали передовой метод шифрования программного кода. По словам ученых, их система делает любую программу неуязвимой для обратного инжиниринга (когда хакеры воссоздают алгоритмы, пытаясь понять ..
2014-02-5 1496 0 Интернет, IT
0
Apple обвинили в краже Siri
Компания Zhizhen Network Technology подала на Apple в суд, заявив о нарушении авторских прав на голосовую технологию Siri. Китайцы посчитали виртуального ассистента для iPhone/iPad копией их собственной технологии Xiao i Robot. ZNT утверждает, что она подала патент на свою систему в 2004 ..
2013-07-3 1692 0 Интернет, IT
0
Osito: iOS-аналог Google Now с наполеоновскими амбициями
Google Now – это сервис персонализированного поиска, основанный на местоположении пользователя. К сожалению, пока что он доступен лишь на Android-устройствах, но не на iOS. Однако теперь и у пользователей "яблочных" гаджетов появилась достойная замена. У Google Now на iOS уже есть немало клонов, тем не менее, до недавнего времени ни один ..
2013-04-23 1215 0 Интернет, IT
0
Nokia выпустила "почти Instagram" для Windows Phone
Компания Nokia выпустила программу для обработки фотографий на операционной системе Windows Phone. Но цель этого шага - не конкурировать с Instagram на ниве креативных фотофильтров, а заставить принадлежащую Facebook "визуальную соцсеть" все-таки выпустить программу-клиент для платформы Windows Phone. Приложение можно скачать ..
2013-03-8 2098 0 Интернет, IT
0
Skype станет неотъемлемой частью Windows 8.1
Сервис чата, IP-телефонии и видеозвонков Skype станет неотъемлемой частью Windows начиная с версии 8.1, которая выйдет в середине октября. Наблюдатели не исключают, что активное продвижение собственного сервиса в ущерб конкурентам может вновь возбудить интерес антимонопольных органов ..
2013-08-16 1829 0 Интернет, IT
0
Фейсбук заплатил хакерам полтора миллиона долларов
В минувшем году сеть Фейсбук наняла более трёхсот хакеров из стран всего мира. Перед ними была поставлена задача, выявить уязвимые места в соцсети. Расходы Facebook на работу хакеров составили полтора миллионов долларов. Лидерами по числу ..
2014-04-07 1516 0 Интернет, IT
0
В Firefox появится функция перезагрузки
В бета-версии Firefox 13 появилась кнопка для перезагрузки браузера. Новая функция деинсталлирует программу, сохраняя закладки, данные автозаполнения веб-форм, пароли и cookie-файлы. Вся информацию переносится в "чистую" версию Firefox, которая устанавливается заново. Нововведение призвано помочь тем пользователям, у которых возникла ..
2012-05-19 2005 0 Интернет, IT
0
Facebook убивает SMS-бизнес сотовых операторов
Операторы мобильной связи теряют доходы от SMS-сообщений по вине Facebook. Об этом говорится в исследовании консалтинговой компании Strand Consult. Владельцы смартфонов все больше времени проводят в Facebook и чаще предпочитают пользоваться встроенным функционалом социальной сети, чем отправять платные ..
2012-05-12 2093 0 Интернет, IT
0
Microsoft научил искусственный интеллект понимать шутки
Команда инженеров корпорации Microsoft создала программу с использованием технологий искусственного интеллекта, которая умеет отличать смешные шутки от несмешных. Она будет помогать редакции журнала The New Yorker. Об этом сообщает Bloomberg. С 2005 года The New Yorker еженедельно публикует черно-белые ..
2015-08-12 2832 0 Интернет, IT
0
Преобразившийся браузер Firefox доступен для скачивания
Компания Mozilla сообщила о выходе первой версии браузера Firefox в рамках проекта Australis. Обозреватель, распространяющийся в виде "ночной" (Nightly) сборки, отличается радикально измененным интерфейсом. Разработчики заявляют, что у браузера "самый тщательно спроектированный интерфейс на планете", и он "поразительно ..
2013-11-19 1522 0 Интернет, IT
0
Узнай, как разогнать свой компьютер.
      Для того, чтоб разогнать свой компьютер, существует множество программ.  Сегодня я расскажу вам о самом простом и быстром способе увеличения производительности вашего персонального компьютера на 10-20%.      Одной из полезнейших программ является CPU-Z. Эта программа не разгоняет ..
2020-04-09 47893 Интернет, IT
0