Engineering Research Papers New Systems Development Paradigms IT00187 Author: Dr. G.J. van Niekerk Head of Department: Prof. E.M. Ehlers Semester 2, 2014 This assignment guide is intended to be used in conjunction with the module-specic learner guide. Copyright c University of Johannesburg, South Africa Printed and published by the University of Johannesburg c All rights reserved. Apart from any fair dealing for the purpose of research, criticism or review as permitted under the Copyright Act 98 of 1978, no part of this material may be reproduced, stored in a retrieval system, transmitted or used in any form or be published, redistributed or screened by any means electronic, photocopying, recording or otherwise without the prior written permission of the University of Johannesburg. Introduction The module assignments will consists of two research papers that needs to be prepared during the course of the semester. Each paper will consist of a prac- tical implementation, a written component and a presentation. Both papers are individual assignments and students are not allowed to work together or use code from the Internet, another student or any third-party source. Libraries and frameworks for basic application plumbing (i.e. test frameworks, GUIs, graphics, etc.) is preferred over rewriting the functionality. Students are also encouraged to seek out forums and discussion boards on the Internet and to discuss strategies with one another. Students are encouraged to discuss the problem with the lecturer. Email correspondence is recommended to allow for the quickest possible response, record keeping and to maintain the sequential ow in the discussion. The written component constitutes a signicant portion of the assignment. The paper should discuss the various strategies considered, the performance of the algorithm(s) over an extended period of time as well as information on any existing techniques that solves the particular problem. The paper should also discuss the eect of using dierent sets of parameters (i.e. mutation/crossover rate, population size and tness function weightings). Aids such as diagrams, tables and graphs are highly recommended. The writing style of the written component needs to adhere to a formal, aca- demic style. This guide (as well as the Learner Guide) serves as a good example of this style of writing. First Paper: Evolutionary Computation Students can choose any problem of adequate complexity and then use one or more of the techniques that falls under the domain of evolutionary computation (Genetic Algorithms, Genetic Programming, Evolutionary Programming, Dif- ferential Evolution, Cultural Algorithms or Co-evolution) to solve the selected problem. A combination of techniques can also be used. Students can also choose to focus more on the algorithm itself and develop new and novel techniques, comparing them to existing techniques. For such problems, smaller academic problems can be used as case studies. The focus here will be on comparison with existing techniques and a good base/control will be required. Due Date The due date for this paper is 26 August 2014. 1 Topics Following, are some examples of problems that students can consider 1 : Articial Life Simulation: Critters move about in a virtual world and will need to evolve certain characteristics to survive. For example, blue critters eat plants, red critters eat blue critters and every red critter that dies sprouts several blue plants. Students can dene their own rules for the virtual world to discover the dierent strategies that the critters will evolve. Evolving digital circuitry: Given a complex Boolean equation, the al- gorithm will evolve a circuit consisting of digital gates (not/and/or/nor and nand gates) that satises all inputs of the equation (n inputs; m out- puts). A number of elements makes this problem rather dicult. A small change to the circuit could have a big eect on the output, making the tness function dicult to dene. A novel approach needs to be applied to solve this eectively. Graph colouring/Frequency Allocation Planning: In cellphone net- works, adjacent cells cannot share the same frequency. Using evolutionary techniques, frequencies can be assigned to each cell to keep similar carriers as far away from one another as possible. Iterated Prisoners Dilemma: Evolve strategies between prisoners to nd the best strategy, considering techniques such as fear, greed, revenge and altruistic behaviour. The behaviour of the prisoner could be modeled as a articial neural network or as a set of rules combined with a prob- abilistic component. Both the best score of an individual and the entire population should be considered to gage the success of the technique. Evolving music/art: Using interactive (or partly-interactive) evolution, develop an algorithm that can evolve a simple piece of music or some other artistic work. Second Paper As with the rst paper, the student must choose any problem and then solve it using any of the techniques that fall under the eld of Swarming and Ant Algorithms. A combination of techniques are also possible. 1 Choosing one of these example problems will neither benet nor disadvantage a student in any way 2 Due Date The due date for this article is 14 October 2014. Topics Following, are some examples of problems that students can consider: Knapsack Problem: A number of variants to the classical knapsack problem have been dened and Swarming Algorithms are well suited to solve the problem, provided that the parameters are well chosen. Dynamic Trac Routing: Trac routing on telecommunication, com- puter and transport networks are often very dynamic, with good routes becoming congested quickly and previously expensive routes becoming good candidates. Using a swarming technique, favourable routes can be determined quickly in these dynamic environments. Clustering: Grouping similar concepts with similar traits together is an important, yet hard problem to solve. Some examples include: identifying groups of houses according to their house type, value and geographical location; classication of plants and animals given their features; nd- ing groups of customers with similar behaviour given a large database of customer data containing their properties and past buying records. Optimal Racing Lines: Race-cars needs to choose optimal lines around corners to minimise lap times. Given a track, nd the optimal lines a car needs to follow. A simplistic physics model needs to be developed here as well. Assignment Layout Each assignment consists of an actual implementation (i.e. the model), a write up (the paper) as well a presentation: Programming Component The programming component makes up 40% of the assignment mark. The programming component of the paper will have to be demonstrated practi- cally and the student must be able to answer questions about the solution that is presented. Any 3 rd generation language may be used. Languages such as Java, Scala, C, C++ and C# are recommended. Students are encouraged to avoid scripting and other basic languages. 3 Students should supply their own test cases to demonstrate the algorithm during the presentation. Poorly selected test cases (such as trivial problems, i.e. 5-city TSP) will obviously impact the mark negatively. Written Component The paper makes up 50% of the assignment mark. A research paper needs to be prepared that explains all aspects of the prob- lem and the algorithm and should be a minimum of 10 pages and a maximum of 15. Each paper should reference at least 5 sources (of which at least three should be actual articles, books or journals) Students will be penalised for de- viations. All papers need to follow the template as provided in both Microsoft Word and L A T E X format. These can be downloaded from Eve. Presentation The presentation (including slides, aids, questions answered, etc) makes up 10% of the assignment mark. Both articles will have to be presented in the form of a mock conference to fellow students. The format of these presentations will mimic that of a research confer- ence or symposium. Each student will be allocated 15 minutes 2 for presentation and 5 minutes for questions. It is important that students attend these sessions as the work presented is fully examinable and case studies in the semester test and nal exam will be drawn from the work done by students. Submission Each student will also need to prepare the following: A hard-copy 3 must be made available to each student and lecturer. A soft-copy submitted to Eve. These will also be made available to stu- dents for studying purposes. For nal submission, all soft copies needs to be in PDF. Microsoft Word or any other propriety format will be rejected outright. 2 The actual time will vary depending on time available and the size of the class. 3 Hard-copies needs to be properly bounded. Unbounded loose pieces of paper do not constitute a research paper. 4 Please upload only one single document/artefact if you have multiple parts of a document, merge them together into an archive (please use zip or gzip for this purpose). Kindly use the following naming convention: SURNAME_INITIALS_STUDENTNUMBER_D<DELIVERABLE> For example, Timothy John Berners-Lee with student number 20080001 will name his rst paper Berners-Lee_TJ_20080001_D01.pdf and his second Berners-Lee_TJ_20080001_D02.pdf. Mark allocation The mark allocation for both assignments is as follows: Paper 50% Content 40% Grammar, spelling and layout 10% Implementation (the model) 5 40% Complexity, originality and novelty 15% Correct paradigm for selected problem 10% Implementation 10% Code niceness 5% Presentation 10% Content of presentation, adherence to time 5% Questions answered 5% Total 100% Each assignment will count 25% towards the semester mark and therefore 50% overall. Kindly note that failure to submit assignments will disadvantage a student considerably and he/she will most probably not receive exam admittance. Also, please discuss any diculties you are having well in advance to avoid disappointment. 5 A student will only be awarded the marks for the practical component if he/she can answer questions about the implementation satisfactory. 5