The Student Room Group
Studying at Cardiff University
Cardiff University
Visit website

Do you start learning AI any earlier on the CS course?

I'm taking a look at the CS course and AI is listed as an optional module at the end of 4th year for CS + a year in industry. That seems like quite sometime before starting AI and so I was curious whether learning It starts any earlier?
You usually won't start covering such topics until later in the courses (3rd/4th years) because it isn't "core" material for the subject broadly and is just one of many specialist areas people may want to pursue. This specialisation begins normally in the latter part of the degree programme. You also need a good foundation in the "core" computer science topics arguably as well, although AI is probably more just having a good background in maths than anything.

Some courses do have opportunities to start in that area earlier than others; Exeter has an option in AI in second year (however their CS department is relatively weak) and the more focused courses on the area at Manchester (BSc Artificial Intelligence) and Nottingham (BSc Computer Science with Artificial Intelligence) have courses named as such in first year. However I would point out several of the aforementioned courses have modules "named" artificial intelligence which cover the same content as modules on another CS course that would probably be called "maths for computing" "foundations of computer science" or similar, and that things like machine learning and logic are pretty core to AI but aren't "called" AI.

For example, at Cambridge they cover Machine Learning in either first or second year (depending on whether you do the 75% or 50% first year option), and have lecture courses in Logic & Proof and Prolog (a major programming language for AI) in the first two terms of second year, before the AI lecture series is "finally" taught at the end of second year - leading to more options in final year. Similarly at UCL while the first formally named AI option isn't until third year, the prerequisite for this is all the core CS content from the first two years, especially the "mathematical" areas like the two first year Theory modules and the second year Logic & Database Theory and Mathematics & Statistics modules.

If you are interested in AI I would recommend looking at the more mathematical courses where possible, and if there are options to increase the mathematical background while you're there (such as the Computer Science with Mathematics option at Cambridge, or taking optional modules in mathematics elsewhere) it would likely be very useful. You may also want to consider CS and Philosophy at Oxford - despite your initial reaction being that philosophy is fluffy and unrelated, at Oxford this course is pretty much designed as "theoretical computer science", and you'll read papers by Alan Turing on intelligence and computatibility (relevant aspects of AI) in your first year philosophy courses. A lot of the philosophy you'll cover will also actually just be logic, and then more logic.

The CS and Mathematics course there would also likely be appropriate, if you don't want to consider so deeply the nature of intelligence (which informs how you would go about "creating" it) and just cover more sophisticated mathematics. Other courses that cover both areas in an interdisciplinary way are the Mathematical Computation course at UCL and Discrete Mathematics at Warwick. The Data Science course at Warwick might also be of interest.

This is of course generally regarding degrees in the area, but as noted above, including for the Cardiff course specifically, you'll be covering relevant topics far before you get to a module "called" AI.
(edited 6 years ago)
Studying at Cardiff University
Cardiff University
Visit website
Original post by artful_lounger
You usually won't start covering such topics until later in the courses (3rd/4th years) because it isn't "core" material for the subject broadly and is just one of many specialist areas people may want to pursue. This specialisation begins normally in the latter part of the degree programme. You also need a good foundation in the "core" computer science topics arguably as well, although AI is probably more just having a good background in maths than anything.

Some courses do have opportunities to start in that area earlier than others; Exeter has an option in AI in second year (however their CS department is relatively weak) and the more focused courses on the area at Manchester (BSc Artificial Intelligence) and Nottingham (BSc Computer Science with Artificial Intelligence) have courses named as such in first year. However I would point out several of the aforementioned courses have modules "named" artificial intelligence which cover the same content as modules on another CS course that would probably be called "maths for computing" "foundations of computer science" or similar, and that things like machine learning and logic are pretty core to AI but aren't "called" AI.

For example, at Cambridge they cover Machine Learning in either first or second year (depending on whether you do the 75% or 50% first year option), and have lecture courses in Logic & Proof and Prolog (a major programming language for AI) in the first two terms of second year, before the AI lecture series is "finally" taught at the end of second year - leading to more options in final year. Similarly at UCL while the first formally named AI option isn't until third year, the prerequisite for this is all the core CS content from the first two years, especially the "mathematical" areas like the two first year Theory modules and the second year Logic & Database Theory and Mathematics & Statistics modules.

If you are interested in AI I would recommend looking at the more mathematical courses where possible, and if there are options to increase the mathematical background while you're there (such as the Computer Science with Mathematics option at Cambridge, or taking optional modules in mathematics elsewhere) it would likely be very useful. You may also want to consider CS and Philosophy at Oxford - despite your initial reaction being that philosophy is fluffy and unrelated, at Oxford this course is pretty much designed as "theoretical computer science", and you'll read papers by Alan Turing on intelligence and computatibility (relevant aspects of AI) in your first year philosophy courses. A lot of the philosophy you'll cover will also actually just be logic, and then more logic.

The CS and Mathematics course there would also likely be appropriate, if you don't want to consider so deeply the nature of intelligence (which informs how you would go about "creating" it) and just cover more sophisticated mathematics. Other courses that cover both areas in an interdisciplinary way are the Mathematical Computation course at UCL and Discrete Mathematics at Warwick. The Data Science course at Warwick might also be of interest.

This is of course generally regarding degrees in the area, but as noted above, including for the Cardiff course specifically, you'll be covering relevant topics far before you get to a module "called" AI.
Thanks for the suggestions, but I accepted an unconditional offer for CS at Cardiff and so I do have to go to the uni. I'm interested in gamedev and building my portfolio before I go on to post-grad will require knowledge of AI. I'm concerned that I might learn It too late. Thanks for the advice though.
Original post by Paranoid_Glitch
Thanks for the suggestions, but I accepted an unconditional offer for CS at Cardiff and so I do have to go to the uni. I'm interested in gamedev and building my portfolio before I go on to post-grad will require knowledge of AI. I'm concerned that I might learn It too late. Thanks for the advice though.


As stated, you'll cover relevant topics to the area before you get to final year. AI as referred to in CS vs videogames AI is generally pretty different; CS AI courses focus on the research surrounding the development of formal artificial intelligences. Games AI primarily focuses on putting in not terribly complex algorithms to make "decisions" as to what action to take next within the frame of the game. Few development studios will bother using any kind of sophisticated machine learning in their AIs compared to "is target in range y/n; if y do x, if n move until target in range" and variations thereupon. The main issue will be finding ways to efficiently program and implement such arrays of behaviour, which is more "general" CS than specialist AI topics.

While there are some PhD programmes which explore this more research oriented AI and how some aspect of this could be used to improve gaming experiences and game AIs, this is of course fundamentally research rather than the practical matter of making a game. So, it would necessarily follow from the research oriented teaching of AI in the latter years of the course. You can probably make relevant content for a portfolio now if you know basic aspects of programming; the hardest part is probably getting to grips with the implementation of these in a game engine and the graphics aspects...the latter graphics stuff you normally cover earlier in the course. The AI as far as you need for a videogame is just common sense and understanding how programs and code functions, as mentioned.

Moreover there's nothing stopping you from visiting the library in earlier years of the course and reading books on the subject and trying to make your own projects to explore it - that's really what the process of creating a porfolio is about, self-motivated projects.
(edited 6 years ago)
Original post by artful_lounger
As stated, you'll cover relevant topics to the area before you get to final year. AI as referred to in CS vs videogames AI is generally pretty different; CS AI courses focus on the research surrounding the development of formal artificial intelligences. Games AI primarily focuses on putting in not terribly complex algorithms to make "decisions" as to what action to take next within the frame of the game. Few development studios will bother using any kind of sophisticated machine learning in their AIs compared to "is target in range y/n; if y do x, if n move until target in range" and variations thereupon. The main issue will be finding ways to efficiently programme and implement such arrays of behaviour, which is more "general" CS than specialist AI topics.

While there are some PhD programmes which explore this more research oriented AI and how some aspect of this could be used to improve gaming experiences and game AIs, this is of course fundamentally research rather than the practical matter of making a game. So, it would necessarily follow from the research oriented teaching of AI in the latter years of the course. You can probably make relevant content for a portfolio now if you know basic aspects of programming; the hardest part is probably getting to grips with the implementation of these in a game engine and the graphics aspects...the latter graphics stuff you normally cover earlier in the course. The AI as far as you need for a videogame is just common sense and understanding how programs and code functions, as mentioned.

Moreover there's nothing stopping you from visiting the library in earlier years of the course and reading books on the subject and trying to make your own projects to explore it - that's really what the process of creating a porfolio is about, self-motivated projects.
Thanks, that's really insightful. Time to start coding :smile:

Quick Reply

Latest

Trending

Trending