Part 2. Problems:
(Note: Please include any external materials other than the textbook. Use the APA format where appropriate.)
2.1 Genetic Algorithm
The following algorithm is used to implement crossover in a genetic algorithm:
Input: Two strings of n bits x and y
Output: Two strings of n bits x' and y'
The crossover operator is applied as follows:
A crossover site is selected at random (with equal probability) that divides each string into two sub-strings of non-zero length. That is x = [x1 x2] y = [y1 y2], with length of x1 = length of y1.
The outputs are generated as x' = [x1 y2] and y' = [y1 x2]
Given that you start with (x1, y1) = ((0 1 0 1 1) (1 1 1 1 1)), specify which 5-bit strings are possible values obtained through crossover alone. Justify your answer.
2.2 Genetic Algorithm
A genetic algorithm uses the following mutation operator: the bits in the input string are considered one by one independently, with probability 0.05 that each bit is inverted. Given that you apply the mutate operator to the string (1 1 1 1), what is the probability that the output is: (0 0 0 0)? (0 1 0 0)? (1 0 1 0)? (1 1 1 1)? Show the process of your computation.
2.3 Neural Network [50 points]
The data set in the file “data.txt” contains 300 observations for 4 input variables (Temp, Pres, Flow, and Process) and an output variable (Rejects). The first column “No.” is simply an identifier. The table below reproduces the first 4 observations:
No. Temp Pres Flow Process Rejects
1 53.39 10.52 4.82 0 1.88
2 46.23 15.13 5.31 0 2.13
3 42.85 18.79 3.59 0 2.66
4 53.09 18.33 3.67 0 2.03
Train a back-propagation neural network on approximately 80% of the observations, randomly selected. Test the trained network using the remaining 20% observations.
Please write a detailed report that includes the following.
1) A detailed discussion how you set up the key parameters of the tool and performed the experiments.
2) Answer: Will different parameters yield the same solutions based on your experiments? Please justify your choice on these parameters.
(i) A figure that plots the actual and predicted values of the output “Rejects” for the training and test data sets.
(ii) Sum of squared errors for the training and test data sets.
Note: The easiest way to solve this problem is to use a Neural Network tool. However if you wish to implement your own neural networks, that is also fine.
Part 3. Practical Assignment: Genetic Algorithm [20 points]
This practical assignment is intended for you to get familiar with some of the up-to-date AI tools. Please download a genetic algorithm (GA) tool (either a freeware or a trail version of a commercial product) from the Internet and run it on your computer.
1) Follow the instructions to configure and run the tool you chose. You are also required to go through an example (or a case study) to show that the tool really works.
2) Write a brief report. In your report, answer the following questions in your own words (please do not copy/paste from a tutorial or other online materials).
Page 3 of 3
a) Where and when did you download the tool?
b) What kind of real-world problems can be solved using the tool?
c) What is the actual running environment (software and hardware) of the tool?
d) How will you evaluate the tool based on your own experience? Do you need to tune the parameters in order to solve the example problem? If so, how? If not, explain in detail.
e) In what aspects could the tool be improved?
3) Take a screenshot (usually by pressing Shift + PrintScreen) during the running of the tool and paste it in your lab report. In your lab report you can provide as many screenshots as you want and/or other output to show you have actually run the tool.