FAQ For Assessment 1

Q: In question 1, do I need to add a modified code to my report, or make a list of bugs and how to fix them?

A: Both would be ideal I think.

Q: In Q1, we are supposed to correct bugs in as few alterations as possible and I imagine you are mostly concerned with testing our knowledge of basic python syntax and functions. However, I have found a neater way of doing the same thing- my method is shorter, but I am worried I might lose marks if I insert my own solution, as it will show no bug fixes, just 2 lines of my own code.

A: The question says “in the smallest number of edits possible”, so I would focus on editing the existing code rather than doing a complete re-write. If you just gave your alternate code then you would get a low mark, since it’s not doing what is asked by the question – you *could* add it as bonus addition (it does sound quite neat), but I am encouraging people to be concise in their answers, so in that spirit I would encourage you to stick to the question as it is asked, and just debug the existing code.

Q: In question 3, is it necessary to simulate and make a plot of accuracy of the agents, or is it enough to calculate accuracy by hand?

A: As long as you answer the question, either or both of those methods would be acceptable.

Q: For question 3, is it sufficient to just present a single number as an answer or should I include anything else, like the way I reached it?

A: If your answer is correct, you don’t really need to show your working; if your answer is wrong, but you show your working and we can see you have made a minor mistake, you could still get partial credit; if your answer is wrong and there is no working shown then we basically have to give you a 0. So I would suggest indicating how you worked it out (assuming you can do it reasonably concisely).

Q: There is a slight ambiguity in Question 5 in the assessment, so just to be on the safe side I’d like to check that you mean that the different meanings (already in the system) are not equally likely to occur and NOT that new meanings can get added  to the system, right? This seems more likely, but the phrasing can kind of be read either way.

A: Yes, the first of these is the correct interpretation.

Q: Are the questions weighted differently with respect to marks? It seems obvious which of the wordier questions would be worth more because a longer answer is expected, but it’s difficult to judge on the coding questions.

A: I am actually going to withhold a decision on exactly how to weight them until I see how hard people found them and what the distribution of answers is like, but my plan prior to seeing any data is that question 8 will be double-weighted, and all the rest will be equally weighted.

Q: If we want to put diagrams into answers to exemplify points, can they be the diagrams that are in the original papers, or do we have to make our own?

A: It depends – if you can run the simulation yourself (e.g. to exemplify what a constructor does) then it’s definitely more impressive to do that than copy-and-paste a diagram from a paper; however, if it’s something you couldn’t run yourself (e.g. Oliphant’s spatial organisation results or something) then it would be acceptable to copy and paste (with correct referencing of course).

Q: I have a question regarding question 1 of assignment 1. Should the python program give the exact average of the non_zero list, I mean, with decimals? Or the integer part of the average is fine, which is the python default when working with divisions.

A: It should give the actual average, including cases where this is a decimal. If you hunt about through the lab code and worksheets you will see how to achieve this!

Q: I am twondering what ‘different frequencies’ means. Does it mean ‘non-equally-distributed probability’? Is there any specification about how different?

A: Yes, non-uniform, so the meanings are not all equally likely to be selected. You can choose any kind of non-uniformity you like!

Q: For the question 3, can I assume a sender of the agents randomly choose a meaning to send? For example, if A is a sender, does he pick up a meaning to send (m1, m2 or m3) equally likely?

A: Yes.

Q: In question 4, do we need to simulate communication in spatial organisation?

A: No.

Q: In question 5, what kind of frequencies is meant in the phrase, “in the environment with different frequencies”? Does it mean the frequencies of meanings used in a population?

A: Yes. So in the signalling2.py model all meanings are equally likely to be selected as the meaning the speaker has to convey – change it so there is some kind of non-uniformity, you decide what exactly!

Q: In question 6, “gradual change” means that mutation should be happened in every fixed generation rather than with a probability. Is my interpretation correct?

A: No. In the standard model any weight can change to any other weight – for instance, a 0 could change to a 10 through a single mutation. You should make the changes made by mutation gradual somehow – maybe numbers can only change by a small amount, or are more likely to change by a small amount.