Comment démarrer en CS théorique?

35

Je suis un étudiant de première année en informatique et je sais déjà que je veux aller dans le monde universitaire avec une concentration en science-fiction théorique. J'ai déjà lu certains des articles référencés dans cette question et cette question m'a convaincu davantage.

Que devrais-je faire maintenant , en tant qu'étudiant de premier cycle, pour être impliqué sur le terrain? Que puis-je faire pour préparer la recherche sur le terrain?

Bonne personne
la source
7
Ce n’est pas assez important pour que vous puissiez y répondre, mais pensez aussi à prendre un exemplaire de "Introduction à la théorie du calcul" de Michael Sipser. Même si vous n'avez pas le temps de vous étudier vous-même avec ce livre, c'est une excellente référence si vous avez besoin de chercher quelque chose qui n'est pas clairement expliqué sur Wikipedia.
Philip White
2
Je ne sais pas comment fonctionne la procédure, mais j'aimerais voir cela comme un wiki de communauté.
chazisop
3
signaler la question à l'attention du modérateur et nous allons y répondre.
Suresh Venkat
2
@Good Person: OP ne peut pas poser de question CW, seuls les modérateurs le peuvent.
Kaveh
2
@Good Person: comme le mentionne Kaveh, les affiches originales ne peuvent plus publier de messages en CW (personne non plus avec les privilèges d'édition). Seuls les mods peuvent le faire. aucune infraction n'était destinée.
Suresh Venkat

Réponses:

29

Permettez-moi de fournir une réponse de l'autre côté. Quelques chercheurs étudiants de premier cycle ont travaillé avec moi. L’expérience est mitigée: avec certains, j’ai publié des articles et des travaux en cours, et avec d’autres, nous n’avons jamais vraiment démarré.

C'est génial que vous sachiez ce que vous voulez faire. En tant qu'étudiant de premier cycle, voici ce sur quoi vous devriez vous concentrer:

  • Construire les "muscles" mathématiques qui vous aideront quand vous commencerez à vous attaquer sérieusement aux problèmes
  • Explorer différents aspects de la théorie théorique pour avoir une idée de la région et déterminer quels types de problèmes / domaines vous intéressent
  • (selon la région) résolvez des énigmes, résolvez peut-être des exercices et avancez jusqu'à une question de recherche.

Trouvez un professeur pour vous guider et mettez-vous à l'heure! La chose la plus difficile à laquelle vous serez confronté sera de vous laisser le temps libre de réfléchir aux problèmes qui se posent au cours, aux devoirs et aux examens. Mais vous devez réserver du temps pour votre étude et vos recherches indépendantes, sans quoi il sera très difficile de progresser. Vous pouvez peut-être trouver un professeur qui vous rencontrera une fois par semaine et vous fixer des objectifs intermédiaires, ou un objectif à long terme (effectuer des exercices X à partir d'un texte) et continuer à travailler de manière continue. cette.

Suresh Venkat
la source
4
Bonne réponse! "vous devez réserver des blocs de temps pour votre étude indépendante": cela me rappelle ma propre expérience. J'avais l'habitude d'être un étudiant en mathématiques paresseux, puis en master, j'ai découvert un problème intéressant avec le TCS (centré sur la fonction de castor occupé). J'ai commencé à travailler sur mon temps libre sous la direction d'un de mes prof. Je n'ai jamais trouvé quelque chose d'intéressant sur le problème, mais 12 ans plus tard, j'ai écrit plus de 15 articles avec lui (mais il n'a jamais été mon conseiller de doctorat / maître, mais seulement un mentor "externe").
Sylvain Peyronnet
1
La réponse de Suresh est géniale! Pour le PO: Construire des "muscles" mathématiques signifie s’habituer au langage et aux outils mathématiques (combinatoire, théorie des graphes, analyse, etc.) et s’habituer à prouver des théorèmes! (Et voici la partie vraiment excitante! :-)
Jay
19

Je suis actuellement doctorant et non prof, ma suggestion vient donc de mon expérience personnelle (limitée) en tant qu'étudiant diplômé.

Lorsque j'étais étudiant de premier cycle, j'ai toujours travaillé comme assistant de recherche en été avec différents professeurs dans mon département. Je crois personnellement que la seule façon de savoir si le SDC vous convient vraiment est de travailler sur des problèmes concrets et de voir ce que vous pouvez apprécier le plus. Il m'a fallu un bon bout de temps pour trouver un prof et un sujet qui me plaisait. Il y a aussi un aspect "social" dans la recherche, et différents profs ont des habitudes de travail et de supervision différentes, et donc ces emplois d'été en recherche vous donneront une meilleure idée de la qualité que vous attendez le plus d'un superviseur à l'avenir.

Il existe de nombreux domaines intéressants en informatique, et le SDC n’est que l’un d’entre eux. Il est donc toujours préférable de garder vos options ouvertes et de parler à différents profs. Il est très important de se spécialiser en doctorat, mais en tant que étudiant de premier cycle, je pense que le conseil de Mark Braverman est extrêmement pertinent:

"Essayez d'apprendre autant que vous le pouvez. [...] C'est plus difficile plus tard!"

[Mark a essayé de s'inscrire à de nombreux cours (bien au-dessus de la limite) et d'explorer différents domaines des mathématiques et de l'informatique lorsqu'il était au premier cycle.] Essayez d'assister à des conférences et à des séminaires sur différents sujets de votre département. Lorsque vous êtes dans vos années supérieures, vous devriez également demander la permission de vérifier les cours de deuxième cycle liés à vos intérêts.

Également selon que vous étudiez en mathématiques ou en informatique, vous devez également planifier les cours que vous devriez suivre pour vous préparer à des bases solides. Si vous êtes un étudiant en mathématiques, vous devriez suivre davantage de cours de CS sur les algorithmes et la complexité, ce qui vous donnera un esprit plus "algorithmique". Si vous êtes un CS ou un ingénieur, alors il est toujours bon d’apprendre quelques cours de base en mathématiques dans les domaines suivants:

  • Combinatoire
  • Probabilité et statistique
  • Algèbre linéaire avancée
  • Algèbre abstraite
  • Une analyse

Il est vrai que vous ne pouvez jamais apprendre suffisamment de mathématiques et que vous devez apprendre à maîtriser rapidement de nouvelles mathématiques / méthodes / techniques chaque fois que vous en avez besoin. Mais un fond solide vous donnera certainement un début plus facile dans TCS.

Je vous souhaite la meilleure des chances et du succès!

Dai Le
la source
6
+1: bonne réponse. J'ajouterai que prendre / auditer des cours CS ou non-CS non théoriques est également une bonne chose, cela vous ouvre l'esprit sur les problèmes éventuels à résoudre, vous ne savez jamais où une bonne question théorique se présentera, alors gardez les yeux ouverts . :)
Kaveh
Recommanderiez-vous "Advanced Linear Algebra" de Steve Roman aux études supérieures?
Jacob
2
@Jobob: Le livre de Roman est certainement recommandé par beaucoup de gens. Il est vraiment avancé et couvre des sujets intéressants tels que les modules, la convexité, la géométrie affine, les produits tenseurs, etc. Mais vous devez toujours choisir quelque chose qui convient à vos goûts et à votre arrière-plan! Il est donc toujours bon de parcourir plusieurs livres de la bibliothèque avant de prendre une décision (du moins pour moi).
Dai Le
11

En tant que étudiant de première année, votre meilleur pari est d’exprimer cet intérêt à vos professeurs du département CS, qui peuvent vous aider (en fournissant cette aide une grande partie de leur travail!). J'imagine que la plupart d'entre eux seraient ravis d'aider un étudiant de premier cycle intéressé par les mêmes choses qu'il est. À tout le moins, ils peuvent vous donner de bons conseils sur les cours à suivre dans votre établissement, ainsi que des conseils adaptés à votre situation.

Peter Boothe
la source
10

Beaucoup de gens semblent donner de bons conseils. Pour ajouter à la sagesse, permettez-moi de dire ceci: il n’existe pas de connaissances excessives en mathématiques (à moins que vous ne décidiez de faire des mathématiques pures à la place). Sérieusement, connaissez votre analyse, la combinatoire, l'algèbre, peut-être une théorie de la représentation, tout en haut, etc. Il est beaucoup plus facile de lire largement à travers les domaines de la théorie CS :)

Carter Tazio Schonwald
la source
2
excellent conseil. Je le dis à tous les étudiants de premier cycle qui viennent me parler également.
Suresh Venkat
7

Vous avez fait un excellent premier pas! Je vais ensuite parler de la discussion avec un professeur de votre département. Si vous êtes intéressé par la théorie, trouvez qui enseigne les cours théoriques et parlez-leur. Ils peuvent avoir des problèmes qui ne nécessitent pas trop de fond pour commencer. D'après mon expérience personnelle, la théorie des graphes et la combinatoire comportent davantage de problèmes plus abordables que la théorie, tout en développant les mêmes compétences de recherche. N'ayez pas peur de votre département de mathématiques!

Il peut également être utile de commencer à s’impliquer dans la communauté, notamment en posant des questions et en y répondant. Il serait utile que votre nom d'utilisateur soit votre propre nom afin que nous sachions qui vous êtes.

Derrick Stolee
la source
6

Je suis presque un étudiant diplômé. Donc, les réponses à votre question sont également intéressantes pour moi, mais peut-être que ma petite expérience personnelle peut aider.

Voici ma liste (dans un ordre aléatoire) de suggestions que vous pouvez faire:

  • Tout d’abord, lisez autant de papiers / livres / notes de cours que vous pouvez trouver. Mais il est également important d'appliquer vos connaissances aux exercices et, plus tard, aux problèmes ouverts! Certains de mes professeurs disent toujours: non seulement vos muscles ont besoin d'entraînement continu :)
  • Lisez / posez / répondez aux questions sur ce site (ou sur un autre site SE connexe) est un bon moyen d'apprendre à travailler avec des sujets de recherche en TCS ou en mathématiques.
  • J'essaie de lire beaucoup de blogs sur le SDC provenant d'un chercheur renommé. Les sujets couvrent les résultats actuels et historiques.
Marc Bury
la source
Auriez-vous des liens vers ces blogs?
SH7890
2

Je pense que le plus important est d'explorer le plus largement possible pour savoir quels aspects du système de caméras de télévision vous passionnent vraiment. Au cours de cette exploration, vous découvrirez peut-être que les problèmes qui vous intéressent le plus sont les intersections du TCS avec d’autres domaines (par exemple l’économie) ou les applications du TCS (par exemple pour les réseaux informatiques) ou des sujets du TCS qui font également partie d’autres domaines de CS. comme la théorie d'apprentissage informatique ou statistique. Heck, il est même possible que vous changiez votre majeure en maths ou en physique ou quelque chose de similaire si vos intérêts vous mènent dans cette direction.

Ce que je veux dire, c'est qu'en tant que étudiant de première année, vous avez vraiment l'occasion d'explorer plus largement avec moins de pression que vous ne le feriez en tant qu'étudiant ou professeur. Et pour ne pas être alarmé si vous ne vous retrouvez pas dans les sujets "suspects habituels" de TCS.

Bien sûr, il serait idéal si vous approfondissez un domaine, apprenez des techniques solides et publiez d'excellents résultats.

Et si vous finissez par devenir un expert dans un nouveau domaine très en vogue avant que celui-ci ne devienne un courant dominant, ce sera probablement très bien pour votre carrière.

Mugizi Rwebangira
la source