Искусственный интеллект поможет программистам оптимизировать код

11.10.2018 17:31  201   Вадим Пономарёв  Статья

Расход батареи мобильных устройств во многом зависит от энергоэффективности установленных программ.

ИИ поможет оптимизировать код

Чтобы снизить энергоемкость, необходимо оптимизировать код. Но как это сделать, ведь одну и ту же задачу в программировании можно решить несколькими способами?  Ответ на этот вопрос дали американские специалисты из Университета Пердью, которые разработали инструмент под названием DiffProf, построенный на основе искусственного интеллекта.

Какую функцию может выполнять искусственный интеллект в программировании?

Благодаря использованию ИИ-технологий инструмент выполняет следующие функции:

  • сравнивает графы кода, выделяя проблемные фрагменты;
  • предлагает варианты, при помощи которых можно устранить найденные ошибки;
  • оценивает результат после внесенных правок.

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

Оптимизация кода

Результаты тестирования

Профессор Чарли Ху, который является главой этого направления, отметил, что высокая эффективность была подтверждена экспериментальным путем на устройстве Android. Испытания показали, что мессенджер WhatsApp гораздо более энергоэффективный, чем Google Hangouts. Низкую энергоэффективность продемонстрировало музыкальное приложение Pandora и отечественный антивирус Касперского.

Стоит отметить, что DiffProf – отнюдь не единственное решение, позволяющее находить и исправлять проблемные места в коде. Аналогичные задачи решает и система SapFix от Facebook. Этот алгоритм тоже построен на основе ИИ, он занимается сквозным тестированием и устранением программных ошибок в социальной сети. Но на этом представители «Фейсбук» решили не останавливаться, они намерены перевести всю экосистему по обслуживанию ИИ-приложений на собственное ПО.

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