Чем занимается теоретическая информатика: первое знакомство с наукой
Словосочетание “теоретическая информатика” звучит противоречиво — мы привыкли, что информатика, программирование — это максимально про практику. Но информатика - это логичное продолжение математики, которая может быть как прикладной, так и теоретической.

Разделы
Основные задачи теоретической информатики связаны с теорией вычислительного обучения, алгоритмами, вычислительной сложностью, теорией информации и теорией кодирования. Коротко расскажем о некоторых из этих задач.
Теория вычислительного обучения посвящена созданию и изучению систем машинного обучения. Искусственный интеллект нашел много применений в жизни: с его помощью распознают ранние симптомы рака, улучшают изображения и звук, переводят с одного языка на другой в режиме реального времени. Однако мы до сих пор не понимаем, почему работает машинное обучение, зачастую такие системы вообще называют “черным ящиком”.
Другой крупный раздел теоретической информатики — теория алгоритмов. Многие из нас в школе строили блок-схемы: нужно помыть посуду, какая последовательность действий — алгоритм — поможет это сделать? В какой последовательности нужно брать тарелки со стола, тереть их губкой, ставить в шкаф? Теория алгоритмов решает как раз такие задачи — конечно, и на более абстрактном уровне.

Еще один раздел теоретической информатики – это теория сложности вычислений. Здесь различные задачи сравнивают по вычислительной сложность — по объему ресурсов, необходимому для решения. Задача считается сложной, если ее решение требует большого количества вычислительных ресурсов, независимо от используемого алгоритма.