Coursework or Assessment Specification
Section 1: Overview of Assessment
This assignment assesses the following module learning outcomes:
Design and implement intelligent solutions using at least two different architectures.
Design and implement a range of different search methods.
The assignment is worth 25% of the overall mark for the module.
The assignment is described in more detail in section 2.
This is an individual assignment.
Working on this assignment will help you to:
Understand how a search-based framework can be used to solve different problems;
Gain experience of the practical issues around creating machine learning systems;
Demonstrate that you can implement a simple Machine Learning algorithm.
If you have questions about this assignment, please post them to the discussion board Search and Machine Learning Coursework Discussion Forum on Blackboard.
Section 2: Task Specification
In the lectures you will have been introduced to various paradigms for representing models. In the tutorials you will have been introduced to an example C code framework for creating search-based solutions to problems.
The task is to use that framework to create a Machine Learning algorithm that can learn predictive Rule-Based models, using a greedy hill-climbing approach.
The system will present your code using a number of datasets. Each has 150 examples, split 100:50 between a ‘training set’ and ‘test’ set. Each example contains integer values for 6 features, and a single integer giving the class label between 0 and 5. Your code should:
implement a train() function that ‘learn’ a set of rules from the training set. Some of the marks will be for implementing the right learning algorithm. For simplicity, your code should not generate solutions with more than 5 rules.
implement a predictLabel() function that provide a predictions for a new case. Some of the marks will be for the effectiveness of your solution, i.e., its accuracy.
The code framework, supporting videos, and html documentation of the provided code-base will be provided in the “Assignments->Second Coursework” folder on Blackboard.
The deliverable consists of a single file of C source code called TrainAndTest.c that implements at least two functions, one called train() and another called predictLabel().
The exact syntax to be implemented will be supplied in the online documentation.
The submitted files must make use of the supporting code-base, and produce results in the required format, otherwise they will lose marks.
All submissions will be screened for security reasons – for example making “system()” calls or excessive memory use in C code will not be permitted.
All code should be prepared using an platform-independent standard e.g. ANSI standard C rather than proprietary.
This coursework is being marked by an automated system. You will be allowed six submission attempts and the highest mark will be taken.
Your code will be compiled and tested automatically on four data sets with different characteristics. At least one of these will be different for every student. The total mark awarded for a submission will be the average of the marks on the three datasets
The datasets have been designed to have different ‘target’ accuracies. The marks for the effectiveness of your Machine Learning system will depend on how close you get to that target.
The version of the supporting code framework used in the marking system will be instrumented to provide outputs about how it is being used. This will be used to mark your implementation of the search algorithm. To emphasize the concept of search as a generic process, marks will be deducted for failure to use the framework.
The two marking criteria are each worth up to 50 marks (so 100 marks in total), as follows:
Criteria |
How Tested |
0 |
10 marks |
25 |
40 |
50 |
Design and implement an effective rule-based architecture for learning predictive models from training sets |
Solution will compute the difference D between the target and measured accuracy (in %) on test set. |
Solution predicts class label not present in training data
OR Solution fails to compile,
OR Solution fails to complete within given time limit on system |
10 < D |
5 < D <= 10 |
2.5 < D <=5 |
D <= 2.5 |
Implement the specified search based algorithm for Machine Learning within the chosen architecture. |
Marking system will automatically detect calls to functions provided within code framework. |
System does not implement specified search algorithm or model paradigm. For example, implements different algorithm such as kNN. |
System appears to generate rule-based classifier but makes no use of framework |
Solution appears to work correctly but only makes partial use of framework. |
Algorithm correctly implemented making full use of the supporting framework. Solution generates and tests successively more complex rulesets. Solution stops correctly. |
DescriptionIn this final assignment, the students will demonstrate their ability to apply two ma
Path finding involves finding a path from A to B. Typically we want the path to have certain properties,such as being the shortest or to avoid going t
Develop a program to emulate a purchase transaction at a retail store. Thisprogram will have two classes, a LineItem class and a Transaction class. Th
1 Project 1 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of
1 Project 2 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of