COEN 6321 ~ Early Final ~ Name & ID Section 1: Fill the Gap (24 marks) Q01. In order for an algorithm to be called ‘evolutionary’, it must – at a minimum – have two elements: _______________ and ________________. Q02. It is critical that the fitness function of an Evolutionary Algorithm (EA) faithfully reflects the _______________ the designer of the EA wishes to optimize. Q03. The mechanism that passes individuals of high fitness from the current generation to the next generation without modification is called ________________. Q04. Within Evolutionary Strategies, the variation operators act on the ___________________ of an individual. Q05. Fitness proportional selection assigns individuals a probability of selection proportional to their ________________. Q06. If uniform crossover is applied to two parents, each made of an array of real numbers (stored as doubles), then any resulting offspring will not be ____________________ of both parents. Q07. If the form of solution to a problem is the list [element1, element2, element3, element4], where each of the elements must be taken, without replacement, from the set {patternA, patternB, patternC, patternD} then some special variation operators, such as the ___________________ mutation would be appropriate operators (to consider). Q08. In Evolutionary Strategies, the 1/5 success rule entails that the more successful the current mutation step is (in generating offspring fitter than their parents) the more it (= mutation step) should _______________ in size. Q09. In Evolutionary Strategies, uncorrelated mutation with multiple step sizes allows one to generate offspring within a ____________________ volume around the mutated parent. Q10. In Genetic Programming, an individual is an expression that can be encoded as a tree. The tree has internal nodes that are made of _________________ and terminals that are made of operands. Q11. In contrast to Genetic Algorithms, Genetic Programming runs crossover ____________________ with mutation. Q12. There are three fundamentally different approaches to Parameter Control: making a parameter a function of time (or equivalent, such as number of generations), making a parameter a function of a ________________ of the population or placing that parameter under genetic control (hence, tuning it via evolution). Section 2: Answer & justify (24 marks) Q11. It is _________________ to collapse all factors of a multi-objective optimization task into one fitness function (using, for example, a weighted linear combination of factors), because: Q12. Increasing selection pressure within any evolutionary algorithm can be done by introducing elitism into the selection procedure, and that ____________________ the likelihood that the population will prematurely converge to a non-globally optimum solution, because: Q13. If you wanted to ensure that the whole volume of a solution space is accessible to evolutionary search, you would design the representation of an individual very carefully as well as ________________________, because the latter: Q14. In Genetic Programming, unconditional crossover between two tree-based expressions is generally discouraged: true/false __________________, and why? Q15. One way to increase the diversity of a population is mutation and another is _________________, where the latter enhances diversity because: Q16. At the start of evolution, the main concern of the EA designer should be exploration, while towards the end, it is exploitation (i.e., old-fashioned optimization). Which type of operator (crossover or mutation) would you use at the end of evolution to finely tune highly fit individuals? ________________; why? Section 3: Design an EA (24 marks) Q17. In one page, but clearly and precisely, present an outline (in data structure & algorithmic terms) of the various elements of an EA solution to the following problem. Pay special care to Representation and its manipulators (Crossover(s) & Mutation(s)) as well as Fitness Evaluation, but neglect nothing, including the two levels of selection (which are applied to fitness). Your first concern should be understanding the problem and the attributes of an ideal solution (= Fitness), so you can develop a satisfactory solution ‘model’ (= Representation): Variation operators and the rest follow. If someone presented you with a page of numbers (e.g., 0591656156654656566156161735165615..) and asked you to evolve a ‘predictor’ which would use a sliding window of limited size (you decide), which would go over part of the sequence, then successfully predict the following digit or digits (you decide) in the sequence, what would you do? Naturally, the smaller the size of the window, the faster the predictor and the more accurate the predictions, the better your ‘predictor’ is considered. You can evolve your predictor using that page, but its real validation will be when it is applied to another page of similar numbers (similar, in that they are generated using the same process, unknown to you).