next up previous
Next: Writing up and presenting Up: Research Methods Previous: Accessing research literature

Subsections


Tools for doing research

Note-keeping

Even for a project of only a few months it's useful to keep systematic notes of your work: you'd be surprised how easy it is to forget within a couple of months what you did at the beginning. Date your hand-written notes and put them in a folder, in a logical order; if necessary, split them into sections. It can also be useful to keep a simple electronic log file (on your computer, or dropbox, or google docs etc), where you can record in ``bullet point style'' e.g.

Such a log file can be a starting point for writing up the project report; if you update it regularly, it'll ensure that you don't leave out anything important. Again, it's surprising how easily this happens, especially with results from the early stages of a project. E.g. if you have to tune the parameters of a learning algorithm, you should explain in the report how you did this; if you don't have a record of which values you tried and what happened, this will be very difficult.

Computing tools

Most project involve computation of some kind or other; you may need to evaluate numerically the predictions of a theoretical calculation, run some learning algorithms on data etc.

Access to computers

All M.Sc. students have access to the student computing facilities around campus. There are also dedicated PCs in room S4.25; for access to this room please contact the departmental office in room S5.17.

You should try out early on that you can log in to whatever College computer you are planning to use; if there is a problem, send an email to nms-computing-support@kcl.ac.uk in the first instance. The default printer for the PCs in S4.25 is in room S4.24; again, ask in the departmental office for keys. Also check with them regarding access on weekends etc; don't just assume you'll be able to get into the rooms somehow, especially during the mad rush in the last few days of the project period.

For heavier computation we can also give you access to our network of Unix workstations. Your supervisor will be able to judge whether this is necessary.

Software

Exactly what software you'll need will depend on your project. For simple calculations, spreadsheets may be enough; most machines have openoffice (or staroffice) installed, which provide Microsoft Excel-compatible spreadsheets.

For symbolic calculations, e.g. when you need to simplify a very complicated expression, Maple and Mathematica are both useful; Maple is available on most machines, as is Mathematica. These programs are also useful for making graphs, and for not-too-complicated numerical work, e.g. minimizing functions numerically, solving systems of nonlinear equations.

For complicated numerical work you may need to write your own programmes. Standard languages in use in the department are C and C++, and compilers (gcc) and debuggers (gdb) for these are on all Unix workstations.

Finally, there is matlab. This is installed on the M.Sc. PCs (in room S4.25), but you can also install it on your own machine using a college licence. See here for details.

Originally, matlab (matrix laboratory) was designed as a simple interface for doing matrix and linear algebra computations. It retains that structure, but lots of other functions have been added. One reason that matlab is so popular is that it can easily be extended using so-called toolboxes. Many of these are written by people doing research in complex systems, and are freely available. Installed on the machines in the MSc computer room should be for example the netlab neural networks toolbox and the OSUSVM support vector machine toolbox. The commercial toolboxes (produced by MathWorks, the company that makes Matlab) for optimization and statistics are also there.

Because matlab is widely used and often features as a tool in M.Sc. research projects, you are strongly encouraged to familiarize yourself with it. Below is a short overview; good tutorials can be found e.g. in the online Matlab help facility. You could also have a look at these documents with overviews of basic Matlab functions (document 1 (Word), document 2 (Word), document 3 (pdf)), from previous modules within NMS.

Below is a brief summary of some features of matlab:


next up previous
Next: Writing up and presenting Up: Research Methods Previous: Accessing research literature
Sollich 2017-11-23