Category: M366: Natural and artificial intelligence

I had to read and re-read this a few times to make sure I wasn’t hallucinating, but it turns out that I’ve somehow managed 80% on the M366 exam! And even more luckily, it seems that the examining board were in a particularly lenient mood, since they’ve decided that my overall course result is a Distinction, rather than the Pass 2 that it should technically have been. I’m overjoyed – I really thought I’d either fail or scrape a Pass 4 for this course. It’s a huge relief to know that I won’t have to resit the exam, or substitute a different Level 3 Computing course into my diploma and degree. Phew!


The exam is over, and I think it went okay, but I’m not at all confident that I’ll have passed this one – hopefully the results will be released around the start of December like they were last year, I’ll be very interested to find out whether I’ve managed to scrape a Pass 4! Anyway, now that it’s over and done with, it’s time for a good navelling-gazing session about M366 as a whole…
Continue reading

I finally got TMA04 for M366 back this morning, and was very happy to find that I’ve got my best mark of the entire course for this one – 93%! Which is a well-timed confidence boost, since my M366 revision has been challenging to say the least! I’ll be happy with a Pass 4 in the exam, to be honest. Let’s just hope there are plenty of questions about Block 5, since that seems to be my strong point…

I got the MS221 TMA04 back a while ago, but I only had a quick look at the score and the summary comments, as I didn’t want it to distract me too much from the M366 exam prep I’m doing at the moment. I got a disappointing 88% for this one, which particularly worries me since Block D was my favourite part of the course, and I expected to do a lot better than that. I can’t believe I scored better on the calculus TMA than this one!

Well, I’ll have plenty of chance to go through the detailed feedback and find out exactly what went wrong with my understanding of Block D, once the M366 exam is over and done with next Wednesday. Until then, it’s back to neural networks, learning rules and search algorithms for me!

I can’t believe it’s only 3 weeks until the M366 exam! This course has really dragged at times, but now that I’m into the revision period the days are just flying by! This week I’ve been making notes on the learning outcomes for each block, and trying to condense my notes as much as possible. There’s something very satisfying about squashing a nine-month course into a nine-page Word document!

I’ve been doing some MS221 revision this weekend too – I decided to have a go at Part 1 of the 2007 past paper, and I was interested to see that the questions don’t completely conform to the pattern in the 2008 paper. I was particularly blind-sided by the appearance of a question on combinations/permutations and binomial coefficients, since I’d forgotten they were actually covered in Chapter B1.

With MS221, I’ve mostly been concentrating on getting faster at answering questions – there are 12 questions in Part 1 of the exam, and I’m aiming to spend 2 hours on that bit, so I need to be able to do each short question in about 10 mins. So far, I’m fast enough when it comes to my favourite topics (Block D, I love you!), but in my weakest areas I have to spend far too long flipping through the Handbook and scratching my head.

In an attempt to speed the process up, I’m putting together a kind of condensed version of my most frequently-used bits of the Handbook, so that I can transcribe it into the blank front page of the actual book and take it into the exam. It’s going to be quite a challenge to hand-write all these notes into the Handbook, but hopefully it’ll allow me to spend more time puzzling over the actual questions and less time flicking through the book. And it’ll give me an opportunity to use my many colourful gel-pens – my Handbook will probably be the most gaudy book in the exam hall!

I got 85% for this one, so it’s a distinction but only just! By my calculations, I need to get at least 82% for TMA04 in order to get a distinction for the Overall Continuous Assessment Score – but to be honest, I’m probably going to end up with a Pass 2 in the exam, so TMA04 might not even matter that much anyway!

I’m starting to feel like I’m just not good enough to be doing M366; I lost a lot of marks on Question 5, the case study question, so it seems like I just don’t really understand the material well enough to apply it to practical scenarios. I know I’ve said it before, but I really wish I’d taken M359: Relational databases: theory and practice instead – I’m sure that would have presented its own difficulties, but in hindsight I think it would have suited my interests and abilities a lot more than M366!

One of the bits of M366 Block 5 that I really enjoyed was the section about Braitenberg vehicles. They are amazing! Especially compared to the big, complicated subsumption-based systems that we learned about in Block 3 – these awesome little Braitenberg vehicles have no internal processing modules, just connections between the sensors and the motors, and yet they can behave in a surprisingly complex manner.

I really like this video featuring Type 2 Braitenberg vehicles built with Lego Mindstorms. Type 2 vehicles have excitatory connections between the sensors and motors; in the Type 2a vehicle, the left sensor is connected to the left motor, and the right sensor to the right motor, whereas in the Type 2b the connections are crossed. A simple variation, but the difference in behaviour is impressive:

Continue reading

Normally I don’t like business-related TMA questions, because it feels like an incursion by the world of work onto the serene oasis that is my OU studies. But Question 5 of M366 TMA03 is just funny enough to make up for that:

In this final question we are asking you to put yourself in the position of a senior technical employee of a software company. Your immediate line manager has recently seen a television science programme which mentioned, briefly, the power of neural networks in handling problems that conventional software systems struggle with, and has been temporarily shaken out of her usual torpor to become excited about this. […] Your manager has a short attention span, so your case study should be no more than 1200 words.

I wonder if the assignment author had a bad experience working in industry? I work in a public sector organisation, so I can’t comment on whether software companies are good or bad places to work, but I think dealing with well-meaning yet clueless managers is probably a near-universal experience!

Anyway, now that I’ve finished my concise 1200-word report for my imaginary line-manager, I’m pretty much done with TMA03 for both M366 and MS221. As I was saying in my last post, I’ve enjoyed this M366 assignment a lot more than I expected, particularly the section about self-organising maps. There’s something about SOMs that really captures my imagination – I guess I like the idea of training a SOM to detect meaningful patterns that are just too subtle for my feeble human senses to notice. Though there’s always the danger that the SOM will find interesting-looking but ultimately meaningless patterns in the data, I guess; kind of like the way humans often read patterns into things that aren’t really there.

I’m quite glad Block 4 of M366 is over with now, because it’s the block I’ve felt least confident with. I think taking a break in the middle for M257 revision was probably a bad idea, and to be honest my understanding of the topics in Block 4 feels a bit shaky and fragmented – still, plenty of time to do TMA04 and then get on with revision for the exam in October!


* I don’t really have anything against Click in particular, I just happened to catch an episode of it while on my internet-deprived holiday, and it seemed like exactly the kind of thing that a technically-impaired manager might get excited about. I’m sure if I’d written this blog post 10 years ago, I would’ve name-checked Tomorrow’s World instead!

M366 is a very strange course. I haven’t really enjoyed reading the course texts themselves, but the assignments are much more interesting. I spent ages fiddling around with the rabbits simulation for TMA02, and I’m finding the neural network experiments in TMA03 even more rewarding. Yes, I’m one of those weirdos who enjoys collecting and analysing data – so compiling the big network performance tables and assessing the accuracy of the perceptrons in Questions 1 & 3 was brilliant fun for me.

At the moment I’m working through Question 4, the one about self-organising maps, but unfortunately I’ve not been able to get my SOM to work properly so far – I’ve no idea why, but JavaNNS just doesn’t respond when I click the “Learn All” button to train the network. I’m probably missing something obvious, so I’ve emailed my tutor to see if he can figure out what’s going wrong – and in the meantime I guess I’m taking a bit of an enforced break. Can’t wait to get back to it, though!

It’s such a weird feeling – in the space of a week, I’ve gone from complaining that M366 feels like a second job (while I was reading through Block 4), to being so eager to get back to my TMA03 experiments that I find myself daydreaming about it during my actual job! I hope this means that I’ll enjoy the exam just as much…

UPDATE: Victory! I’ve finally managed to get my SOM for Question 4 working – reinstalling JavaNNS seems to have done the trick (but I still have no idea what caused the problem in the first place). Now, on to Question 5!

I had a really great study timetable worked out for June and July, which included a nice weekend off (for a little holiday in the Peak District), followed by a week of gentle catching-up to get back on schedule. Unfortunately for me, I came back from my holiday with a nasty cold, and ended up missing an extra week of studying. So for the last three days I’ve been trying desperately to get back up to speed with MS221, which has basically meant studying from breakfast til bedtime, with short breaks for meals. If anyone is wondering whether it’s possible to do a unit of MS221 in 24 hours, I can confirm that it is! Whether it’s possible to do it well is another matter entirely…

Anyway, despite having to rush through it, I’ve enjoyed Block C of MS221 for the most part. I was a bit bored by Taylor polynomials at first, but now that I’ve finished unit C3, I do find them quite satisfying to work with – like the presenter in the associated Algebra Workout program said, it’s a bit like “splitting the atoms” of functions, and getting to look at the building blocks that they’re composed of (or at least, that a good approximation might be composed of).

I’ve just about finished TMA03 now, so this afternoon I’ll be getting back to Block 4 of M366, and then making a start on TMA03 for that course – I’ve heard that it’s a very tough assignment, so I’m really quite worried that I won’t get it finished in time. Still, if the last few days are anything to go by, fear of failure is an excellent motivator when I’m pushed for time!

You’ll notice there isn’t the characteristic exclamation mark on the end of this post’s title – I’m a bit embarrassed of these two assignments, since both got grades quite a bit lower than the previous ones. For M366 I got 84% (just 1% short of a distinction, dammit!), and for MS221 it was 89%. I’m actually more ashamed of the MS221 score, because almost all of the lost marks were due to stupid errors, which I absolutely should have picked up at the proofreading stage. My tutor’s comments were very nice, but I think he must be getting a bit frustrated with the trivial errors I keep making. Basically, his general feedback was:

  • Factorise expressions where possible
  • Check your work (Mathcad is useful for this)
  • Read the question carefully!

All very good advice, which I have been striving to apply today while working on TMA03. I’ve been checking everything, every little calculation, either in Mathcad or Wolfram Alpha – so far, I’ve caught some really stupid slip-ups, so hopefully I’ll be able to manage more than 89% for this assignment!

The M366 assignment got a lower mark, but I’m happier with that one because the lost marks were due to a genuine lack of understanding about various little details of the subject matter, rather than plain old carelessness. Actually, I get the impression that most of my lost marks were caused by me not fully understanding the questions themselves; some of them wanted slightly different or fuller answers than I expected. For example, in the question about the NetLogo rabbits simulation, I lost three out of six marks because I didn’t mention the details of the code behind the features I was talking about – I described the simulation at too high or abstract a level, without backing up what I was saying with a description of the “nuts & bolts” side of things. Which is an odd mistake for a programming student to make! Still, hopefully by the time the exam comes around I’ll be much better at interpreting the questions correctly. And at least there’s no NetLogo coding to mess about with in the exam!