Post on 14-Jan-2016
description
Computer Laboratory
Computer Science at Oxford and Cambridge
Graham TitmusUniversity of Cambridge
Computer Laboratorywww.cl.cam.ac.uk
Luke OngOxford University
Computing Laboratorywww.comlab.ox.ac.uk
Computer Laboratory
Contents Oxford & Cambridge University What is Computer Science? Details of the two courses Admissions
Most of this presentation applies equallyto both Oxford and Cambridge.
When just one logo appears,the information applies to that university only.
Computer Laboratory
Research Assessment
Oxford and Cambridge are two of the top CS departments for research– the following grades are taken from the five-
yearly Research Assessment Exercises (1996,2001 & 2008) which are graded: 1 2 3a 3b 4 5 5*
Cambridge scored the best possible:5*, 5* and 3.35 GPA– Highest ranking in 2008 assessment
Oxford scored 5* & 5 and 3.15 GPA– Overall 3rd in research power
Computer Laboratory
Teaching assessment There are many good Computer Science
teaching departments in the UK:– Cambridge, Edinburgh, Exeter, Glasgow,
Imperial, Kent, Manchester, Oxford, Southampton, Swansea, Warwick, York • all scored 23/24 in the government’s Teaching Quality
Assessment• all rated above 80% by the Guardian University Guide
2002• do you trust either of these measures?
– you need to check what they have in their syllabus• is it good Computer Science?• is it what you want to do?
Computer Laboratory
Contents Oxford & Cambridge University What is Computer Science? Details of the two courses Admissions
Computer Laboratory
What is Comp Sci? Programming
Science
Art
Engineering
Mathematics
Linguistics
Psychology
Computer Laboratory
Computer Science… ... will save the planet by providing
systems that are– sustainable– dependable– adaptable
… teaches general skills– analysis– problem solving– abstraction– design
… produces extremely marketable graduates
Computer Laboratory
Graduate profiles
Paul CunninghamA-levels in Maths, F. Maths, Physics & ArtPhD in verification of self-timed hardwareStarted own company with £2.5m capital
Sonali TandonA-levels in Maths, Physics & Chemistry
Working for Citigroup’s Technology Division in London
Isabel KingsmillA-levels in Maths, Physics & ChemistryWorking for Detica in Guildford on data and signal processing
Computer Laboratory
Contents Oxford & Cambridge University What is Computer Science? Details of the two courses Admissions
Computer Laboratory
Teaching and learning Students belong to a college and a faculty Attend lectures in their faculty Taught in small groups in college
Computer Laboratory
Teaching: our aims To give our students an understanding of
fundamental principles that will outlast today’s technology
To produce graduates who will lead development not merely cope with it
Computer Laboratory
Cambridge History Mathematical Lab
founded 1937 EDSAC May 1949 Practical
computer– 650 instructions/s– 1k x 17 bits– paper tape input– teletype output– 4m x 3m– 3000 valves– 12kW
Computer Laboratory
William Gates Building
Computer Laboratory
Cambridge phenomenon
Cambridge has developed rapidly over past 15 years
New technology and start-up companies Many spin-offs from University research groups IT companies around Cambridge - Silicon Fen
Source: Cambridge Entrepreneurship Centre
Computer Laboratory
Computer Laboratory Staff
– 35 teaching officers– 35 contract researchers– 10 computer officers– 15 administration and assistants
Students– 150 research students– 30 post-graduate Diploma– 25 MPhil in Speech and language– 340 undergraduates
Computer Laboratory
Syllabus
Computer Laboratory
Courses Programming
– Java, C++ (object-oriented)– ML (functional)– Prolog (logic)– C (procedural)– Assembler– Verilog (hardware definition)– Comparative Languages
Hardware– Digital Electronics– Computer design– ECAD, VLSI– Quantum Computing
Mathematics– Underpins theory and many applications– Post A-level functions, sets, number theory, probability
Computer Laboratory
Courses II Algorithms
– Data structures and Algorithms– Complexity
Theory– Computation Theory– Logic & proof, Semantics, Information theory, Specification
& verification, Types, Concurrency, Finite Automata– Automatic Theorem Proving
Systems– Operating Systems, Real time systems– Networks, Distributed Systems– Middleware (Transport, Trust), E-commerce– Compilers– Databases
Computer Laboratory
Applications Graphics
– HCI– Vision– Human behaviour animation
Security– Chip analysis, Protocols, Crypto, Steganography, Privacy
Language, speech and information– Natural Language Processing– AI– Information retrieval– Bioinformatics
Sentient computing– Sensors, Tracking, Augmented Reality, Vehicles, Sports
Computer Laboratory
Professional skills Professional practice & ethics
– ethical theory, professions, computer misuse Software Engineering
– failures, life cycles, quality, tools, management– design, formal methods, specification, proof
Intellectual property law Business studies
– how to start and run a business– finance, project management, sales & marketing,
exit strategies
Computer Laboratory
The functional
approach Calculating factorials
Calculating the powerset
fun factorial 0 = 1 | factorial x = x * factorial (x – 1);
fun powerset [] = [[]] | powerset (x::xs) = let val ps = powerset xs in ps @ (map (fn (y) => x::y) ps) end;
Computer Laboratory
Computer Science
Cambridge Course
CS CS Ma Opt
Computer Science
Computer Science
Year 1
Year 3
Year 2
Three years 1st year ½ CS, ¼ Maths, ¼
option from elsewhere 2nd, 3rd years 100% CS Select most 2nd year
courses, half the 3rd year 100 students per year
– plus 40 part-time in 1st year General principles
– not vocational training Self-contained Draws on many disciplines
Computer Laboratory
First year choicesYear
3
Year 2
Year 1
Computer Science
Computer Science
CS CS Ma NSComputer Science
CS CS Ma MaComputer Science with Mathematics
Computer Science
Computer Science
Computer Science
CS CS Ma NSComputer Science
Natural Science
Natural Science
CS Ma NS NSComputing option in
Natural Sciences
Computer Science
Computer Science
CS CS Ma NSComputer Science
CS CS MaPsy
Computer Sciencewith Psychology
with Physics, Chemistry, Geology,
Physiology, Evolution
Computer Laboratory
Course components 8+8+4 = 20 weeks teaching per year 12 one-hour lectures per (6-day) week
– plus similar time in review and private study
6 hours of practical work 2 or 3 supervisions of one hour each
– plus 4 hours of preparation each
Computer Laboratory
Practical skills First year Practical exercises
– hands on, time management
Second year Group projects– specification & acceptance, reporting, tools,
management, team work, deadlines, presentation
Final year Individual projects– deadlines, dissertation, presentation
Computer Laboratory
Computing Laboratory• Founded by Leslie Fox (1957)
• About 50 academic staff
• Home to different groups
Wolfson Building
Computer Laboratory
Oxford Research Themes
Programming Languages Foundations, Logic and Structure Numerical Analysis Automated Verification Software Engineering Computational Biology Information Systems
Computer Laboratory
Oxford Courses Computer Science
– Computer Science firmly based on Mathematics
Mathematics and Computer Science– similar, but with more Mathematics
All courses (except theory and mathematics) have compulsory assessed practicals.
Option of 3-year BA or 4-year MCompSc / MMathsCS degrees.
Computer Laboratory
Course components
8 + 8 + 4 = 20 teaching weeks per year
10-12 one-hour lectures per (5-day) week
– plus similar time in review and private study
4-8 hours of practical work per week 2-3 hours of college tutorials per week
– Personalised: 1 tutor to 2 students– Intensive: up to 8 hours of preparation time
Advanced classes for 3rd & 4th-yr topics Year-long individual project (for 3rd &
4th year)
Computer Laboratory
First Year Topics Imperative Programming Functional Programming Design and Analysis of Algorithms Digital Hardware
Calculus Linear Algebra Logic and Proof Discrete Maths First four have practical exercises.
Computer Laboratory
Year By Year First Year
– Imperative & Functional Programming (former is about languages like C and Java; latter
is also a good language for talking about algorithms)
– All courses are compulsory.– MCS have Maths courses instead of some CS
courses
Second Year– Core courses: Object-Oriented Programming (in
Java), Concurrency, Networks, Operating Systems– Other options. E.g. Graphics, Numerical
Computation, Architecture, Compilers, Programming Languages, Models of Computation, etc.
Computer Laboratory
Year By Year Third Year
– Individual project (= 25% of time)– More options; e.g. Intelligent Systems, Security,
Optimisation, Databases, etc.– MCS has more Maths options & no project.
Fourth Year (= optional Masters year)– Longer individual project. – Course work assessed by take-home mini-
projects. – Yet more options! E.g. Computer Animation,
Financial Computing, Quantum Computation, Computational Linguistics, Information Retrieval, etc.
Computer Laboratory
A Variety of Options Automated Verification
– Automata, Logic & Games – Randomised Algorithms– Software Verification– Probabilistic Model
Checking
Foundations & Logic– Lambda Calculus and Types– Categories, Proofs &
Processes– Quantum Computer
Science– Game Semantics
Computational Biology– Executable Biology– BioinformaticsThese options are closely linked to our research themes
Information Systems– Database Implementation– Computational Linguistics – Information Retrieval– Knowledge Representation
Intelligent Systems– Machine Learning– Computer Animation
Programming Languages
– Program Analysis– Concurrent Programming
Computer Laboratory
Example Project Topics
Medical Image Analysis Biologically-Inspired Computing Robot Soccer Simulation Natural Language Processing Quantum Computing Compilation of Security Protocols Formal Hardware Verification Chess Playing Program
Computer Laboratory
Contents Oxford & Cambridge University What is Computer Science? Details of the two courses Admissions
Computer Laboratory
Oxford Admissions College based We consider:
– GCSE results, AS level module marks, and A-level predictions; or equivalent international examinations
– school record; extra-curricular activities (e.g. national + international competitions)
– personal statement & references– common written test in Nov (and possibly
individual college test before interviews)– at least two subject interviews – problem solving
Common Database, Pools & Open Offers– redistribute uneven applications between
colleges
Computer Laboratory
Cambridge Admissions Very Similar We consider
– GCSE results, or equivalent international qualification
– AS level module marks, A2 predictions; school record
– personal statement– reference– two subject interviews (>90% interviewed)
• unseen problem solving
– written tests• UCLES Thinking Skills Assessment (TSA)• individual college tests
– computing background within and outside school Winter and Summer pools
– redistribute uneven applicationsbetween colleges
Computer Laboratory
Prerequisites 3 A grades at A-level
– more than 3 A-level or AS-levels highly valuable– not counting General Studies
Mathematics to A-level– is absolutely essential
Further Maths– nearly essential, if your school offers it
Computer Laboratory
Other A-levels A Physical Science
– is desirable
Computing A-levels– Computer Science
• good, similar in character to university-level CS• but very few schools offer it
– ICT, Information Technology,…• quite different from university-level Computer Science• not relevant
Other subjects– up to you e.g. history, languages, etc– traditional academic subjects best
Computer Laboratory
Computer Science at Oxford and Cambridge
Graham TitmusUniversity of Cambridge
Computer Laboratorywww.cl.cam.ac.uk
Luke OngOxford University
Computing Laboratorywww.comlab.ox.ac.uk