Що передбачає дослідження теоретичної інформатики?


11

Я намагаюся зрозуміти, що пов'язане з теоретичними дослідженнями інформатики. Що роблять теоретики-комп’ютери?

Я знаю, що значний час витрачається на викладання, нагляд за аспірантами, подання заявок на фінансування та відомчі обов'язки. Відкладаючи їх убік, як ви витрачаєте свій час на дослідження? Які основні види діяльності ти зазвичай робиш? Я здогадуюсь, що ти читаєш документи, думаєш, маєш зустрічі та пишеш документи. Чи є інші?


4
"як ви проводите свій дослідницький час?" ... зіткнувшись з проблемами, які я, мабуть, ніколи не зможу вирішити :-) :-)
Marzio De Biasi

7
Це як описувати живопис як "змішування фарб, монтаж полотна, фарбування та чищення інструментів". Іншими словами, він описує, як може виглядати хтось, хто спостерігає, але не має відношення до того, про що йде поле :)
Suresh Venkat

1
Інші види діяльності: спорт, туризм, культурні заходи та загалом життя. Робити інші речі допомагає вашому мисленню (та здоров’ю).
бабу

7
Я думаю, питання не в філософії досліджень ТКС або в тому, що робить вас кращим дослідником, а в дійсності в тому, які конкретні заходи займається дослідник ТКС у робочий час. Окрім того, що вже постає у питанні, я б додав підготовку бесід, проведення бесіди, відвідування конференцій, коректуру власних робіт, рецензування дописів інших.
Даніель Маркс

2
Дякую. Я маю деяке уявлення про тип дослідницьких питань, які ви вивчаєте. Я хочу дізнатися більше про вашу щоденну діяльність. Дослідження в інженерії програмного забезпечення передбачають розробку комп’ютерних програм, проведення експериментів, збір та аналіз даних, ... Я хочу знати, що бере участь у дослідженні теоретично. Який типовий робочий день?
студент з нижчого класу

Відповіді:


12

Щодо тем

Існують різні типи питань, які можна вважати теоретичними інформатикою. Тут важливим є слово " теоретичне " (оскільки ми всі маємо уявлення про те, чим займається інформатика). Розуміння слова теоретичне не так очевидно. Довгий час я вважав це математичним, на відміну, наприклад, "злому". Я краще вчився у людей лінгвістиці: теоретичнійдля них явно не означає математичне, але засноване на теорії, яка може бути дещо неформальною (хоча це може бути і математичною), і є організованим набором знань та понять, які структурують розуміння спостережуваних явищ і, сподіваємось, дозволяють дедуктивно та прогнозувати використання здобутих знань. Це також зменшує суму для навчання та навчання шляхом зменшення кількості примітивних понять, з яких можна вивести решту.

Теоретичне можна протиставити практичному , саме таким чином ці знання використовуються для роботи в обчислювальних двигунах, для побудови систем тощо. Я також можу протиставитись застосуванню, яке полягає в використанні цих знань для вирішення проблем в інших галузях науки та людини діяльності.

Але я сумніваюся, що є чіткі межі.

Сказане, теоретична комп'ютерна наука охоплює різні сфери, і я спробую дати деякі, хоча я впевнений, що забуду інші, а також, що інші люди можуть не погодитися з цією організацією.

  • Один домен - це обчислюваність , яка вивчає, що можна обчислити, і як у досить абстрактному сенсі: багато в чому те, що описано у відповіді Суреша Венката.

  • інша - алгоритміка , яка знаходить ефективні засоби для обчислення відповідей на конкретні проблеми із конкретними обмеженнями. Обчислюваність є теоретичним контекстом для алгоритміки.

  • семантика (на користь кращої назви) аналізує концептуальну організацію обчислювальних задач та алгоритмів на поняття вищого рівня, щоб розподілити методи, які виявилися корисними та часто використовуються, наприклад, концепція підпрограми, структури, модулі, приховування інформації. Він включає розробку математичних інструментів, які адекватно формалізують ці поняття, щоб забезпечити міркування високого рівня (наприклад, семантика Скотта). Він також торкається того, як це виражається, таким чином, про розділення та співвідношення між синтаксисом та семантикою. Концепції мов програмування є її частиною (хоча мовна конструкція, ймовірно, є практичним застосуванням цих знань). Він також може включати співвідношення між теорією доказів та теорією обчислень та сучасною роллю типних систем.

  • Інша тема, яка могла б розвинутися більше, ніж це було до цього часу, - це співвідношення між обчисленням та фундаментальною фізикою. Наприклад. чи існує залежність між обмеженнями обчислень та властивостями фізичного світу, такими як щільність фізичної інформації або закони термодинаміки. Квантові обчислення можуть трохи покращити нашу обчислювальну майстерність; ми могли б сподіватися на більше? Деякі можуть заперечити, що це все ще TCS, хоча є дослідження TCS щодо гіперкомп'ютації .

Щодо конкретної діяльності

Я пропускаю очевидну діяльність, яку вимагає академічне життя. або наукове життя в промисловості: викладання, публікація, рецензування робіт, написання заявок на гранти, прийняття академічних обов'язків, управління людьми, консультування студентів або політиків. Але навіть тоді не існує простої відповіді на ваше запитання. Тут я лише накреслю декілька аспектів, які приходять на думку, але я впевнений, що можна сказати ще багато. І я не впевнений, що відповідаю тобі. Деякі найкращі вчені написали книги про свою роботу, і це може дати вам підказки про наукову діяльність.

Дослідження в теорії можуть включати різні речі, залежно від ваших навичок та інтересів, які сильно різняться від вченого до вченого. Про це дещо важко говорити, оскільки кожна людина сприймає більше власну діяльність та інтереси, ніж інтереси інших. Більшість досліджень потребують широких знань, оскільки цікаві та справді оригінальні результати часто виникають від приведення речей у співвідношення чи перенесення техніки з одного (під) поля на інше або отримання різних технічних поглядів на ту саму проблему. Тож важливо навчитися якнайбільше на глибині та глибині. Пам’ятайте, що, хоча у вас є час і можливості для цього, як студент, або як молодший викладач / науковець, вони будуть згодом зменшені через обов'язки та життя в цілому. Викладання того, на чому ви не спеціалізуєтесь, може бути способом продовжити навчання.

Вид роботи, яку виконують люди, може сильно відрізнятися, оскільки люди, на щастя, дуже різні, мають велику різноманітність інтересів та технічних здібностей, таким чином доповнюючи один одного. Деякі люди вирішують проблеми. Вони дивляться на теоретичні чи практичні питання, поставлені іншими людьми, або самі собою, і намагаються їх вирішити, або наблизиться до повного чи часткового вирішення. Іншим людям буде краще структурувати наявні знання та ставити щось у співвідношення, а потім знаходити нові запитання. І те, й інше є важливим.

Важливо знайти більш прості докази технічних результатів, або простіші презентації теорій або об'єднання понять. Це узагальнює результати, зменшує кількість речей, які слід вивчити, підкреслює основні ідеї та, можливо, приносить нове розуміння. Оскільки наш час навчання обмежений, прогрес можливий лише тоді, коли ми конденсуємо знання.

Простий приклад - вивчення абстрактних сімей формальних мов. Коли теорія мови вперше розроблялася, властивості закриття в різних операціях доводилися знову і знову для кожної сімейства мов (регулярні, без контексту, RE, ...), використовуючи спеціальні методи в залежності від родини. Тоді вийшло так, що ці властивості закриття мали внутрішні відносини незалежно від зацікавлених сімей, і вони були вивчені як такі. Сьогодні нам залишається лише перевірити кілька найпростіших властивостей закриття для даної родини, і ми отримуємо «безкоштовно» цілий набір інших властивостей.

Ще одним важливим моментом є те, що між теоретичною, практичною чи експериментальною роботою немає такого чіткого розрізнення. Хороша теорія може призвести до впровадження систем, які можуть механізувати вирішення проблем. І для впровадження такої системи знадобиться хороший теоретик із поєднанням теоретичних і практичних робіт, включаючи впровадження системи або мовне проектування. На думку багатьох прикладів, таких як системи синтезу доказів та / або програм, спеціалізована мова для синхронних паралельних систем, обмежена алгоритмічна мова, для якої обчислювальну складність можна систематично виводити. Не тільки важливо вміти виробляти такі тактичні системи, які роблять теоретичні результати більш доступними та зручними для використання, але для теоретика часто дуже важливо або використовувати ці системи, якщо тільки вивантажити нині менш творчі частини його працювати або сприяти розвитку та розширенню цієї системи.

Іншим аспектом є можливість порівнювати теоретичні підходи шляхом практичного експерименту. Тут питання полягає в порівнянні різних методик для досягнення тієї ж мети. Порівнювати реалізацію часто безглуздо, оскільки їх ефективність часто залежить від мови програмування або навичок програмування реалізатора. Але якщо їх можна виразити всіма загальними теоретичними рамками, то іноді можна порівнювати їх експериментально в рамках. Тут теорія та практика підтримують одна одну, як це часто робиться в науці. Чистого теоретичного аналізу досягти не завжди легко. Крім того, експериментальний аналіз, якщо добре проведений, може виявляти несподівану поведінку, що може мотивувати кращий теоретичний аналіз.

Світ не простий чи чіткий. Ось чому це може бути весело, маючи місце для всіляких навичок. Розпитувати власні знання та будь-якими способами відповідати на питання інших.

Дві речі, про які часто забувають: етика науки та пояснення її людям. І те, і інше є важливим і важким.


наприклад, посилання на теорію проти експерименту, але насправді, здається, існує досить жорсткий поділ між теоретичною / експериментальною роботою в TCS, що надає перевагу / наголошує на колишньому принаймні на цьому сайті .... емпірична робота не велика в порівнянні і повільно стає більш прийнятою ....
vzn

8

В одному сенсі перегляд цього веб-сайту розповість вам про різні питання, про які думають теоретики (на низькому рівні). На дуже високому рівні вчений-теоретик задає питання щодо математичних основ обчислення:

  • що ми можемо обчислити?
  • як ми можемо це обчислити?
  • Як швидко ?
  • що відбувається, коли у нас є обмежені ресурси для обчислення?
  • які обмеження в тому, що ми можемо обчислити?

Починаючи з цих питань, з'являється ціла низка інших тем, торкаючись областей додатків, математики, інших частин інформатики тощо.


Це мені здається ключовими питаннями в "Теорії А" (обчислюваність, складність, алгоритми), а не "Теорія В" (логіка, семантика, теорія мови програмування). (Див. Термінологію cstheory.stackexchange.com/q/1521/989 ).
Blaisorblade

4

мені спало на думку, що рахунки з перших рук можуть бути корисними, але вони здаються дещо рідкісними в CS (на відміну, наприклад, від математики, біографічного / мемуарного письма тощо). ось два онлайн-відповіді, які стосуються питання та можуть бути корисними. вони більше спрямовані на життя докторантів та орієнтовані на КС, але більшість стосується досліджень професорського рівня (крім викладання, але які також працюють багато кандидатів наук). [і в деяких випадках професорів можна сприймати як постійно / неодноразово писати багато "міні-" кандидатських дисертацій (дослідницькі роботи) або в деяких випадках "супер-" докторські дисертації (книги) за їх кар'єру.] Є також кілька гідних книг про Тема додасть деякі, якщо ви вкажете, що вони будуть прийнятною відповіддю на ваше запитання.

  • Як проводити дослідження в лабораторії MIT AI "цілою купою нинішніх, колишніх і почесних аспірантів MIT AI" / Девід Чапман, редактор

    Цей документ, напевно, має на меті пояснити, як проводити дослідження. Ми надаємо евристику, яка може бути корисною для підбору конкретних навичок, необхідних для дослідження (читання, письмо, програмування), а також для розуміння та насолодження самого процесу (методологія, вибір теми та дорадника та емоційні фактори).

  • Як бути успішним докторантом (з інформатики) Марком Дредзе (Університет Джона Хопкінса), Ханною М. Уоллаш (Університет Массачусетса Амхерст)


також зовсім небагато щоденного життя дослідників можна отримати з деяких блогів з інформатики, написаних "всередині виглядає"
vzn
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.