Introduction
This external is in the form of classwork submitted for external marking, completed over a few weeks at the beginning of Terms 1, 2 and 3. You have to show that you understand 2 areas of computer science selected from the following list:
- formal languages
- network communication protocols
- complexity and tractability
- intelligent systems
- software engineering
- graphics and visual computing
I recommend very strongly that the first area that everyone studies is Intelligent systems (Artificial Intelligence). The second area of study can be chosen by yourself, with the the aid of your teacher.
Assessment
You have to produce a report ( written during class and at home) that shows you have a good understanding of two of the areas listed above. Your report is not a research report, but a personal study that must include descriptions and discussions of things you have done or experienced. It must be personal to you.
Hints for writing a good report
- Use the word “I” a lot. This will ensure you personalise the report to yourself
- If you quote or paraphrase external sources of information, they must be referenced. The best way of doing this is to use the research tool in google docs. If you do not reference work that is obviously not your own, the exam marker will not mark that section of work!
- Check your spelling, punctuation and grammar. It is fine to get someone else to ensure if they can understand your work, but any corrections must be your own.
- Where appropriate, use images that help the reader to understand what you are writing about, but make sure you explain what the image is showing.
The maximum allowed length of the report is 10 pages total of Arial 12 point equivalent font - i.e. 5 pages per area of computer science.
To demonstrate understanding of areas of computer science at the Achieved level you will need to:
· describe key problems that are addressed in selected areas of computer science
· describe examples of practical applications of selected areas to demonstrate the use of key algorithms and/or techniques from these areas.
To demonstrate in-depth understanding of areas of computer science at the Merit level you will need to:
· explain how key algorithms or techniques are applied in selected areas
· explain examples of practical applications of selected areas to demonstrate the use of key algorithms and/or techniques from these areas.
To demonstrate comprehensive understanding of areas of computer science at the Excellence level you will need to:
· discuss examples of practical applications of selected areas to demonstrate the use of key algorithms and/or techniques from these areas
· evaluate the effectiveness of algorithms, techniques, or applications from selected areas.
For this topic you are going to research and experiment chatterbots and carry out a Turing Test.
- Read the following introduction to Artificial intelligence. http://www.csfieldguide.org.nz/en/chapters/artificial-intelligence.html
- Search on youtube for a few discussions of what intelligence is. You will need to be able to describe what intelligence is for the external.
- Research what artificial intelligence is and why it is an important problem or topic of interest for computer science. You need to be able to explain what you have learned. Some useful sources of information, in addition to the CS Guide are:
- https://www.youtube.com/watch?v=_8_58_TkCuw
- https://www.youtube.com/watch?v=MaItaCQcYIE
- http://www.theguardian.com/technology/2015/feb/09/artificial-intelligence-can-scientists-stop-negative-outcomes
- http://www.alanturing.net/turing_archive/pages/reference%20articles/what%20is%20ai.html
- http://www.newsweek.com/case-against-artificial-intelligence-305038
- Some additional reading for the very enthusiastic - http://www.oxfordmartin.ox.ac.uk/downloads/academic/The_Future_of_Employment.pdf this lists the probability of various occupations being computerised. The table at the end has a list of occupations and a p-value. They are ranked from 1 - 700 with 1 being least likely to be computerisable and 700 the most likely. The p value works as follows 0.9 - 90% probability, 0.5 = 50%, 0.2 = 20% etc.
- Research what the Turing Test is. This time ‘follow your nose’ and find your own sources of information.
- Make a new google document (shared with tstorr@netnz.school.nz) give it the title 91636 External and write your name and NSN number at the top (before sending off you will remove your name)
- You are now ready to write the first part of your report, the introduction. Subtitle is ‘Artificial Intelligence’ and ‘Heading 1” is Introduction (Hint use the drop-down menu in the google docs tool bar - change it from ‘normal’ to ‘Section’ etc.).
- Write the following Paragraphs( The total length for this section needs to be about 1 1/2 side):
- Explain what intelligence is
- Explain what artificial intelligence is
- Explain why artificial intelligence is an interesting problem in computer science This means why is artificial intelligence important - what things could be solved by it - what problems could be caused by it - why would it be interesting to create AI - why is it difficult to create AI? You need to give some examples in this section. THIS SECTION IS CRITICAL - GRADE N WITHOUT IT - I SUGGEST AT LEAST 1/2 - 3/4 side on this.
- Explain what the Turing test is
- The main part of the Artificial Intelligence ‘project’ is where you investigate, experiment and report on your own Turing Test with one or more chatterbots. The exact details of how to do this are in the CS Field Guide - but the basic scenario is one where you have a conversation with both a human being and a chatterbot. This experiment has to be designed so that it is a fair test (i.e. at the time of the experiment you don’t know if you are talking to a human or a computer). Here is a document describing the process more fully - please read it all and then carry out the experiment and write-up. The total length of this section (the whole of artificial intelligence) should be no more than 5 sides. It is essential that the type of questions you ask the person and chatterbot are able to discern the two. Closed questions will probably not be as good as open questions.
- You will need to work in pairs or more for the activity. To help you get to know one another a little, you must work with someone from another school. A spreadsheet for you to write down your pairs/groups has been shared with you, but can also be found here.
- The complete work on artificial intelligence will take a further 2 weeks.
The second area of study has to be chosen from one of:
- formal languages
- network communication protocols
- complexity and tractability
- intelligent systems - you should have done this already!
- software engineering
- graphics and visual computing (split into 2 topics on the site below)
Choosing your topic
Go to the Computer Science Field Guide http://www.csfieldguide.org.nz/index.html and find the topics listed above. Have a read through the introduction to each topic. You are free to choose any of the above topics. However, my experience with this standard, plus the advantage of having Datacom available to help us with this course means that the software engineering topic is highly suitable. I recommend that you choose this topic. If you wish to do a topic other than this one, please let me know asap.
- For everyone - read Software Engineering http://www.csfieldguide.org.nz/en/chapters/software-engineering.html from start to end.
- Read the Introductions for the other topics (not essential if you take my advice)
- Choose which topic you wish to do
- I will make a spreadsheet for your topic choices - link will be here! HERE!
- Once you have chosen your topic, read the “projects” within the topic - you will have to do at least one of the projects.
- Your Project - Once you have decided… I will outline the procedure for the software engineering project below. If you are doing a different project then you will need to read the CS Fieldguide chapter carefully, and then decide upon your actual project. I will then need to check that you are sure about what you are going to do. Please ask me any questions you have asap rather than later.
Software Engineering
- Read the section on software engineering again (yes again -you need to know this really well), in particular read the following 2 sections really carefully: software processes and agile software devleopment. You are going to choose one of these areas on which to do your second external project.
- If you are doing software processes:
- You have a choice of 3 projects:
- PROJECT: FUN WITH THE WATERFALL PROCESS
- PROJECT: A NAVIGATION LANGUAGE
- PROJECT: BLOCK BUILDING (PRECISE COMMUNICATION)
- Read through each project and decide which you will do. I have personal experience of 16.5.1 - it’s quite fun.
- Now go on to the general criteria below
- If you are doing agile software development:
- you only have one possible project: PROJECT: SOFTWARE PROCESSES
- Read the instructions for the project carefully.
- Carry out the project.
- Protocol for communicating with a Datacom Developer:
- First of all write down the questions you are going to ask in a google document. Share this document with IanH@datacom.co.nz and myself tstorr@netnz.school.nz
- At the top of the document write your name, email address and which school you are at.
- Write a small paragraph that introduces yourself - that you are studying Dig Tech etc and this interview is for a project. Also mention that any information here will remain confidential and will only be used for the purpose of the project.
- Developers are busy people - arranging an interview with them will mean you will have to be flexible. Make a list of possible days /times you will be available. Any time between 8am and ending at 5pm will be acceptable. As you will be doing the interview by Google Hangout, it will be fine to do it from home at say 4pm. Estimate how long the interview will take. It would be reasonable for it to take 20 -30 minutes. You may decide to follow-up any questions or clarify items by email.
- Share the document with IanH@datacom.co.nz and tstorr@netnz.school.nz
- Ian will arrange for a Datacom developer to contact you by email.
- You should arrange to do the interview by either Google hangout or Skype
- If you have any problems please let Ian or I know
General criteria (VERY IMPORTANT).
Your write ups need to cover a few things:
- An explanation of the key problem (about ⅓ - ½ side)
- A description of the technique or algorithm being investigated and why this is important (about ⅓ - ½ side)
- What you did - this is to personalise your work (about 2 sides)
- An evaluation including an in-depth discussion (about 2 sides)
- A reminder - use references
- The total length limit for the whole external is 10 pages of A4 - this includes the 5 sides for the artificial intelligence project above.
The grades for your projects are based upon the following - describing - saying what happens -A; explaining - descriptions with extensive sections saying how and why - M; discussing and evaluating - what are the advantages and disadvantages - how could improvements be made - a really in-depth piece of work - E. Your write-up should relate what you did back to the key problem