Techpaper


Title Page

1a: Technical Paper (html)
1b: Technical Paper (LaTeX)
1c: Technical Paper (pdf)
2: References
3: Sample Runs
4a: CA Code
4b: GA Code
5: Technical Paper Reading
6: Project Description
7: Oral Report
8a: Daily Logs
8b: Bi-Weekly Goals
8c: Final Iteration Progress Report (#6)
9: Scientific Method
10: Tutorial
11: Next Year














































oogleebooglee

Techpaper


% Example LaTeX Document % Preamble: Sets up General Parameters which are Global \documentclass[12pt]{article} \usepackage{doublespace,fullpage} \usepackage{epsfig} \usepackage{wrapfig} % Body: Main Document \begin{document} \title{Solving the Majority Classification Problem} \author{Austin Rachlin} \date{April 2003} \maketitle \newpage \begin{abstract} This document presents my project proposal for my senior techlab computer systems project. I am attempting to create an algorithm that will solve the Majority Classification Problem in an efficient and successful manner. \end{abstract} \section{Proposal} I am currently working with cellular automata and evolutionary computations to solve the {\bf Majority Classification Problem}. I hope to beat the existing record of about .85 completion in the MCP. I am working with test arrays that are of length 145. The rules are based off of a 7-neighbor system and therefore need to be at least of length 128 (there are 128 possible combinations of 7 binary cells). However, I also added an extra cell where the value (success rate) of the rule is stored. \subsection{Majority Classification Problem} {\bf Majority Classification Problem:} The Majority Classification Problem deals with a test array with binary cells that are randomly turned either on or off at the beginning of the program. The test array has an odd number of cells so that a majority of the cells are either turned on or off. A rule array is created that defines how each cell of the test array should evolve in each step of the cellular automata. The purpose of the rule array is to turn the entire test array either on or off, whichever is the majority in the original test array. The goal of this problem is to create an algorithm that will produce an array that will turn a high percentage of test arrays toward their majorities. \section{Components Necessary} The two main components of my project are a cellular automata system and a genetic algorithm. The cellular automata system will drive the program and the genetic algorithm will be modified to produce the best result. I do not yet know what kind of genetic algorithm I will use. I will most likely have to do a lot of testing and trial-and-error to figure out which variable values work the best. My program will also require a graphical output program to display the output of the algorithms in a neat fashion. \newpage \section{BODY} \subsection{Introduction} I am a senior at Thomas Jefferson High School of Science and Technology in Alexandria, VA. I am working in the computer systems lab to complete my senior tech project. I have chosen to use the Java programming language to approach the Majority Classification Problem. \subsection{Background} This program is based on genetic algorithms and cellular automata. A genetic algorithm is a system of breeding rules towards the ideal and final state that will solve the problem. Cellular automata systems define interactions among cells of arrays and govern how they will change by affecting each other from one generation to the next. \subsection{Tools} I am programming the algorithms using the Java programming language. The graphical output will most likely be done in OpenGL. \subsection{Procedure (tutorial)} I conducted a project that primarily involved genetic algorithms and cellular automata. Of course, the first step to doing a project in computer science is knowing a computer language in which to do the project. I recommend either C++ or Java (I used Javva for this project). There are many online tutorials for learning either of these languages, but I recommend finding a good book. Before beginning the project, it is useful to familiarize yourself with GAs and CAs. Learn the basic concepts (TJ's AI class taught me about GAs, and I learned about CAs from Professors DeJong and Luke at GMU over the summer). Write a few basic GAs and CAs to understand the basic concepts and also how to solve errors in the programming. Next, it is time to begin the project. I recommend beggining with the CA. Lay out the entire program with the necessary functions. After writing the function headers that you will need, add parameters to the function headers. Run the program and make sure it works! After the CA, it is time to begin the GA. Write a basic GA at first and make sure it is compatible with the CA. Then, add complexities one at a time, always checking the functionality. Once the GA and CA are complete, it is time to write a graphical output to display your algorithm. I recommend OpenGL for this. Now, you're done!!! \subsection{Cellular Automata Background} A cellular automata is an algorithm that defines and controls the development of a system over time. There are countless forms of cellular automata systems. For example, they can range from 1D to 4D, or small scale to epic. The rule arrays can be simple or complex. Development can be based off of one neighbor, 99 or more neighbors, or no neighbors at all. The purpose of cellular automatas is to create a system, define the rules for development, and observe any trends or patterns that result. \subsection{My Cellular Automata} The cellular automata that I programmed uses 149 cells and a 7-neighbor system. A function is needed to create the array that will be the cellular automata. A random number generator should be used on each cell to define it as "on" or "off." For each test array, there should be an extra cell added which is defined as the majority cell of the entire array. Next, the 100 test arrays will have to be created, each one 100 cells long. The same random number function can be used to define every cell of the test arrays as either "on" or "off." Another function will be needed to define what these cells mean. The evaluate function should take the accepted portion (7 cells surrounding and including the selected one) and convert it to binary. The binary number will match up to one of the cells on the CA. If the CA cell is off, the test cell becomes off. If the CA cell is on, the test cell becomes on. This process should be applied 1000 times to each test array. A function should be run at every step of the process to check the test array and see if all the cells are in the same mode ("on" or "off"). At the end of the 1000 steps, or when all the cells in the array are either "on" or "off," the process should be stopped. If 1000 steps were reached and the array did not accomplish and absolute state, then that run failed. Also, if the array is in an absolute state that differs from the original majority (compare to the extra cell added for this purpose), then the run fails. However, if the array is in an absolute stat that is the same as the original majority, then the run is a succss. Another cell should be added to the rule array that will record the success rate of the rule. This cell should be incremented by 1 if the run was a success, and it should not be changed at all if the run failed. The cellular automata algorithm should apply this process for every rule array on every test array. From there, the genetic algorithm should be called, which will return modified rule arrays, and the cellular automata should begin anew with these changed rule arrays. \subsection{Genetic Algorithm Background} Genetic algorithms are derived, as would be expected, from genetics. Genetic algorithms are an AI-based concept designed to evolve systems towards the desired end. There are countless methods of defining reproduction of genes to pass on to the next generation. Many of these methods relate to real genetic processes. Every algorithm uses a specific set of factors to suit the problem at hand. The hope is that each generation will provide subjects that offer better solutions to the attempted problem. \subsection{My Genetic Algorithm} The Genetic Algorithm is based off of Roulette random choosing, with two-point crossover, one-point crossover, and one-to-one options for breeding. Mutation and elitism are also available. To do this, create a function that accepts the arrays defined in the cellular automata. The user is given a choice every rnu by means of text output/input when the genetic algorithm is begun. First, you define the reproduction method for the subjects. There are many considerations in the reproductive method. Ideally, you want to develop the subjects towards a better end. Therefore, you need to evaluate the subjects on a fitness level and set their probability for reproduction based on their fitness level. To evaluate the fitness of arrays in this particular problem, simply evaluate the last cell, which should have been defined in the cellular automata as the fitness of the array. A common means of selecting which subjects will reproduce is to set up a figurative roulette wheel, with a proportion of the wheel assigned to each subject based upon their fitness level. Have a function that turns each fitness level into a percentage of the entire fitness sum of every subject. Then, random numbers are generated in a seperate function (0-100) and the subjects whose portions of the wheel the numbers relate to are selected to reproduce. Breeding can be done in many ways. For breeding of two subjects together, you can divide the "chromosomes" at one point and take half of each and splice them together. Use a random number generator to select a point at random in the arrays and insert the first half of the first array into a new array, and the second half of the second array into the new array. Also, it is common to divide the chromosomes at two points and splice the genes together. This works by generating two random numbers, accepting the first and last third (as defined by the random numbers) from the first array and the middle third from the second array. The genes can be alternated at every point, or they can be randomly selected from one of the two at every point. Alternation is implented fairly easily, but it is not too practical in developing better arrays. To randomly select one at each point (more similar to real genetics), simply have a binary random number generator that will govern from which array each cell will be taken and inserted into the new array. There are also many extra features that are often included in a genetic algorithm. For instance, mutation is fairly common. In every offspring, add a small but significant chance that genes will be randomly altered. Another feature that can be used is elitism. Elitism ensures that the most fit subject in each generation survives into the subsequent generation. Simply pass the entirety of the most fit array (found through a simple search of fitness levels) to a child array. However, my genetic algorithm is not currently compatiblen with my cellular automata. There is a problem somewhere that is nearly impossible for me to debug. This will therefore cause problems in my analysis and conclusions. \subsection{Results} The rule arrays have a diversity of results. Some of the rule arrays never manage to turn the arrays towards a final state, others do it consistently in under 10 steps. Rule arrays occasional produce patterns in the development of the test arrays. Also, many of the rule arrays always turn the test arrays towards the same final state, despite the starting factors. \subsection{Discussion} There appears to be a very odd quirk in my cellular automata. The majority of the moderately successful rule arrays (averaging, as would be expected, around 50%) turn the test arrays to the same final state every time. They therefore have approximately a 50-50 chance of being correct. The best of these are very efficient and can turn the array towards a final state in under 10 steps. However, these arrays therefore also have obvious limits in that they can never become more successful. \subsection{Conclusion} There is apparently something in my cellular automata that encourages rule arrays to efficiently turn the test arrays towards the same final state every time. I do not know why this happens, but I have a few guesses. Perhaps my cut off for the cellular automata development (1000 steps) is not long enough to allow most rule arrays to finish developing test arrays towards a proper majority. Therefore, the algorithm will favor any rule that achieves a quick final state. Even if that final state is always the same, the rule array should still have an approximate success rate of 50%. Even this humble success rate is better than that of an array that never manages to finish its development within the development limit. \subsection{Recommendations} As a personal preference, I would recommend using C++ rather than Java. While Java served fine for the Cellular automata, I had trouble implementing the genetic algorithm. Because I am more familiar with C++, it would have been an easier program for me to trouble shoot. Also, in the end, I used C++ for the graphical output of the program runs. \section{Sample Runs} \subsection{Sample Run 1} \begin{verbatim} Hajimemashoo BEST Rule: 00001001010101001011110011110001100010101000011011011001110110100010011110000100111111111101011000001110111100101000001011101111 val: 55 _________________________ FINAL TEST BLACK: 69 WHITE: 80 majority: OFF | |||||| || || | ||||| |||| ||| | |||||||||| | ||| | || ||| ||||| | || | ||| || |||| || ||||| | ||| || | ||| || | || || | || || || || || |||||| || || |||| ||||| | | ||||| || | ||||||| | ||| ||| || || || ||||| || ||||| | ||| ||||| || | | ||| ||||||| || || ||||||| |||||| || | ||| ||| || ||| ||| ||| | |||||| | | || ||||| |||| ||||||||| | ||| ||||| || |||||| | || ||||||||| || ||| ||| | ||| | ||| | |||||||||||| | |||||| || |||| ||||| ||||| || ||| | ||||||||||||| | || |||| | ||| || || | |||||| ||||| |||||| || || || || ||| |||| || | |||| | || |||| | ||| || ||||| | |||| | || |||||||| |||||||| | ||||||||| | | ||| | | ||||||||||||||||||| | || | ||||| |||||||| | || || ||||||| || || || || || |||| |||||| || ||| || |||||||||||||||| | || ||| |||| ||||| || | | ||||||||| | ||| | | |||||| |||| || | || ||||||||| ||||||||||| | | |||||| |||| |||| |||||||||||| |||||| || ||||||||| |||||||||||||||||||||| | |||||||||||| || |||| ||| ||||||||||||||||||| |||| |||||||| ||| || || || || ||||||||| ||||||| |||| || |||||||||||||||| || |||||||||||||||||||||||||||| | |||||||||||||||||| | | ||||||||| | || |||||||||||||| | ||||||||||||||| || || ||| || || || |||| |||||||||||| ||| | ||||||||| ||| || || || || |||||||||||| | | || ||||||||||||||| |||| |||||| || || |||||||||| | | |||||||||||| | || |||| |||||||||||||||||| || || ||||||||| | || |||| ||||||||||||||| ||| | |||||||| |||||||||||||||||||||||||||||||||||||||| || |||||||||||| ||| | |||||| |||| |||||| || ||||||||||||||||||||||||||||||||||||||||||| | |||||||||||||||||||||||||||||||||||||| || ||| ||| || ||||||||||||||||||| || || ||||| || || || || ||||||| || || ||| || || | | || | || ||||||||||||||||||||||||||||||||||| | || || | | | |||| ||| || ||||||||||||||||||||||||||||||||||||||||||||| | || |||| | ||| | ||| | || |||||||||||||||||||||||| |||| || || |||| | ||||||||||||||||||||||||||||||| ||||| |||||| ||| ||| | || ||||||| | |||||||||||||||||||||||||||||||||||||||||||||| ||||| |||||||||||||||||||||||||||||||||| |||||||| ||||| || || || ||||||| || || | |||| |||||||||||||||||||||| | ||| | | ||||||||||||||||||||||||||||||||||||||||||| || || || || ||||| || |||||||||||||||||||||||||||||||||||||||||||||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||| | | ||||| |||||||||||||||||| | || ||||| || || |||| |||||||| |||||||||||||||||| ||||| || |||||||||||||||||||||||||||||||||||||||||||||||||||| |||| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | || ||||||||||||||||| ||||||||||||| || |||| | |||||||||||||||||||||||||||||||||||||||||||||||| || || |||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||| ||||||||||||||||||||||||||||||||||||||||||||||||||| | ||||||||||||||||| ||||||||| | || ||||||| || || |||| | |||||||||||||||||||||||||||||||||||||||||||||||||| || || |||||||||||||||||| ||||| ||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||| | || ||||||| || || |||| | |||||||||||||||||| | || || |||||||||||||||||||||||||||||||||||||||||||||||||||| ||||| ||||||||||||||||||||| | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | || ||||||| | | || |||| | |||||||||||||||||||||||||||||||||||||||||||||||| || | | |||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||| ||||||||||||||||||||||||||||||||||||||||||||||||||| | |||||||||||||||||||||||||| | || ||||||| || || |||| | |||||||||||||||||||||||||||||||||||||||||||||||||| || || ||||||||||||||||||||||| ||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||| | || ||||||| || || |||| | ||||||||||||||||||| || || |||||||||||||||||||||||||||||||||||||||||||||||||||| ||||| |||||||||||||||||||||| | ||||||||| |||||||||||||||||||||||||||||||||||||||||||||||| | || ||||||| || || |||| | |||||||||||||||||||||||||||||||||||||||||||||||| || || |||||||||| |||||||||||||||||||||||||||||||||||||||||||| ||||| ||||||||||||||||||||||||||||||||||||||||||||||||||| | |||||||||||||||||||||||||| | || ||||||| || || |||| | |||||||||| |||||||||||||||||||||||||||||||||||||||| || || ||||||||||||||||||||||| ||||| ||||||||||||| |||||||||||||||||||||||||||||||||||||||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||| | || ||||||| || || |||| | ||||||||||||||||||| || || |||||||||||||||||||||||||||||||||||||||||||||||||||| ||||| |||||||||||||||||||||| | |||||||||||||||||||||| ||||||||||||||||||||||||||||||||||| | || ||||||| || || |||| | |||||||||||||||||||||||||||||||||||||||||||||||| || || ||||||||||||||||||||||| ||||||||||||||||||||||||||||||| ||||| ||||||||||||||||||||||||||||||||||||||||||||||||||| | |||||||||||||||||||||||||| | || ||||||| || || |||| | ||||||||||||||||||||||| ||||||||||||||||||||||||||| || || ||||||||||||||||||||||| ||||| |||||||||||||||||||||||||| ||||||||||||||||||||||||||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||| | || ||||||| || || |||| | ||||||||||||||||||| || || |||||||||||||||||||||||||||||||||||||||||||||||||||| ||||| |||||||||||||||||||||| | ||||||||||||||||||||||||||||||||||| |||||||||||||||||||||| | || ||||||| || || |||| | |||||||||||||||||||||||||||||||||||||||||||||||| || || |||||||||||||||||||||||||||||||||||| |||||||||||||||||| ||||| ||||||||||||||||||||||||||||||||||||||||||||||||||| | |||||||||||||||||||||||||| | || ||||||| || || |||| | |||||||||||||||||||||||||||||||||||| |||||||||||||| || || ||||||||||||||||||||||| ||||| ||||||||||||||||||||||||||||||||||||||| |||||||||||||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||| | || ||||||| || || |||| | ||||||||||||||||||| || || |||||||||||||||||||||||||||||||||||||||||||||||||||| ||||| |||||||||||||||||||||| | |||||||||||||||||||||||||||||||||||||||||||||||| ||||||||| | || ||||||| || || |||| | |||||||||||||||||||||||||||||||||||||||||||||||| || || ||||||||||||||||||||||||||||||||||||||||||||||||| ||||| ||||| ||||||||||||||||||||||||||||||||||||||||||||||||||| | |||||||||||||||||||||||||| | || ||||||| || || |||| | ||||||||||||||||||||||||||||||||||||||||||||||||| | || || ||||||||||||||||||||||| ||||| |||||||||||||||||||||||||||||||||||||||||||||||||||| | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||| | || ||||||| | | || |||| | ||||||||||||||||||| || | | |||||||||||||||||||||||||||||||||||||||||||||||||||| ||||| |||||||||||||||||||||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | || ||||||| || || |||| | |||||||||||||||||||||||||||||||||||||||||||||||| || || |||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||| ||||||||||||||||||||||||||||||||||||||||||||||||||| | |||||||||||||||||||||||||| | || ||||||| || || |||| | |||||||||||||||||||||||||||||||||||||||||||||||||| || || ||||||||||||||||||||||| ||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||| | ||||||||| |||||||||||||||||||||||||||||||||||||||||||||| | || ||||||| || || |||| | ||||||||||||||||||| || || |||||||||| |||||||||||||||||||||||||||||||||||||||||| ||||| |||||||||||||||||||||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | || ||||||| || || |||| | |||||||||| |||||||||||||||||||||||||||||||||||||| || || |||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||| ||||||||||||| |||||||||||||||||||||||||||||||||||||| | |||||||||||||||||||||||||| | || ||||||| || || |||| | |||||||||||||||||||||||||||||||||||||||||||||||||| || || ||||||||||||||||||||||| ||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||| | |||||||||||||||||||||| ||||||||||||||||||||||||||||||||| | || ||||||| || || |||| | ||||||||||||||||||| || || ||||||||||||||||||||||| ||||||||||||||||||||||||||||| ||||| |||||||||||||||||||||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | || ||||||| || || |||| | ||||||||||||||||||||||| ||||||||||||||||||||||||| || || |||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||| |||||||||||||||||||||||||| ||||||||||||||||||||||||| | |||||||||||||||||||||||||| | || ||||||| || || |||| | |||||||||||||||||||||||||||||||||||||||||||||||||| || || ||||||||||||||||||||||| ||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||| | ||||||||||||||||||||||||||||||||||| |||||||||||||||||||| | || ||||||| || || |||| | ||||||||||||||||||| || || |||||||||||||||||||||||||||||||||||| |||||||||||||||| ||||| |||||||||||||||||||||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | || ||||||| || || |||| | |||||||||||||||||||||||||||||||||||| |||||||||||| || || |||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||| ||||||||||||||||||||||||||||||||||||||| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ BLACK: 76 WHITE: 73 majority: ON |||| |||| || ||| |||| |||||| | | |||| | | ||||||| |||||||| |||||| ||| ||| | || | || || || || ||| | |||||| | ||||| ||||||| ||||| |||||||||||||| ||||| || ||| |||||||||| ||||| | ||||||| | | | | | || ||||||||||||||||| || |||||||||||| || || ||||| || || | |||||||||| || |||| || || | ||| | ||| | | || ||| || || ||||||||||||||||| | || | |||||||| | |||||||||||| | ||||||||||||||||| | ||| |||| |||||| ||||| ||||| | ||||||||||||| | | |||||||||||||||||||| |||||| || || || |||| || ||||| |||||||| |||||||| || |||| || |||||||| | ||||| | | ||||||||| |||||||||||||||||||| | || | ||| || || | ||||||||| ||||||||||||||||||||||| | ||||||||||||||| || || || |||| |||||||||||| |||| || ||||||||||||||||| | ||| | || |||||||||||||||||||||||||| |||||||||||||||||| | ||| | | ||| ||||||||||||||||||||||||||||||||| |||| ||| || ||||| ||| | | ||||| || ||||||||||||||||||||| ||||| || ||||||| || |||||| ||||||| || || || ||||||||||||||||||||| || ||||||| ||| || ||||||||||||||||||||||||||||| || || || || | | || || |||||||||||||||| || |||||||||| | || || |||||||||||||||||||||||| | ||||||| | | ||| | ||||||||||||||||| | || || ||| |||| | ||||||||||||||||||||||||| | || || || |||| | | || |||| | |||||||||||| | | ||||||||| ||||| |||||||||||||||||||||||||||| ||| | |||||||||||||||||||| | | |||| ||||||||| |||| | ||||||||||||| ||||| ||||||||||||||| ||| ||| ||||||| |||||| || |||| ||||||| ||| |||| |||||||||||||||| ||||||||||||||||| |||||||||||| || || || ||||||||||||||||| |||| || ||||||||||||||||||||| || || || ||||||||||||||||||||||||||||||| | |||||| |||||||||||||||||||||| | ||| || |||||||||||||||| | |||||||| | || || || || || ||||| ||||||||||||||||||| | || || || |||| | ||||||||||||||||||||||||||| | | ||||||||||||||||||||| | |||||||||||||||||| | || |||| | |||||||||||| | | ||||| ||||| |||||||||||||||||||||||||||||| || |||||||||||||||||||||||| ||||||||||||||||||||| |||||||||| ||||||||||||||| ||||| ||||||||||||||| || |||||||| |||||||||||||||||||||||||||||||| ||| ||||||||||||||||||||||| ||||||| || || || |||||||||||||||||||||||||| || || || || ||||||||||||||||||||||||||||||||||| |||||||||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | |||||||||||||||||||||| | || || || || || |||| | ||||||||||||||||||||||||||||||||||| |||||| | | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | | ||||||||||||||||||| ||||| |||||||||||||||||||||||||||||||||||||| |||||| || ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || |||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||| ||||| ||| || || || ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | |||||||||||||||||||||||||||| | ||||||||||||||||||||||||||||||||||||||||| || || || || || | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | | ||||||||||||||||||||||||| | | |||||||||||||||||||||||||||||||||||||| | || |||| |||||||||||||||||||||||||||| || ||||||||||||||||||||||||||||||||||||||||| ||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||| || || |||||| || |||||||||||||||||||||||||||||||| | ||||||||||||||||||||||||||||||||||||||||| || || |||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || || || || | | || || |||||||||||||||||||||||||||| | | |||||||||||||||||||||||||||||||||||||| | ||| ||| | |||||||||||||||||||||||||||||||||||||||||||||||||||||| | || |||| ||||||||||||||||||||||||||||||||||||||||| ||| ||| || | |||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||| | |||||||||||||||||||||||| |||| ||||| || || |||||| || ||||||||||||||||||||||||||||||||||||||||||||| || | |||||| | | ||||||||||||||||||||||||||||||||||||||||||||||||||| || || ||||||||||||||||||||| || || | || || || | | || || ||||||||||||||||||||||||||||||||||||||||| | ||| ||||| | | || ||||||||||||||||||||||||||||||||||||||||||||||| | ||| ||| | ||||||||||||||||| | || || |||| |||| ||||| ||||||||||||||||||||||||||||||||||||||||||||||| ||| ||| || |||||||||||||||||||| ||| | ||||||||||||||||||||||||||||||||||||| | |||||||| |||| ||||| || || |||||| || |||| |||||||||||||| |||||||||||||||||||||||||||||||||||||||||| || | |||||| | ||||||||||||||| || || |||||||||||||||||||||||||||||||||| ||||||||||| || || | || || || | | || |||||||||||||| | |||||||||||||| |||||||||||||||||||||||||||||||||||||| | ||| ||||| | | |||||||||||| | ||| ||| | |||||||||||||||||||||||||||||| || || || || |||| |||| ||||||||||||||| ||| ||| || ||||||||||||||||||||||||||||||||| | ||||||||| | | ||||||||||||||| |||||||||||||||||||||||||||||||||| | |||||||| |||| ||||| || || || || |||| |||||||||||||||||| |||||||||||||||||||||||||||||||||| ||| ||||||||||||||||||| || | |||||| | |||||||||||||||||||||||||||| | | |||||| |||| ||||||||||| || || | || || |||| ||||||||| || || ||||||||||||||| | ||| ||||| | | ||||||||||||||||||||||||| |||| |||||||||||||||||| ||||| |||| |||||||||||||||||||||||||||| || ||||||||||| |||| || |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||| | ||||||| || || || || |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||| | | |||| | || |||| ||||||| ||| | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||| |||| |||||| || ||||||||||| || || ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||| || || | | || || ||||||| | ||| ||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||| | || |||| |||||| || |||| | ||| ||||| || || |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||| ||||| |||||| || | | || ||||||| |||| ||| | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||| || |||| || || || |||||||||||||||||| ||||| | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||| | || |||||||| || |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||| ||| | |||||||||||||| || || || |||||| || || ||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||||||||||||||||| || || ||||||||||| | | | || | | || |||| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||||||||||||| | ||| ||| | ||||||| |||||||||| || |||| |||||| || ||||||||||||| | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||||||||| ||||| || || |||| || || || |||||||| | |||||| || |||||||| | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||||| || || || ||||||||||| || |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||||| | ||| | | |||||||||| || || || || ||||| || ||||||||||||| | |||||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||| | || ||||| || || || || |||| ||| || ||| | | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | |||| |||||| || ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | || || || ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ BLACK: 84 WHITE: 65 majority: ON || ||| || | | | | |||| ||||||| ||| | | ||| | || || | |||||| ||| | || |||||| || | || ||| ||| | ||| |||||||||||||||| ||| ||||||||| ||||| ||| |||| |||||| | | | || ||| | | |||||||| | ||| ||| | ||| ||| || |||||| || ||| || ||||||||||||| | ||||||||| || |||| ||||| | ||| ||| || || |||| || |||| || || || ||||||||||| || | |||||||| || ||||| || || | ||||| || |||||||||||||||||||| | |||||||| | ||||| | ||||||| | || || | || ||||||||| || | |||| ||||||||||||||||||||||| ||||||||||| || |||| || || |||| | ||||||| | ||| || ||||| | || || ||||||||||||| ||||||||||||||| || |||||||||||||| | |||| |||||||| | | |||| ||||| |||||||||| ||||| |||| | ||||| | ||| |||||||||||||||||| | |||||||||||||||||| || || || | || |||| ||||||| |||||||||||| ||||| |||||||| |||||||||||||||| || || || || ||||||||| | | |||| || || ||| ||||||||||||||||||| | ||||||||||||| | | ||||||||||||||| | || |||| ||||||||||||| ||||||||||||||| | |||||||||||||||||||||| | | ||||| || || || |||| |||||||||||||||||| ||| | ||||| |||| |||||||||||||||||| ||||||||||||||||||||||||| || ||| || |||||||||||||| | | |||||||||| |||| |||||| || |||||||||||||||||| || ||||||||||||||||||||||||||| | || | ||| | || |||| ||||||||||||| || || ||| || ||||||||||||| || |||| || ||||| ||| | |||||||||| |||| |||||||||||||||||||||| | || || |||||||||||||||||||||| || ||||||| || || |||||||||||||||||||||||||||||||||||||||||||||||| || |||| | ||||||||| | || || | | | || ||||||| || || |||||||||||||||||| ||||| |||||||||||| ||| | |||||||||||||||||| | ||| | ||||||| | || || |||||||||||||||||||||||||||||||||||||||||||| | || ||||||| |||||| || |||| || || |||| | ||| | || |||| | |||||||||||||| || || || ||||||||||||||| ||||| | | | ||| ||||| |||||| ||| | |||||||||||||||||||||||||||||||||||||||| ||||| ||||||||||||||||| | ||||||||||||||| | |||||| |||||||| || |||| ||| |||||||| || || ||||||| || || || || || || || || || ||||||||||||||||||||||||||||||||||||| || || |||||||||||| | | ||||||||||||||||||| | ||| | ||||||||| |||| | |||||||| | || || ||||||||||||||||||||| | || |||| |||||||||||||||||||||| |||||| |||||||||||| |||| ||||||||||| ||| | ||||||||||||||||||||||||||||||||| | || |||| | |||||||| |||| |||||||| ||||||||||||| || || |||| | ||||||||||||||||| ||||| ||||||||||| || || || |||||||||||||||||||||||||||||| ||||| |||||||||||||||||||| |||||||||||||||||||||||||||||||||||||| | |||||||||||||||||||| | ||||||||||||| | || ||||||| || || || || || |||| | |||||||||||||||||||||||||| || || ||||||||||||||||| | | |||||||||| ||||| ||||||||||||||||||||||||||||| | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | || |||| || ||||||||||| |||||||||||||||||||||||||||||||| || |||| | ||||||||||||| |||| || || ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||| |||||||||||||||| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||| |||||||||||||||||||||||||||||||||||||||||||| || || || ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | ||||||||||||||||||||||||||||| |||||||||||||||||||||||||||||||||||||||| | || || || |||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | | |||||||||||||||||||||||||||||| |||||||||||||||||||||||||||||||||||| ||||| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || ||||||||||||||||||||||||||||||||| |||||||||||||||||||||||||||||||||||| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||| || |||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || || || || |||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||| | | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | || |||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||| | |||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||| |||| |||||| || ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || || ||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||| || || | | || || ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | ||| ||| | ||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||| | || |||| |||||| || |||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||| || || |||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||| ||||| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || | | || ||||||| |||| ||| | |||||||||||||||||||||||||||||||||||||||||| ||||||||||||| || |||| || || || |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||| | | ||||||||||||||||||||||||||||||||||||||||||| ||||||||| | || |||||||| || |||||||||||||||||||||||||||||||||||||||||||||| ||||||||| ||| | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || || || |||||| || || ||| | ||||||||||||||||||||||||||||||||||||||||||||||||||| |||| || || ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | | | || | | || |||| |||||||||||||||||||||||||||||||||||||||||||||||||||||| | ||| ||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||||| || | ||| |||||| || ||||||||||||| | |||||||||||||||||||||||||||||||||||||||||||||||||| || ||| || || |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || || || ||||| ||| | |||||| || |||||||| | | ||||||||||||||||||||||||||||||||||||||||||||||| || || || ||||||||||| || |||||||||||||||||||||||||||||||||||||||||||||||||| | ||| | | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || || || || ||||| | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | |||||| | |||||||||||||||||||||||||||||||||||||||||||||||||| | || ||||| || || || || |||| ||| || ||| | | ||||||||||||||||||||||||||||||||||||||||||||||| |||| |||||| || |||||||||||||||||||||||||||||||||||||||||||||||||| || || || ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ BLACK: 70 WHITE: 79 majority: OFF ||||||||| | | || | || ||||||||| ||||| ||| ||| |||| |||| ||||||||||| || || |||||||||| ||||| ||||||||| ||| ||||||||| || ||| ||| ||||||| | ||||||||| ||||| || || ||||||||||||| ||||||||||| || || | | |||||||||||| || ||| |||||||||||||||| | ||||||| | ||| || |||| ||||||||||||||| | |||||||||||||||||||||| | ||||||| || || || || ||||||||||||||||||||| | ||||||||||||||||| ||||||||||||||| |||| || || |||| || |||||||||||| | | |||| | || || || ||||||||||||||||||| | | ||||||||||||||||||| |||||||||| | || |||| ||||||| |||||||||||||||||||||| | | |||||||||||||||||| ||||||||||| || |||| |||||||||||||||||||||| |||| | |||||||| |||| ||||||||||||||||||||||||| || ||||||||||||||||||||| ||||||||||| | ||||||||||||||| |||| ||||| ||||||||||| || || || || || |||||||||||||||||||||||||||||||||||||| || ||| || |||||||||||| || || | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||| | || || |||||||||||||||||||||||||||||||||| | || ||| |||| | |||||||| | || || || |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || ||||| ||||||||||| ||| | |||||||||||||||||||||||||||||| | | || ||||||| |||||| || |||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || || || ||||||||||||||||||||||||||| |||| || |||||||||||||| | |||||| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | || || || || |||| | |||||||||| | | ||||||||||||||||||||||||||||||| | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||| || ||||||||||| || |||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||| |||||||||| ||| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || |||||||||||||||||||||||||||||||||||| || || ||||| ||||| || || |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | || || |||||||||||||||||||||||||||||||| | || |||| | ||||| | | || |||| | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||| |||||||| | ||| | |||||||||||||||||||||||||||| ||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||| || || ||||||| || || ||||||||||||||||||||||||| || |||||||||||||||||||||||||||| | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | || || || || ||||||||||||||||||||||| | | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | || |||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || | | ||||||||||||||||||| |||| ||||| | || ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || | | |||||||||||||||| || || | | || || ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | ||| ||| | |||||||||||| | || |||| |||||| || |||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||| || || ||||||||| ||||| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || | | || ||||||| |||| ||| | ||||| || |||| || || || |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||| | | ||| | || |||||||| || || |||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || || || |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | ||| | |||||| || || ||||| ||||||||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | || ||| || || |||| ||| | |||||| | | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||| || || |||| || ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || ||| |||| |||||| || ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ BLACK: 71 WHITE: 78 majority: OFF |||| || ||| | | | ||||| | ||| | ||| || ||||| | || ||| || || |||||| ||| ||||| | ||| || ||| |||||| || ||| |||||||| | || | ||| || ||||| ||||| | || | ||| | ||| |||||||| |||||||| |||| ||| | ||||| || || | | ||| ||| | |||||||| | || ||| |||| | |||||| ||||||||||||||||| || || |||||| || || || | | ||| ||| | ||||||||||||| |||||||||| | ||| |||| ||| | ||| |||| || |||||||||||||||||||| | ||||||| | ||| || || ||| | ||| ||| ||| || |||||||||||||||| |||||||||| ||| | |||||| |||| || ||||||| ||||| | ||| || || || ||||| | |||||| | | | ||| ||| ||| ||||| |||||| ||| ||||||| | || |||||||| ||||||||||||||||||||| | | |||| | || || ||||||||| ||| | | ||||| |||||||||||||||||||||||||| ||||| || ||||||||| || |||| | ||| || |||||||||||||||||||||||| || ||||||| ||||| ||| |||||| || |||||||| || || | || || ||| ||||| ||||| | ||| || || || ||||||| || || || || |||||||||||||||||||||||||| | | ||| | ||||| | | || ||| || ||||| | ||||||||||||||||||| | ||||||| || ||||||||||||||||||||||||||||| | ||| || |||||||| ||| ||| | | ||| ||| || || || || || ||||||||||||||||||||||||||||||||||| || | |||| ||| ||||| |||| ||| ||| | ||| ||||||||||||||||||||| | | |||| | || || ||||||||||||||||||||||||| || ||| | ||||| || | ||| ||||| || |||| |||| ||||||| ||| | ||||||||||||||||||||||||||||||| | || || | | || | || |||||| || | ||||| |||| |||||| || |||| | ||||||||||||||||||||| | || | ||| || ||| | || || | ||||||||| || || |||||||||||||||||||||||||||| ||||| |||||||||||||||||||||||| || | ||||| |||| | ||| | ||| ||||||||||||||||||||||||||||||| || || | | || ||||||| || ||| || ||||||| ||||| ||||| |||| || ||||| | ||| ||| | |||||||||||||||||||||||| || ||||| ||||||| |||||||||||||||||||||||||||||||||||| | || | ||| |||||| || || ||||||||||||||||||||||||||||| || | ||||| ||| || || |||| | |||||| || || ||||||||||||||||||||| | || || | || |||||||| | |||||||||||||||||||||||||||||||| ||||| ||| || | | || |||| | ||||||||||||||||||||||||| | ||| ||||||| | || || || ||||||| |||| ||| | ||||||||||||||||| ||||| |||||||||||||||||||||||||||| ||||| || || | |||| | | ||||||||||||||||||||||||||||| || |||| || || ||||||| ||||||||||||| ||| || ||||||| || |||||||||||||||||||||||||||||||| | |||||||||||||||| ||||| | | |||||||||||||| || || |||||| | || || || || |||||||| || ||||||||||||||||| | ||||||||||||||||||||||||||||||| | ||||||||| || || ||||||||||||| || || || || || || || || |||||| ||||||||||||||||||||||||||||||||||||||||| | || || ||| | ||||||||||||||||| | | |||||||||||||||||||||||||||| | | |||||| | || |||| | ||||||||| | | | |||| ||||||||||||||||||||||||||||||| || ||||||||| ||| | |||||| ||||||||||||||||||||||||||||||||||||| ||||| |||||||||||| ||| |||| |||| || || |||||| || ||||||| ||||| ||||||||||||||||||||||||||||||||| | ||||||||| || || ||||||| ||||||||||||||||||||||||||||||||| || || | ||||||||||||||||||||||| || || || || | | || || ||||||||||||||| | |||||||||||||||||||||||||| | ||||||||||||||||||||||||||||| | | |||||| | ||| ||| | ||||||| ||||||||||||||||||||||||||||| | || |||| || || |||| ||||||||| ||| ||| || |||||||||| ||||||||||||||||||||||||||||| ||| | ||||||||||| |||||||||||||||||||||||||||| | | |||||||||||||||||||||||||| |||| ||||| || || |||||| || ||||||||||||||||||||||||||||||| || ||||||||||||||||||||||||||||| || | |||||| | |||||||||| |||||||||||||||||||||||| || || |||||||| || || || || || || || || | | || || |||||||||||||||||||||||||| | ||||||||||||||||||||||||||||||||||||||||||||| | | ||| | | ||||||||||| |||||||||||||||||||| | ||| ||| | |||| | || || || |||| |||||| || |||||||||||||| |||||||||||||||||||| ||| ||| || ||||||| ||| | |||||||||||||||||||||| | | |||||||||||||||||||||||||||||||||||||||||| |||| || || ||||| || || |||||| || |||| ||||||||||||||||||||||||||||||||||||||||||||| || | |||||| | ||| || ||||||||||||||||||| |||| || || || |||||||| | || |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||||||||| | | ||| | || |||| | ||||||||||||||| || |||| |||||| ||||||||| ||||| |||||||||||||||||| | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||||| |||| |||||||||||| ||||||||||||||||||||| || |||||||||| || || || ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||| || || ||||||||||||| | |||||||||||||||| | || || |||||| | || || || |||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || | || |||| | ||||||||| | | ||||||||||||| ||||| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || ||| | ||| || || |||| |||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | || ||||||| | | |||||| |||| || |||||||||| || ||||||||| || || || ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2 / 5 Result: 40.0% owatta! \end{verbatim} \subsection{Sample Run 2} \begin{verbatim} Hajimemashoo BEST Rule: 01010000000101110010011001011000011011101010000000001101111011100100000100100111011111011010001010011011010011101111100100010100 val: 100 _________________________ FINAL TEST BLACK: 70 WHITE: 79 majority: OFF | | | ||| | || | || | |||| ||| || || | | |||| | | | | || ||| ||| | | | | ||| || | ||||| |||| | | | | | ||| || ||| ||| | | | | || ||| | ||||||||| | | | | ||| || | | ||| || |||||||| | |||| | |||| | |||||| || ||| ||| || | | | ||| | |||||| | | | ||| | | | | | || | ||| || | ||||| | | ||||||| | | | ||| | | || | | | || | |||||||||| || | ||| ||| ||| || | | | | | | ||| || | | ||| | | ||| ||| | |||| | | | | | | || ||| | |||||||||| | | ||||||||||||||||| ||| | ||||||||||||||||||||| | | | | | ||||||||||||||||| || |||| | ||| | ||||| |||| | |||||||| || | | | ||||| | | | | |||| ||| ||||| | | | | | | |||| | ||| | | | | | | ||| | | ||| | || | |||||||| | ||||| | | | | | | | | ||||| | | |||||| || || | ||||| | | ||| | |||| ||| || | | || | ||||| ||| ||| | | ||| | | || | | || | |||||||||||||| | | | | ||| | | ||||||||||||||||| || | | ||||||||| |||| | |||||| ||| || | ||||| | | | |||||| | ||| ||| | | | ||||| || | | | | | | || | ||| || | | | ||| || | | |||| ||||| ||||| | | | || |||||||| ||| | ||| | | |||| ||| | | | | | ||| || | | ||||| |||||||||| ||| || | | | | | |||||| | | | ||||| ||| | | | | ||||| ||||| | | | | | | ||||| | | ||||||||||||||||||||||||| ||||| ||||||||||||||||||||| |||||||||||| || | ||| ||| | | | ||| ||| | ||| | | | | | | | | |||||||| ||||| | | | | | | | | | | | || || ||| || ||| || || | ||||||| || | ||||||| | | | | | |||| | | | ||| | | ||| || | || || | ||| || | ||| ||| | | |||| | | |||| | | | |||| ||| | | | | |||||||||| || | ||| | |||||||| | | ||||||||||||||||||| | | | ||||| ||| || | | || ||| | | ||||||| || | |||||| | | | | | | |||||||||||| ||||| |||||||||||||||||||||||||||||||| | | ||||| ||| | || | || | || | ||||| | ||| | | | | | | | | | | | | | | | | | |||| | | | ||| ||| | | | ||| | | ||||||||||||||||||| ||| ||| | | ||||||| | ||| ||| | ||| | ||||||| | ||| || | | | | | | |||||||| || | ||| | | ||||||| |||||| ||| | | |||||||| |||| || | | || ||||| | ||||| ||| || | | | || | | |||||| | | | | | | ||||||||||||| || | | | ||||| | || | |||||||||||||||||||||||| | | |||| ||| | ||| || | ||| ||||| | | | || | ||||| | | ||| | | | | | | | | | |||| | | | | |||||||||||||||||||| | | | ||||||||||||||||| ||||| ||| | ||| | | ||||| | | ||||||| ||||| | | | | | | |||| | ||| || | | | | ||||| |||||||||| || | |||||||||| | | ||| | | |||||||| ||||| | | ||||| | | | | | | | | ||| || | | ||| | |||||| | | | | | ||| | | |||| | ||| ||| | | | |||||||||||||||||||||||||| || | ||| ||| | |||||| | | ||||||||||||| || ||||||||||||||||||||||||||| ||| || | | | | | | | | | |||||||||| || | ||| || | ||| | | | | | | | | | | | | | | |||||| |||||||||| | | ||| || | | || ||| | | | | |||||| ||| | | | | | | |||| | | | ||||| ||| | ||| ||| || | | |||||||||||||||||||||||||||| | | ||||||||||||||||||||||||||||||| | | ||| ||| ||||||||||||| | | ||| || | | | | | | | | ||| | | | | | | | | | | ||||||||||||||| | ||| || | | | | |||| | | | | |||||| | | | | | ||| ||||| || | | ||||||||||||||||| || | || | ||| | | | | ||| | | | | | | | | | |||||||||||||||||| | |||||| ||| ||| || | | | | | ||| || | | |||||||| ||||||||||||||||||||||||||||| | | | | ||| || | | | | | | | | | | | | ||| | ||| | | | | || | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||| ||| || | ||| || | | | | | | | | | | | | | | | | | | | | |||||||||||||||||||| |||||||||||||||||||||||| || ||||| ||| | | | | | | | | | | | | | | | | | | ||| | | | | ||| ||| | ||||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || | ||| || ||||||||||||||||||||||||| || | | | | | | | | | | | | | | | | | | | | | | | || | | | | | | | | | | | | |||| ||| | ||| ||| | | | |||||||||||||||||||| ||||||||||||| || | ||| || | ||| ||||| | | | | | | | | | | | | | | || | | |||||||| ||||| ||| | ||||| | || | ||| || | ||||| ||||||||||||||||||||| ||||||||||| ||||| ||||| | || | | | | | | | | | | | | | | | | | | | |||| ||| | ||| ||| ||| ||| || | |||||| | | | | | |||||||||||| || |||||||||||||||||||||||||| ||||||||| | | || | | | ||| || | | | | | | | | | | | | | | | | |||| ||| | | ||| | | | ||| | |||||||||||||||||||||||||||||||| ||||||| | |||||||||||||||||||||| || | | | | | | | | | | | | ||| || | | | | | | || | ||||| | | ||| | ||| | ||||||| | | ||||||||||||||||||||||||||| || | | || | ||| || | | | | | | | | ||| || | | | | | | || | ||| ||| |||| ||| | | ||||||||||||||||||||||||||||||||||||||||| || | | |||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || | | | | | | | | | | | | | ||| || | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ||| ||| | ||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || | ||| || | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | || ||| ||||| | ||||| ||||| | | | | | | | | | |||| ||| | |||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || | ||| || | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | || ||||| | ||||| |||| | | | | | | | | ||| | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ BLACK: 65 WHITE: 84 majority: OFF |||||| ||| | ||| | | |||| ||| | ||||| ||| ||| | | || | | | | ||||| || ||| ||| | | | | |||||| | ||| | ||||||||||||| ||||| ||||||||||| | | ||| | || | ||| | ||| || | || || || ||| | ||| || | ||| ||| || | | |||||| || | | | ||| ||||| | | | ||||| | | |||||| | || | ||| ||||| | | | ||| | || | | || |||| ||||| || | | | ||| || | | | | | | | | ||| || | |||| ||||| | | | ||| | |||||| ||| ||||| | | | | || | | ||| || | |||||||||||||| | | | | | | | |||| | ||||| | |||||| | ||||| |||| || | ||| | | | | | | | | ||| ||| ||| | ||||| || | ||||| || | | | | | | | || | | |||||||||||||||||||||||| ||| | ||||| | |||||||||||| || || ||| | ||| || | | | | | | | |||||||| ||| |||| ||| | ||| || | | | | | | | | | || | ||||||||||||||||| || | | | || | | || |||| | ||||| ||| | | | |||||||| | | | || |||| | ||||| ||| ||| | | | | | | | | | |||| ||| | || | ||||||||||||| || ||| || | | ||||| | |||| | || | |||||||||||||||||||| || |||| | ||||| ||| | | | || | ||||| | | | || || | | | | | | | | | | ||||| | | | | | | ||| | || | |||||||||||||||||||||||||||| || ||| ||| | |||| ||| | ||| ||| ||| | | | | || | ||||| | | | | | | | | || || || ||| ||||||| | | | | ||||| || | | ||||||| || | ||| ||| ||| | |||| | | | | | | | | ||| ||||| | | || | ||| || | || ||| | ||| || | | |||||| || | | |||| ||| | |||||||| ||||| ||| | ||||| ||||| | | |||||||||||||||||||| || | ||| | |||||||| || | ||| || | ||||| ||||||| || | | ||| | | || | | | | | | | | ||||||| || | | | || | | | | | | | | ||| | | ||| || | || | ||||| ||| || || | ||||||||||| ||| | ||||||| | ||| | | | ||| | | | || ||||| | | ||||||| || | ||| || | | | | | | ||| | ||||||| | ||| | | | ||||| | | | | || | | | | |||||||||||| || | | | |||||| | | ||| |||| ||| | ||| ||| || | | | | | ||| | |||||||||| | | | ||||||||||||||||||||||||||||| |||||||||||||||||||||||||||||||||||||||||||||| | | ||| | |||||||| || | | | | ||||| || | | | | | | | | | | | | | | | | | | | | | | | | | |||| | | |||||||||||| || | | | | | | ||||| | | ||||||||||||||||||||| || | | | ||| ||| | ||| | | | | | | | || | ||||| | |||||||| || | |||||| ||| | ||| || | | ||| || | | ||||||| | | | | | ||| || | | || | ||| ||| | | ||| || | | |||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||||||||||||||||||||||| || | ||| | | | || | ||| || | | | | | | | | | | | | | | | | | | | | | | | | | | | | || | | |||||||||||||| |||| ||| | | | |||| ||| | ||| || | | | ||||||| | | | || | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||||||||||||||||||||| | | | | | | | | | ||||| ||| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ||||| ||| ||| | | | ||||||| | | | |||||||||||||||||| || | ||| ||| || | ||| ||| || | | | | | | | ||||||| | | | ||||||||||||||| | | ||| | | | | ||| | ||| || | | | | |||| | | | ||||| | | || | | | | | ||||||||||||||||| | | ||| ||| || | ||| ||| | | | | | | ||| | |||||| | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||| || | | |||||| | |||||||||| || | ||| | | | | | | | | | | | | | | | | | | | | | | | | | | || ||| | ||| || | ||| || | | || | ||||| | ||||| ||||| ||| | | | | | ||| | | | | | | ||| ||| | ||| ||| | ||||||| || | | ||| ||||| || | | ||||||||||||||| || | | || ||||| |||||| | | || | ||| || | | | | ||| || | ||| | |||| ||| | | | | | | | | | ||||||||||| ||| || | | ||| ||||| | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || | | | ||||||||| || || | ||||| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | || ||| || | || | | | || ||| || ||||||| ||||| | | || | ||| || | | | | | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | ||| | | | ||| | ||||||||| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |||| | ||| | ||||| |||| ||||| | | ||| | ||||| | || | | | | | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || |||||| | | ||||| || || | ||| || | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | || | | | ||| | || | | ||||||||| | | ||| | ||||| ||||||| | | || | | | |||| | | | || | ||||||| | | | | | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||| | | | ||| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |||||| ||| | |||||| | | ||| || | ||| || | ||| | || ||| | | | | ||||||| | | |||||||||||||||||||||| ||| || | | || | | | | | | | |||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | | ||| || | ||||| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |||| | | | | | | ||| | | |||||| ||| | ||||||||||||||||| || | ||| | | | | || | | | | | | | || | | |||||| ||| ||| | ||||| |||| ||| | ||| || | | |||||| ||||| ||||||||||||| | | | | | | ||| || | | | | | | | ||||| ||| | | ||| || | ||||| | | | ||||||||||||||| | | | | | ||| ||| || | | | | ||| ||| | |||||||||| || | | | | ||||||| ||||| | | || ||| | ||| ||| || | ||| ||||| ||||| ||| | | |||||||||||||||||||||||||||| | | | | | | | ||| ||| | ||| || | | | | | | | | | ||| | ||| || | ||||||| | ||| ||| | | | | | | | | | | | ||| |||||| ||| | ||| ||| ||| | ||||| || ||||| | | |||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || | | |||||||||||| ||||| | ||| ||||| || | | | | | | | | | | | | | | | | | | | | | | | | | || | ||| || | | | | | ||||| | ||| |||| ||| | | | ||| | ||| || ||||| | | ||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | | | | ||| | | |||||| | | | | | ||||| | | | | | | | | | | | | | | | | | | | | | | | | ||||| | ||||||||||||||||||| | | | ||| || | ||| | ||||| | | ||| || | | | | | ||| | || ||||| | ||||| |||||||||||||| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | | | ||||||||| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ||| ||| || | | | | ||| ||| | ||||||||||||||||||||||||| | | | | ||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || | | | | | | | | ||| | ||| | ||| || | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | || | | | |||||||||| | | ||| ||| || | | | | |||| | | |||||| | | | ||| | | ||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || | ||| | |||||||||||| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | || | ||||| || | | | | ||| ||| | || || || | ||||| | |||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || |||| | | || | |||||||| || | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | || || || | | |||| ||| || | | |||| | | |||| | ||| | | | | ||| | | | ||| | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ BLACK: 77 WHITE: 72 majority: ON | ||| | ||| ||| ||||| | | | || |||| | |||| | | || | |||| | | || | | ||| ||| | || | | | | | ||||||| || ||| | | ||| ||||| | ||||| | ||| || | | ||| | | | ||||||||||| || ||| | ||| ||| | |||| | || | ||||||||||||||| | ||||||| | || | | |||||||||| | | | ||| | |||| ||| || | | | | | |||||||| || |||||||| ||||| | | | | | | |||||||||||| || | ||| | || | | | | ||| ||||||||| || | | | | ||| | | | | | | | | | ||| | | | | || | ||||||||| |||| ||| | | | | | | ||| | |||||| ||| ||| | ||||||||||||| ||| | | | | ||| || | ||| | ||| ||||| || | ||| || | | ||||||||||| || | ||| || | | | | ||||||| | || ||| || ||| ||||||||||||| | | || | | | ||| || | | | | | | || |||| | ||||| ||| || | ||| | | ||| || | | | | |||| ||| | ||| | | |||| | | | | | | | | | | ||||||| | ||| | | | |||||||||| || | ||| | | ||| | ||| ||| | | ||||||| | | |||||||||||||||| ||||| | | || ||| | | |||||||||||||||||| | || ||||||||||||||||||||||| || | | |||||| | | | ||||| || | | | | | | ||||| ||| | ||| || | | | | | ||| || | | | | | | | || ||| | ||| || | ||| | | ||| | | ||| ||| || |||| | ||||| | | ||||| ||| | | | | ||||||||| | |||||||||||||| | ||| | | | | | | ||| | | ||| ||| || | |||||||||||| || | | ||| || | | | ||||||| |||| | | |||||||||||||| |||||||||||||||| | ||| | | || | | | | | | | | | | ||| || | | | | | | | | | ||| |||| || | ||||| ||| ||| | | | | | ||| | | |||||||||||||||||| || | ||| ||| | ||||||| | ||| || | | | | | | || | | |||||||||||||||||||||||||| ||||||||||| || | ||| || | | || | | | |||| ||| | ||| || | | | | | | | | | | | || ||| | ||| || | ||| | | | |||||||||||||||||||||| | | ||||| || | | | || | | ||||||||||||||||||||||||| ||||| | | | | | | | ||| | | | || || | ||| |||| ||| | ||| || | | | | | | | | | | | || | ||| |||| ||| | | ||||||| | | | | | | ||| ||| ||| || | | ||||||| | | | || | | | | | |||| ||| | |||||||||||||||||||||||||||| || ||||| ||| | ||| | | | | | |||| | | ||||| | |||||||||||||| || | ||| || | | | | | | | | || | | ||| ||| | | | | ||||| | | ||| || | | | | | || | | | ||| | ||||| | | |||||||||||||||| ||| || |||||| | | |||| ||| | ||| | | || | | |||| | | | | | | | | | ||| | | | ||||||||||||||||||| || | ||| ||| | || | | || ||| | ||||||||||||||||||||| ||||| | | | | | || ||| | | |||||| |||| ||| | | | |||||||| || | ||| || | | | | | | | | ||||| ||| | ||| || | | | ||||||||||||||||||||||||||||| || | | | || ||||| | ||||| ||| | | ||| ||| | | | ||| || | | | | | | | | | || | | |||| || ||| | || | |||||||||||||||||| || | ||| | ||| ||| | ||| | | ||| ||| | || || |||| | | | | | | | | | || | | ||||||| |||||| ||| | | ||||||||||||| | |||||||||||||||||||||||||||| || |||| || | ||| | ||||| |||| ||| | ||| || | ||| | | |||||||| || | | | ||| || | | | | | | | | || || || | || || | | || | ||||||||||||||||| | | | | | | | ||||| | | | | |||| | | ||| | | | | ||| ||| | | | | | | | ||||| ||| ||| | | | ||| | | ||| | | ||| | | | | ||||| | | | |||||||||||| ||| || | ||||||||||||||||||||||||||||| || | ||| | | | | |||||| | | ||| ||| || | | | | | | | | | | | | | | | || ||| | | ||||||| | ||| | | ||| | |||||||||| | | ||| ||||| ||| | ||| || | | || || ||| | ||| | ||||||||||||||||||| || | | | ||| | | ||||||||||||||||||||||||||||||||||||| | | | | | | |||| | | || ||| | ||| || | | | | | || | ||||| | | || | ||| || | | | | | | | | | | | ||| | | | ||||| ||||| | | ||| | ||| ||| || ||||| | ||||| | |||||||||||||| | | || | | |||| | | ||||||| || ||| | ||| | || | |||||||||||||||||||||||||||||||||||||||||||||||||||||| || | | | ||||||||||| | | | |||||||||||||||| || | || | ||||||| |||| | | | | | | | | | | | | | | | | | | | | | | | | ||| | ||| | | | | | | ||| | | | | | ||| | ||||| ||| | | ||||| || | | ||||| ||| | | || | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || | ||| | | ||| | | | ||||||| ||| | | | | | | | | | | | | | | | | | | | | | | || ||| | | |||||| | |||||| ||| || | | | ||||| ||||| ||| | | ||| || | | | ||| | | | | ||| || | | ||| | |||||| ||| | || || | ||| | ||||||||||||| || | | ||||||| | | || | | |||||||||||||||| || | | | || | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || | | || ||| || | ||| || | | | | || | ||||| ||| | | | | | | | | | | | | | | | | | | | | | || | |||| | | | || | | | ||| | | ||||||| ||| | ||| |||| ||| | ||| | ||||||| | ||| || | | ||||||| | | ||||||| | | | | | ||||||||||||||||||||| || | | | | ||| || | | | ||||| | | | |||| ||| || | | | | | | | | | | | ||||||||||| | | ||| ||| ||| || | | | |||| | | |||||||||||||||| || | | | | | |||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || | | | | || ||| | ||| ||| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ||||| ||| ||| | |||||| | | ||| | |||||||||||||||| || | ||| | | | | | | | | || | |||||||||||| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || ||| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ||||||| ||| || | | | ||| | ||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ BLACK: 71 WHITE: 78 majority: OFF | ||||| || ||| || | ||| | | | |||| | | || | | ||||| ||| | | | | | | ||| || || | | ||| || | | || || | | | | || | | |||||||| ||| || | | |||| ||| | ||| || ||||||| ||| | ||||| || | |||||||||| | | | | ||||| | | ||||| | | ||| |||| ||| || | | | ||||||||||||||||| | | |||| | ||| ||||| | | | | | || | | | | | | | |||| | | ||| | | || || | | ||||||| | | | | ||||| || | | | | | ||| | | ||| | |||| || | |||||| | | ||||| | ||||||||| | | | ||||||| || | | | |||||| | | | ||| ||| ||||| | | | | ||||| | | ||| || | | ||| | ||| | | | | | ||| ||| | | | | | | || | | ||| | | | | |||||||| || ||| | |||||||||||||||||||||||| ||| | ||| ||| ||| | ||| | ||||||||||||||||| ||| | | | | |||||||| || | | | | | | | | |||||| || | | |||||| ||| | ||| || | | | | | | | |||||| ||| || | | ||||| | | || | | ||| ||||| | | | ||| ||| || | | | | | |||| || | ||| | ||| | | | ||| ||| | | ||| ||| ||||| || ||| | ||||||||||||||||||||||||||||||||||||||| || | ||| | | | | || || | | ||||||||||||||||||||||||||||||||||| || | | | | | | | | | | | | | || ||||||||||||||| ||| | | || | ||| || | | | | | | | | | | | |||| || | | | | ||||||||||| ||| || | || | | | | | ||| | | | | | |||| ||| | ||| ||| | ||||||||||||| ||| | | | | ||||||||||||| || | | ||||||||||| || | | | | | ||||| ||||| | | | || ||| | ||| || | | | ||| | | | | ||||| ||| | | | | |||||| ||| | | ||| ||| | ||| ||| || | | ||||||||||||||||| | ||| ||| | | |||||||||||||||||||||||||||||||||||||| | | ||| || | | | | ||||||| |||||| ||| | ||| || | | | | | | | | | | | | |||| | | | | | | | | | |||||||||||||||||||||||||||||||||||||||| |||||||||||||||| | | | | ||||||| ||| ||||| | | | | | | | | | | | | | | | | | | |||| | ||| | | ||||||||||||||||||||| || | | | | | |||||||||||||||||||||||||||||||||||| || | | | | | | | || ||| | ||| ||| | | | | | | | | | | | | || || | ||| ||||| ||| | ||| || | | |||||| |||| ||| ||| | | ||| ||||| | | ||||||||||||||||||||||||||||||||||||||||||||||||| ||||||| || | | | | | ||| | ||| | ||| | | | | | | | | | | | | | | | | | | | ||| ||| | ||||||| ||| ||||| | ||||| | |||||||| || | ||| || | ||| | | | | | ||| || | | | || | | | | | | |||| | | |||| ||| | ||| ||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||| | | | |||||||| || | | |||||||| || | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ||| ||||| | | | || | | | | |||||||| ||||| |||| || || | ||||| | ||| || | ||||| ||||||| | || ||||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||||||||||||||||||||||||||||||||| | | | | | | | ||||| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |||| | ||| ||| | | | ||| | | || ||| || ||| | ||| | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||| ||||| | | | | ||||||||||||||| || | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ||| | | | | | | ||| | ||| | ||||||||| | | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||| || | | | | ||| || | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | || | ||||| | || | ||||| ||| | ||| | || | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||| || | | |||| ||| || | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | || || | ||| | | | |||| ||| || ||| | | | ||| || | ||| ||| | | || | | |||||||| || |||| ||| | ||| || | | | | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||| | | ||| ||||| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |||| | | |||||||| ||||| | | ||||||||||| || | ||||| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |||||| ||| ||| | | | ||||||| || | || | ||| || | || ||| | | || ||||||||||||||||||| | | ||||| ||| | ||| || | | | | | | |||| | ||| | | | | | | | | || ||| ||| ||| ||||| || | | |||||||||||||| ||||||||||||| || || | | || | ||| || | | | | | | | | || | ||||| | || | | | | | || | ||||| | || | ||| ||| | | | ||||| | || | | |||||||||||||||||||||||||| |||||||| || | | |||| ||| | ||| || | | | | | | | | | | || || | ||| | | | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | | |||| ||| | ||| || ||||| | | | | | | | | | | | | | | | | | | | | | | | | | | | ||| | | | | || |||| || | | | | | || | || | |||| | | | || ||| ||| || | | || |||||| | ||||| || | |||||| | | ||||||||||||||||||||| || | | || | | ||| || | ||| | | | | | | | ||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | | | | | || | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ||| | ||| | ||| ||| | ||||| | | | | |||||||||||||||||||||||||||||||| || |||| | ||| | | | | | | | | | | | || | | | ||| | | ||||||||||| | | ||| | | | ||| || | | ||||||||||||||||||||||||||||||||||| | | | | | | | | | | | | | | | ||| | ||| ||| | | ||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || | | ||||||||||||||||||||||||||||||||||||| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | || | ||| || | | | | | | | | | | | ||| |||| ||| ||||| | ||||| | |||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | | | | | | ||| || | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ||||| || | |||| | | | | | | | ||| ||| ||| | |||||||||||||||||||||||||||||||||| || | | |||||||| ||||| | | | | | | | | | | || ||| | ||| || | | | ||||| ||||| ||| | | | | | | | ||| ||| | ||| ||| ||| | ||| ||| | | |||||||||||||||||| || | | ||||||| |||||| ||| | ||| || | | | | | | || | ||| || | ||| | | ||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | | |||| ||| | | | | ||||| | | | | | | | | | | | | | | | | | | | | | | | | | ||| | | | | |||||||||||||||||| ||| | | | | | || | ||| ||||| | | | | | | | ||||||| ||| ||| || | | |||||||| ||||| ||| | | |||||||||||||||||||||||| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ BLACK: 77 WHITE: 72 majority: ON | | || ||| | | | | | | ||| | ||| || | ||| ||||| | ||| ||| || ||| |||| || || | || ||||| | | | |||| ||| ||| ||| || | | | | | || | | | ||||||||| || | ||| | | || | | ||||| | ||||| | |||||||||| || | | ||| |||| | | | ||| |||| || | | | || || | | ||||| | |||| | ||| |||| | |||||| || | | || ||| | ||| || | | ||| || | | ||||||||||||| | ||| |||| || || | || | | ||||| | || ||| || | | | || | ||||| | | ||||||||| | | | || ||| | ||| || | | | | || | | |||||||||| | || |||| ||| | | || | | | || || | |||| ||||| | |||||| | | | |||| | | || | | ||||||||| | | ||| || | ||| || | | | || | | |||||| ||| | |||||| || ||||| | | |||| | | | | |||||| ||| || | | | |||| | | | | | | ||| || | | ||||||| ||||| | | | | | ||||| || | ||| | | ||| | | | ||| | | |||||||||||| ||| | ||||||||||||||||| | | | ||| | | | | ||||| | | | || | | |||||| | | ||| ||||||||| | | | | | | || | | | | | | ||| | ||||||| | | ||| |||| ||| | ||| || | ||| | | | | |||||| ||| ||| | ||||| | ||| || | ||| | |||||||| | | | | | | | |||||| | ||| | | | |||||| ||||| |||||||||||| | ||| | | | |||||||||||||||| || | | ||||| ||| ||| || | || ||| | ||| ||| || | | | | | | | | | |||| | ||| || | | | | || | |||| | ||||||||||| || | | | ||||| ||| ||||||||||||||||| | | ||| || | ||||| | | |||||||||||| | | ||| | | | | | | || || | ||||||||||| | | | | | | | | | ||| | | | | | | ||| | | | | | ||| | | ||||||| | ||| |||| | | || | | | ||||| ||| | | | ||||| | |||||| | | || | ||| || | | | | | | ||| | | ||||| || |||||| || || | ||| | | ||| || | ||| ||| || || |||| | |||| ||| | ||| | || | | | | | || | | |||||||| | | | |||||| | | ||| | || | | ||||||| || ||| || | | | ||||| |||| ||| | ||| || | ||||||||||||||||||||||| ||| || | |||| | || | ||||||||||||||||||| || | || | | | || | | | | | ||||||| | | | | | | | | | | | | | |||||| | | | | | | | | ||| | ||||| ||| ||| ||||| | | ||| | ||| ||| ||| || | ||| | ||||| | | || | |||||||||| || || ||| | | || ||||| | | | |||||||||||||||||||||||||||||||||||||||| || | | | | | || | |||||||||||||||||||||| ||| | | | | || | | | || || | || |||||| | | | | | | | | | | | | | | | || ||| ||| | | | | | | | | | | ||||| ||| | ||||| | | | ||||||||| |||| || | | |||||| ||| ||| | | | ||||| | ||| | ||| | || | | | | | | | || | ||| || | |||||||||||||||||||||||||| || ||| || | || ||| | | | | ||||| ||| |||| ||| | | | | | | | | | | || || | | | ||||| || | || | | |||||||| | | ||| | ||| |||| ||| | ||| | | || || | | | |||||| | ||| || | | ||||| || ||| || || ||| | | | | ||||| || | ||| |||| ||| | | | ||||||||||||||||||||||||||||||||||||||||| | | | | ||| | | ||| ||| | ||| ||||| | | || ||| | | ||||||| | | | | | | | | | | | | | | |||| | ||| | | |||| | | | | | |||||||| ||||| ||||| || | | | ||| | | |||||| || || | || | ||| ||| || | ||||| ||||||| | ||| | ||||||||||||||||||||||||||||||||||||||||||| | | || | | || | |||||||| || | | | | | | | ||||| | | ||||||||||||| || | | | | | | | | | | | | | ||| ||| || | || | | | | || | ||| ||| ||| | | | | ||| || | | | || | ||||| | ||||||| | | | | ||||| |||| ||| | | |||||||||||| || ||||||| | | ||| | ||| || | | || | | | | | ||||||||| || | | | | | | ||| | ||||||| | | | ||| | ||| ||| ||||| | | ||| | |||||||||||||||||| || | | || | ||| | | |||||| || || ||| | ||| ||||| | |||||||||||||||| || | | | | | || | || | | |||||||||||||| | | || | | | || ||| || ||||||||||||||||||||||| || | | | | || | ||||| | | | || | ||| || | | | |||||| ||| | ||||| | | | | | | | | | || | ||||| ||| | ||| | ||| ||| | | | | | | ||||| | ||| | |||| || | ||||| ||| | | ||||||| | | ||||||| | | | | ||| ||| ||| || | || ||| | | | | | | ||||||| | ||| || | | || | ||| || | | | |||| | |||||||||||||||||| || | ||| | | ||||| || ||| | ||||||||||||||||| || | | || | ||| || | | | | |||||||||||||| || | | | | | | | | |||| || | | | | || | | | | | | ||| || || | | | | || || | ||||||||||||||| || | | | | ||| | || | || ||| ||| ||| | ||||| | | || ||| | ||| |||| | | || | | | | | | | || | |||| | ||||||||||||| || |||| | ||| | | | || ||| || | | |||| ||| ||| ||| | | | | | | ||| | | ||| | | |||||| ||||| | | |||| | ||| || | | |||||| || ||| | | ||| | | | ||| || | | | | ||||| | | || ||| | ||| || | | |||||||||||||| | | | ||| | | | | ||| | | ||||||||||||||||| ||||||||||||||||||||||| | | ||| || | | | |||||| | ||| | ||||||||| | | || | | | | | | | | | | | | | | |||| | | | | | | || | | |||||||||||||||| || | | ||| ||| || | ||||| | | ||||||||||||| ||| ||| || | ||| || | | | | || | ||||| | | |||||| | | || | |||||||||||||||| |||||||||||||||||||| | | | | |||||||||||||||||| || | ||| | | ||||||||| | | ||| | | || || | | | ||| | | | | | | | | | | | | | | ||| | | | | | | || ||||| ||| | | | |||| | | ||||||| |||| ||| | ||| | ||||| | ||||||||||||| ||||| | | ||| | | ||||||||||||| || | | | |||||||||| || ||| | ||| || | | | | | | ||||||||| | | | | | ||| | | | | ||| || | | ||| ||| || | | ||| | |||||||| | | ||| | ||||||||||||||| | | | |||||||||||||||||||||| || | |||||||||||||| | |||||||||||||||||||||||||||||||| || | | | | |||| | ||| || | | | | | | || | ||||| | | | ||||||||||||||||||||||||||||||||||| ||||| || | | | | | | | | | | | | ||||||| | | ||| | | | | | | | | | | | | | | | ||| | | | |||| | | ||||||| | ||| | |||||| | | ||||||||||||||||||| || | | || | | |||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||| || | ||| | | | | | | | ||| || | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |||||| | | ||| ||| || | ||| | ||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||| | | | ||||||||||| || | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ||| | ||| || | | | | | || | | | ||| ||| || | ||| | |||||| | | ||||||||||||||||| || | ||| || | ||| | | | | | | | || | | | | |||| ||| | ||| ||| | | | | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||||||||||||||||||||||||||||||||| || | | | ||||||||||||||||||||| ||||| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | || | | | | | | | | | |||| || | ||| ||| | | | | | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||| ||| | ||||||||||||||||||||||||| || | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |||||||| ||||| | | | | | | | || | ||||| | | | | ||| | ||| ||| | | ||||||| | | ||||||||||| ||| | ||| || | | || | ||| || | | | | | | | | ||| || | | | ||| | | | || | ||| | |||||||||||||| |||| ||| | | ||||||||||||||||||||||||||||||||||||| || | | | ||||||| | | | | ||| || | | | | | | | | | | | || | ||||| | | | ||||| | | ||| | ||| | | ||| | ||||||| | ||| || | ||| | |||||||||||||||||||||||||||||||||||||||||| || | | | | | | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | | | | | | | | | | | | | | | ||| | | | | | | | | | | | | | | | | | | | | | | | | | | | | || | ||||| | | ||||| ||| | ||| | | | |||||| | | | |||||| ||| || | | || | ||| || | | | | || || | | | ||| | | | || | ||| | |||||||||||||| |||| ||| | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || | | | ||||||| | | | | ||| || | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |||| | | ||| | | ||| | ||||||||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 1 / 5 Result: 20.0% owatta! \end{verbatim} \subsection{Sample Run 3} \begin{verbatim} Hajimemashoo BEST Rule: 00000000100010111011000011111001001000111111010000000111001111011010011011011110101101110000010011001000000110101001110101111111 val: 100 _________________________ FINAL TEST BLACK: 81 WHITE: 68 majority: ON | || | ||||||||| | | | | | ||||||| ||||||||||||||||||| || |||| | | |||| || |||||| || | || || || | | | |||||||||||||| |||||||||||||||||||||||||| || || || || | | |||||||| || ||||||||||| || |||||| |||| || || || | || || || || || |||||| |||||||||||||||| || || || ||||||||||||||||||||||||||||| | | | |||| |||||||||||||||| | ||||||||| | | | | ||||| | | |||||| | | ||| | |||| |||||||||||||||| | | ||||||||||||||||||||||||||||||||| | | | ||||||||||||| | ||||||||| | | |||||||||||| |||||| || | |||| |||||||||||||||| |||||||||||||||||||||||||||||||| || || ||||| ||||||||||||||||| | ||||||||||| | ||||||||| || | ||||| || |||| || |||| ||||||||||||||| || ||||||||||||||||||||||||||||||||||| | ||||||||||||||||||||||||||| |||||||||||||| | ||||||||| | || | | | |||| || |||| ||||||||||||||| | ||||||||||||||||||||||||||||||||| | ||||||||||||||||||||||||||||||||||||||||||| | |||||||| | | | || |||||||||||| | |||| ||||||||||||||| | |||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||| |||||||||||||||||| | ||||||||||||| | |||| |||||||||||||||| | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||| ||||||| ||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| _____________________________ _____________________________ _____________________________ _____________________________ _____________________________ BLACK: 78 WHITE: 71 majority: ON || ||||||||||| | | | | ||||| || || | | ||||||||||||| | | | || || | ||| | | | | || || || | | ||| | | | || | || | |||||||||||| || ||||||||||||||||||||||||||||||| | || |||||||||||||||||||| || |||||||| || || || | || | |||||| |||||| | | | | |||||||||||| | |||||||||||||||||||||||||||||||| | ||||||||||||||||| || || || ||||||| || || || || || || ||||||||||||||||||||||| | |||||||||||| | |||||||||||||||||||||||||||||||| | ||||||||||||||||| | |||| |||||||||| | | | |||||| | || |||||||||||||||||||||| || || ||||||||||||| | ||||||||||||||||||||||||||||||||| | ||||||||||||||||| | | | | ||||||| ||||||||| | |||||||||||||||||||||| | || |||||||||||||||| | ||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||| ||||||| ||||||||| || || |||||||||| | |||||||||||||||||||||| | | |||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | | ||||||||||| ||||||||||||||||||||||||||| | |||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | | | ||||||||||||||||||||||||||||||||||||||| | |||||||||||||||| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||| | |||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| _____________________________ _____________________________ _____________________________ _____________________________ _____________________________ BLACK: 75 WHITE: 74 majority: ON |||||||||| | || |||||| | || || || || | | | |||||||| | | ||||||||| |||||||||||||| || || | | | || | || || ||||||||||||| | ||||||||||||| | ||||| || || || | ||| || |||||||||||||||| || |||||||||||||||||||||||| | | |||||| ||||| | || || | |||||||||||||||| ||| |||||||||||||| | || | | | || || || |||||| | |||||||||||||||| | |||||||||||||||||||||||||| | | | | | | ||||| | |||||||||||||||||||||||| ||||||||||||||| ||||| || || || | ||||||||||||||||| || |||||||||||||||||||||||||| | | ||||| || |||||||||||||||||||||||| |||||||||||||||||||| || || || || || |||| | | | ||||||||||||||||| | |||||||||||||||||||||||||||| | || || |||| || ||||||||||||||||||||||||||| |||||||||||||||||||| | | | |||||| | | |||||| ||||||||||||||||||||| | |||||||||||||||||||||||||||| | | | ||||||||||||||||||||||||||||||| |||||||||||||||||||| |||||| | ||||||||||||||||||||||||||||||||| |||||||||||||||||||||||||||||||| || || | ||||||||||||||||||||||||||||||||||||| ||||||||||||||||||| || || ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | | | ||||||||||||||||||||||||||||||||||| ||||||||||||||||||| | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | ||||||||||||||||||||||||||||||||||| ||||||||||||||||||| | | | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || | | | ||||||||||||||||||||||||||||||||||| |||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | ||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || || | ||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | | | | ||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | |||||| |||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| _____________________________ _____________________________ _____________________________ _____________________________ _____________________________ BLACK: 74 WHITE: 75 majority: OFF ||| ||||| || ||||| | || | || | | || | ||| | || |||||||| | |||| ||||| |||||||||||| || | ||||||||| | | |||| | || || | || | | | | |||||| || |||||||||||| |||| | | | || |||| | |||||||||| | |||||||||||||||||||||||||||||||||| | ||||||||||||||||||||| | | |||| |||||||| | | | |||||||||||||||||||||||||||| | | | | ||||||||| |||||||||||||||||||||||||||||||||||||| || | ||||||||||||||||||||| | | | || | | | ||||||||||||||||||||||||||||||||||| |||||| | |||||||||||||||||||||||||||||||||||||||||||||||| | |||||||||||||||||||| || | |||||| |||||||||| ||||||||||||||||||||||||||||||||||||||||||||| | ||||||||||||||||||||||||||||||||||||||||||||||| | | | |||||||||||||||||||| ||||||||||||||||| |||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||||||||||||||||| || |||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | |||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | |||||||||||||||||| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | |||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| _____________________________ _____________________________ _____________________________ _____________________________ _____________________________ BLACK: 75 WHITE: 74 majority: ON | | || | | || | | | ||||||||| || |||||||||| |||| || || || || || || || | ||| || | | || | |||| | ||||||||||||||| | | | || || ||||| || ||||||||||||||| || |||||||||||||||||||||| | | |||| | || || || ||||||| | | | |||| | | |||||||||||||||||||||||||| |||||| | | | | || || | || ||||||||||||||| | |||||||||||||||||||||| | | | || || || | ||||||||||| | | ||||||||||||||||||||||||||||||||| | || ||||||||||||||| | |||||||||||||||||||||| | ||||| | || || ||||||||||||| || ||||| || |||||||||||||||||||||||||||||||||||| || || || || || |||| ||||||||||||||||||| | ||||||||||||||||||||||||||||||||| | || ||||||||||||| | | ||||||||||||||||||||||||||||||||||||||||| | | ||| | | | ||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||| | ||||||||||||| | | ||||||||||||||||||||||||||||||||||||||||||| || |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | ||||||||||||||| | |||||||||||||||||||||||||||||||||||||||| || |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||||||||||||| | |||||||||||||||||||||||||||||||||||||||| | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | |||||||||||||||||||||||||||||||||||||||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||||||||||||||||||||||||||||||||||||||| | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| _____________________________ _____________________________ _____________________________ _____________________________ _____________________________ 4 / 5 Result: 80.0% owatta! \end{verbatim} \subsection{Sample Run 4} \begin{verbatim} Hajimemashoo BEST Rule: 01010000111101010111011100010101100001110101000011011111110111011111010111110111110010010100100101110000010100100001101111001111 val: 100 _________________________ FINAL TEST BLACK: 73 WHITE: 76 majority: OFF |||| ||||||| | ||| | | | |||||| | | ||| ||||| | | || | |||| || ||| ||||| ||| || ||||| |||| | | ||| ||||||| | || || ||| |||||||| ||||||||||||| || || ||| ||||| | | | |||||||| | | ||| |||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||| ||||||||||||||||||||||| ||||||||||||||||||||||||||||||||| || ||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| _____________________________ _____________________________ _____________________________ _____________________________ _____________________________ BLACK: 78 WHITE: 71 majority: ON | |||||| | |||||||||| | |||| ||| || |||||| ||||| || ||||||||||||| || ||| || |||| | || | | | |||| | ||||| ||||| ||||| | ||||| |||||||| |||||||||||||| ||||||||||||||||||||||| || ||||||||||||||||||||||||||||||||||||||| ||||||| || ||||||| |||||||||||||||||||||| |||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| _____________________________ _____________________________ _____________________________ _____________________________ _____________________________ BLACK: 79 WHITE: 70 majority: ON | ||| |||||| |||||| |||||||||| | |||||| || ||||||| ||| ||||| ||| |||||||||||| ||| |||| |||| | ||||| || ||||| | ||| |||| | |||| | ||||||||||||| ||||||||||||||||| ||||||||||||||||||||| | | |||||||||||||||||||||||| | | || |||||| |||||||| |||||||| |||||||||||| |||||| || |||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||||||||||||||||||||||| |||||||||||||||||||||||| |||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| _____________________________ _____________________________ _____________________________ _____________________________ _____________________________ BLACK: 72 WHITE: 77 majority: OFF | | | | || |||| | | |||| | ||||| || |||| |||||| |||| | ||| |||| | | | | | || |||| || | ||||||||||||| |||||||||| ||| || ||||| || ||| ||||||||| | | || | | |||||||||||||||||||||||||||||| || ||||||| || | | ||||||||||||||| |||||||||||||||||||||||||||||||||||||||||||||||| |||||||||||||||| |||||| ||||||||||||||||||||||||||||||||||||||||||||||||||| | | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| _____________________________ _____________________________ _____________________________ _____________________________ _____________________________ BLACK: 75 WHITE: 74 majority: ON |||||| | ||| || ||| |||||||| | | || ||| | |||||| ||| |||| ||| ||||| |||||||||| | ||||| | ||||| | ||||| || ||| | ||||||| |||||||| |||||||| ||||||||||||||| ||||||||| ||||||||||| ||||||| | | || |||||||||||| |||||||||| ||||||| |||||||| |||||||||||||||| ||||||||| |||||||| |||||||||||||||||||||||| ||||||||||||||||||||||||||||||| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| _____________________________ _____________________________ _____________________________ _____________________________ _____________________________ 3 / 5 Result: 60.0% owatta! \end{verbatim} \subsection{Sample Run 5} \begin{verbatim} Hajimemashoo BEST Rule: 00000001011100001100110110011101001000101100101010011001011100011000110100111010110100111011111001101010110010101110110101010110 val: 100 _________________________ FINAL TEST BLACK: 77 WHITE: 72 majority: ON || ||||| | | | || ||| ||||| || | | | | | ||| ||||| | |||||||||| || | ||||| || |||||| | | ||| | | || |||||| ||||| ||| |||| | | || |||| ||| | |||| ||||| | | | |||| ||||||||||||| ||| | |||| || || ||||| ||| |||| || ||| ||||| |||| | |||| |||| ||||||||| || |||| ||||||| | || ||| | |||||||||| || |||| || ||| | |||| |||| ||| ||| ||| |||| | || ||||||| | | || | ||| ||||| ||| || |||||||||||||||||||||||||||| | | || | | | ||| |||||||||||||||| |||||| || || | ||| ||||| ||| || | | ||| ||||| | | |||| |||| ||| | ||| ||| || || || | ||| |||| ||||||| || |||||||||||||| || |||| ||||||||||||||||||||||||||||||||| ||||| || | | |||| ||| | | ||| | ||| | | || ||||||||||||||||||||||||||||||||||||||||||||||||||||||| || |||||||||| | | |||||||||||||||| ||||||| |||||||||||||||||||||||||||||||| || | || | ||| ||| ||||||| ||| | ||||| ||| || |||||||||||||||||||||||||||||||||||||||||||||||||||||||| || ||||| | |||||||| ||||||||||||||||||||||||||||||||| ||| ||| ||| | ||| ||| | ||| ||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||| || |||||| ||||||||||||||||||||||||||||||||| ||| ||| ||| | ||| | || || | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || ||||||||||||||||||||||||||||| ||||||||| ||||||||||||||||||||||||||||||||| ||| ||||||| | ||| ||| || ||| || |||||||||||||||||||||||||||||| || ||||||| |||||||||||||||||||||||||||||| ||| || ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||| | ||| || | | |||| ||||||||||||||||||||||||||||||||| |||||||||| ||||||||||||||||||||||||||| |||| || ||| ||| |||| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||| || |||||||||||||||||||||||||||| || |||||||| |||||||||||||||||||||||| ||| || | | | ||| | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||| || |||||||||||| |||||||||||||||||||||||||||||| |||| |||||||||||||||||||||||||||||||||| |||| || ||| |||| ||||||||||||| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||| || ||||||||||||||||||||||||||||| ||| || | | | |||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||| ||| |||| |||||||||||||||||||||||||||||||||||||||| || |||||||||||| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||| | ||| | ||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||| | |||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| _____________________________ _____________________________ _____________________________ _____________________________ _____________________________ BLACK: 57 WHITE: 92 majority: OFF | | || | ||||||||| || ||||| | | || |||||||||| |||| | || || || || || ||||| | ||||| | | | | | | |||| ||||||| ||||||| |||| | ||||| ||||| |||| | || |||||||||| ||| ||| || || | | ||||| | |||| || | | |||| |||||| ||| | ||| || || ||||||| || |||||||| ||| | ||| || || | | ||| ||| | ||||| |||| ||| | |||||||| |||||| ||||||||||| ||| | | | | ||| | ||||| || |||| ||| ||||| ||||||||| || || | |||||||| | || |||||||||||||||| | | |||| ||| || || | |||| || | || || ||| |||| | ||| ||||||| ||| | | | | ||||| | ||| ||| ||| |||| || ||||||||||||| | ||||||||||||||||||||||||| |||||||||||||||||| |||||||||||||||||| |||||||| || || | | || || | || | | ||| ||| | ||| | ||| |||||||| ||| ||||| ||||| | | |||||||||||||||||||||||||||||||||||||| || ||||||||||||||||||||||| ||||||||||||||||| |||||||||||||||| || || | | ||| || ||| |||| ||||||||| | ||| | | ||| |||||||| || || | |||| ||| || ||||||||||||||||||||||||||| |||||||||||||||| |||||||||||||||||||||| | ||| || | || |||||||||||||||||||||||||||||||||||||||||||||||| |||| | || | ||||||| ||| ||| |||| |||||||||||||||||||||||||||| ||||||||||||||| |||||||||||||||||||||||||||| ||||||| | ||| || ||||||||||||||||||||||||||||||||||||||||||| ||| | ||| | ||| ||| | ||||||||||||||||||||||||||||| |||||||||||||| |||||||||||||||||||||||||| || |||||||||||| ||||| |||||||||||||||||||||||||||||||||||||||||||||||||||| | | ||| | ||| || ||||||||||||||| || | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||| |||| | ||||||| |||| ||||||||||||||||| || ||| | || |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||| ||| || |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||||||||||||||||||||||||||||||| |||| |||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||| ||| | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||| _____________________________ _____________________________ _____________________________ _____________________________ _____________________________ BLACK: 83 WHITE: 66 majority: ON || ||||| ||| | | |||||| || | | | || | |||||| ||| ||| |||| | ||| |||| ||| ||||| | | | ||||||| ||||||| ||||| || | | || ||||||| | ||| ||| ||||||||| ||| | | ||| || | | ||||| | | | || | | ||| |||| || ||||||||||||| | |||||| || ||| ||| |||||||| | |||| || ||||| |||||||| ||||| | |||||| |||| ||| |||| ||| ||| || || |||||||| || ||||| ||| | | |||| |||| ||||| |||| | || |||| ||||||||||||||||||||||||||||||| ||||||| | ||| | ||| || |||||||||||||||||| || |||| ||| || |||||||||| |||| |||||||| ||| | || ||| | ||| || ||||||||| ||||| |||| | ||| || | | ||| || ||| | ||||| ||| || |||||||||||||||||||||||||||| ||||| ||| ||| ||| |||| || ||||||||||||||||||| |||| ||||| | | ||||||||||||| ||| || || | ||| ||||| || | ||| | | ||||| || ||||||| |||| ||| | ||| ||||||| ||||||||| || | | ||||||| ||| ||| ||| || |||||||||||||||||||||||| || | ||| |||| | || ||| || ||||||||||||| | || ||| || | | | | | | | ||||||| ||| || | |||||| ||| | | | | | ||||| ||||||| | | |||||| |||||||||||||||||||||||||| || | | || | ||| ||||||| |||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||| ||||| | | ||| || | ||| ||| ||| | |||| |||||||| ||||||||||||||||||||||||||||||||||| ||| || | || ||||| ||| || ||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||| ||| | | ||| || | ||| | ||| ||| | | |||||||| |||||||||||||||||||||||||||||||||||| ||| || ||| |||||||| ||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||| | | ||| ||| | ||| | | || || | |||||||| || | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||| |||| ||| | ||||||| | || ||| ||| | || || |||||||| || ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||| | ||| || |||||| |||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||| ||| |||| ||||||| ||||||| || |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||| | ||| | |||||||| ||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||| | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||| _____________________________ _____________________________ _____________________________ _____________________________ _____________________________ BLACK: 76 WHITE: 73 majority: ON ||||| |||| ||| | ||| | | | | | || | ||||| |||||||| | || | || || || | |||| || | | ||||| ||| ||||| | | | |||| ||| ||| |||||||| |||||||||| ||||| | | | || | ||||||| ||| ||||| ||| ||| |||| ||| |||||| | |||| |||| |||||||||||||| ||| || || ||| ||| | |||| | ||| || |||| |||| ||||||||| ||| ||||| ||| | | ||| | | | ||| || ||||| ||||||||| || || || |||||||||||| ||| ||| | | || ||| ||||| ||||||||||||| || ||||| || |||||||||||||||| ||||| |||| || | ||||||| | ||| ||| ||| | ||||| |||||| || |||||||||| ||| |||| |||| | |||| ||| ||| ||| | ||| || || || |||||||||||||||| ||| ||| |||| || | || | || |||||||||||||||| ||| ||||| |||||||||||||||| || ||| |||| || |||||||||||||| ||| ||| |||| | | | |||| |||||||| ||||| ||||| |||| || | ||||||| | ||| | ||| || || |||| |||||||||||||||||||||| | | ||| |||| ||| |||| |||| || |||||||||||| ||||| || ||||||| |||||| |||||||||||||| ||| ||| ||| |||||||||| || |||| |||| ||| | | ||| ||| || ||||||||||||||||||||| |||| ||| || || ||||| || ||||||||||||||||| | | || | || || ||||||| | | ||||||||| ||| | ||| |||| |||||||| ||| || ||||||||| ||| |||| ||| ||| ||| ||||| ||| |||| ||||||| | ||||| || ||||||||||||||| ||| | ||| || |||| |||||||| ||||||||||||||||||||||||||||| |||| |||||||| || || ||| || |||||||| | ||| | ||||||||| ||||| ||||||||| ||| ||| ||| | | | | | ||| ||| || ||||||||||||||||||||||||| ||| || ||||| || || | ||||||||||||||||||||||||||||| || ||||||||||| ||||||| ||||| ||||||||||||||| |||| | ||||||| |||| ||| ||| ||||||| | |||| ||| | ||| |||| ||||||||||||||||||||||||||||||||||| ||||| |||| ||||||||||| |||| ||||||||| || || |||||| || |||||||||| ||| || ||| || ||| | ||| |||| | ||| | |||||||||||||||||||||||||||||||||||| |||||||| ||| || ||||||||||||||||||||||||||||||||||||||||| ||| || |||||||||||| || || || |||||||||||||||||||| || | | || | | | | | |||| || || || |||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||| || |||||||||||||||||||||||||||||||||||||||||||||| || |||||||||||||||| || |||| |||| | | ||| | | ||| | | || |||| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||| | | ||||||||||||||||||||||||||||||||||||||||||||| | | ||||||||||||||| | | ||| ||||||| ||||||| || | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| || ||| || ||||||||||| || ||||||||||| | | | | | ||| || ||| || ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||| || ||||||||||||||| ||| ||| | | ||| | ||||| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||||||||||||||||||||||||||||||||||||||||||||| | | ||||||||||||||| ||| ||||||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||| ||| | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| _____________________________ _____________________________ _____________________________ _____________________________ _____________________________ BLACK: 72 WHITE: 77 majority: OFF ||||||| || ||||| |||| || || || ||| |||| |||| |||||| || | ||| |||| || |||| |||| | | ||||||| || ||| ||||| ||| || || | | || | |||| ||| | ||| | | |||| |||| | | ||||| |||| ||| ||| ||||| | | ||| | | | | |||| |||||| | | | ||||||||| ||| || || || || ||||||||||||||| |||| |||||| |||||||| ||| || || ||||| ||||||| ||||||| | | | || ||| |||| || | || | | ||| ||| ||| || ||| ||| | || ||| | ||| || || ||| |||| |||||||| ||| ||| | | |||||| |||| || || || ||||||||||||||||||||| ||| ||| || ||||||||| ||| |||| | | | | ||| ||| || | | ||||||||||||||||||| |||| |||| ||| ||| |||| || | | | | || | || ||||||||| ||||||| || |||||||| || ||| ||||||| || ||||||||||||||| || ||||||||||||||||| ||||||| |||||| ||||||| ||||| |||| ||| | ||| | ||| ||| | | | ||| ||| ||| ||| ||| |||| || ||||| || || || |||||||||||||| |||| |||||||||||||||||||||||||||||| ||||| ||||||||||||||| | | |||||||||||||| || ||||| |||| ||||||| |||| ||| | |||| || | | |||| ||||||| | ||||||| | ||| ||||||| | || ||| | || |||| |||||||||||| ||| || ||||||||||||||| ||||| | || || | || ||| | | | ||| || |||||||||||||||||||||| ||| |||| |||||| ||| || ||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||| |||||| ||||||||||||| ||| | ||| || |||| ||| || | | ||| ||| | ||||| || |||||||||||||||| ||| || ||||| |||| | | | ||||||||||||||||| | ||| || ||||| |||| |||| || |||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||| | | ||| || ||||||||||||||||| |||| |||| ||| | | ||| ||||| || |||||||||||||||||| |||| |||| ||| ||||| |||||| | | |||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||||||||| | ||| |||| ||||||||||||||| || ||| |||| ||||||| || ||||||||||||||||||| ||| | |||| || |||| ||| | ||||||||||||||||||||||| | | || ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||| || ||||||||||||||||||||||| ||| |||| | ||| | |||| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||| |||||||||||||||||||||||||||||||||||||||||||||||||||||| ||| ||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||||||||||||| || |||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | ||| || ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||| |||| |||| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||||||| ||| | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||||||||||||| _____________________________ _____________________________ _____________________________ _____________________________ _____________________________ 2 / 5 Result: 40.0% owatta! \end{verbatim} \section{PROGRAM CODE} \subsection{Cellular Automata Code} \begin{verbatim} import java.util.Random; /** * @author Austin Rachlin * Summer 2002 * Majority Classification Problem */ //Uses 7 neighbors class test { int[] array = new int[149]; } class rule { int[] array = new int[128]; int val; } public class MCP { public static Random rand; static { rand = new java.util.Random();} public static void main(String[] args) { //Calls CreateArrays //Calls CreateRules //Calls RunAllRules ////GA //Returns some value System.out.println("Hajimemashoo"); //Modifiable variables // int NumberOfTests=100; int NumberOfRules=100; int NumberOfFinalTests=1000; // test[] TestList = new test[NumberOfTests]; CreateArrays(TestList); rule[] RuleList = new rule[NumberOfRules]; CreateArrays(RuleList); // int nbrs = 3; RunAllRules(RuleList, TestList); rule Best = SelectBest(RuleList); System.out.println(""); System.out.println("BEST"); DisplayArrays(Best); test[] FinalTestList = new test[NumberOfFinalTests]; CreateArrays(FinalTestList); float result = FinalExam(Best, FinalTestList); //Calls SelectBest //Calls FinalExam System.out.println("Result: " + result + "%"); System.out.println(""); System.out.println("owatta!"); } public static void DisplayArrays(test List) { String str = ""; for (int i = 0; i < List.array.length; i++) { str += List.array[i]; } System.out.println(str); } public static void DisplayArrays(rule List) { String str = ""; for (int i = 0; i < List.array.length; i++) { str += List.array[i]; } System.out.println("Rule: " + str + " val: " + List.val); } public static void PrintArray(test List) { String str = ""; for (int i = 0; i < List.array.length; i++) { if (List.array[i] == 1) { str += "|"; } else { str += " "; } } System.out.println(str); } public static void CreateArrays(test[] List) //Takes 2D array of arrays (empty) and # of desired arrays { //Creates all of the arrays //2D array of all the individual arrays for (int i = 0; i < List.length; i++) { List[i] = new test(); for (int j = 0; j < List[i].array.length; j++) { if (rand.nextBoolean() == true) { List[i].array[j] = 0; } else { List[i].array[j] = 1; } } } } public static void CreateArrays(rule[] List) //Takes 2D array of arrays (empty) and # of desired arrays { //Creates all of the arrays //2D array of all the individual arrays for (int i = 0; i < List.length; i++) { List[i] = new rule(); for (int j = 0; j < List[i].array.length; j++) { List[i].val = 0; if (rand.nextBoolean() == true) { List[i].array[j] = 0; } else { List[i].array[j] = 1; } } } } public static void RunAllRules(rule[] RuleList, test[] TestList) //Takes all rules and tests { //Runs a loop to call ApplyRuleToAllTests for every rule boolean prnt = false; for (int i=0; i < RuleList.length; i++) { ApplyRuleToAllTests(RuleList[i], TestList, prnt); } } public static void ApplyRuleToAllTests(rule Rule, test[] TestList, boolean prnt) //Takes a rule and all tests { //Runs a loop to call ApplyRuleToSingleTest for all tests for (int i =0; i < TestList.length; i++) { ApplyRuleToSingleTest(Rule, TestList[i], prnt); } } public static void ApplyRuleToSingleTest(rule Rule, test Test, boolean prnt) //Takes a rule and a test { //Applies the individual rule to an individual test //Calls EvalArray //Calls StoreArray //Calls RecordSuccess int runTime = 100; test T1 = Test; int maj = FindMajority(Test, prnt); int runs = 0; do { for (int i=0; i < Test.array.length; i++) { T1.array[i] = EvalArray(i, Rule, Test); } if (prnt == true) { PrintArray(Test); } runs ++; }while ((AllSame(Test) == false) & (runs < runTime)); if (prnt == true) { for (int i=0; i < 5; i++) { System.out.println("^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"); } System.out.println(""); } Rule.val += RecordSuccess(maj, T1); } public static int FindMajority(test Test, boolean prnt) { int on = 0; int off = 0; for (int i=0; i < Test.array.length; i++) { if (Test.array[i] == 0) { off++; } if (Test.array[i] == 1) { on++; } } if (prnt == true) { System.out.println("BLACK: " + on); System.out.println("WHITE: " + off); } if (on > off) { if (prnt == true) { System.out.println("majority: ON"); } return 1; } else { if (prnt == true) { System.out.println("majority: OFF"); } return 0; } } /* public static int EvalArray(int pos, rule Rule, test Test) //Takes a single position and a rule { //Evaluates the array at a single position according to the rule int x; int y; int z; if (pos == 0) { x = Test.array[Test.array.length-1]; } else { x = Test.array[pos-1]; } y = Test.array[pos]; if (pos == Test.array.length - 1) { z = Test.array[0]; } else { z = Test.array[pos + 1]; } int val = (((x << 1) | y) << 1) | z; return Rule.array[val]; } */ public static int EvalArray(int pos, rule Rule, test Test) //Takes a single position and a rule { //Evaluates the array at a single position according to the rule int min3; int min2; int min1; int cntr; int max1; int max2; int max3; if (pos == 0) { min3 = Test.array[Test.array.length-3]; min2 = Test.array[Test.array.length-2]; min1 = Test.array[Test.array.length-1]; } else if (pos == 1) { min3 = Test.array[Test.array.length-2]; min2 = Test.array[Test.array.length-1]; min1 = Test.array[pos-1]; } else if (pos == 2) { min3 = Test.array[Test.array.length-1]; min2 = Test.array[pos-2]; min1 = Test.array[pos-1]; } else { min3 = Test.array[pos-3]; min2 = Test.array[pos-2]; min1 = Test.array[pos-1]; } cntr = Test.array[pos]; if (pos == Test.array.length - 1) { max1 = Test.array[0]; max2 = Test.array[1]; max3 = Test.array[2]; } else if (pos == Test.array.length - 2) { max1 = Test.array[pos + 1]; max2 = Test.array[0]; max3 = Test.array[1]; } else if (pos == Test.array.length - 3) { max1 = Test.array[pos + 1]; max2 = Test.array[pos + 2]; max3 = Test.array[0]; } else { max1 = Test.array[pos + 1]; max2 = Test.array[pos + 2]; max3 = Test.array[pos + 3]; } int val = (((((((((((min3 << 1) | min2) << 1) | min1) << 1) | cntr) << 1) | max1) << 1) | max2) << 1) | max3; // int val = (((x << 1) | y) << 1) | z; return Rule.array[val]; } /* public static void StoreArray() //Takes a single position value and location (x and y) { //Stores the resultant position of the array in the 2D array } */ public static int RecordSuccess(int maj, test T1) //Takes a rule and modified array { //Modifies the value of the rule depending upon the outcome if (AllSame(T1) == true) { if (maj == T1.array[0]) { return 1; } } return 0; } public static boolean AllSame(test T1) { int check = T1.array[0]; boolean result = true; for (int i = 0; i < T1.array.length; i++) { if (check != T1.array[i]) { result = false; } } return result; } public static int ReturnSuccess(rule Rule) //Takes a rule { //Returns the success of a single rule return Rule.val; } public static rule SelectBest(rule[] RuleList) { //Chooses the best rule rule Best = new rule(); Best.val = -1; for (int i = 0; i < RuleList.length; i++) { if (RuleList[i].val > Best.val) { Best.array = RuleList[i].array; Best.val = RuleList[i].val; } } return Best; } public static float FinalExam(rule Best, test[] FinalTestList) { System.out.println("_________________________"); //Calls CreatArrays with enormous number //Applies best rule to giant 2D array of landscapes //Returns success rate System.out.println("FINAL TEST"); // DisplayArrays(Best); Best.val = 0; boolean prnt = false; ApplyRuleToAllTests(Best, FinalTestList, prnt); System.out.println(Best.val + " / " + FinalTestList.length); float val = Best.val; float success = (100 * val / FinalTestList.length); return success; } } \end{verbatim} \subsection{Genetic Algorithm Code} \begin{verbatim} import java.util.Random; /** * @author arachlin * * To change this generated comment edit the template variable "typecomment": * Window>Preferences>Java>Templates. * To enable and disable the creation of type comments go to * Window>Preferences>Java>Code Generation. */ //Global Variables needed //Matrix of all rules //Reassign values after roulette wheel //Matrix of rules selected by roulette wheel //What type of breeding: //One-Point Crossover //int breeding_choice=1; //Two-Point Crossover int breeding_choice=2; //One-to-one //int breeding_choice=3; class rule { int[] array = new int[128]; int val; } public class GA { public static Random rand; static { rand = new java.util.Random();} public static void main(rule Rule) { int tot=0; rule[] tempRule = new rule[100]; rule[] tempRule2 = new rule[100]; EvalArray(Rule, tot); Roulette(Rule, tempRule, tempRule2, tot); for (int i=0; i<100; i++) { Mutation(tempRule2[i]); } } //Evaluate the quality of each rule (already done in CA) //Evaluate the total quality //Re-evaluate qualities as a proportion of total public static void EvalArray(rule Rule, int& tot) { for (int i=0; i<128; i++) { tot+=Rule[i].val; } } //Roulette Wheel //Use the evaluated quality to assign portions of the wheel //Random number generator //Store chosen rules in matrix public static void Roulette(rule Rule, rule tempRule, rule tempRule2, int tot) { int[] rnd = new int[100]; for (int c=0; c<100; c++) { rnd[c]=rand()%tot; } for (int j=0; j<100; j++) { int temp=0; int i=0; do { temp+=Rule[i].val; if (temp > rnd[i] || temp == rnd[i]) { tempRule[j]=Rule[i]; } i++; }while (i<100 && temp<rnd[i]); } for (int i=0; i<100; i++) { int one=rand()%tot; int two=rand()%tot; int var1,var2; int tempTot=0; for (int j=0; j<100; j++) { tempTot+=Rule[j]; if (tempTot>=one) { var1=j; } if (tempTot>=two) { var2=j; } } Breeding(Rule[var1], Rule[var2], tempRule2, i); } } //Breeding public static void Breeding(int[] Rule1, int[] Rule2, rule tempRule, n) { switch(breeding_choice) { case 1: One_Point_Crossover(Rule1, Rule2, tempRule, n) break; case 2: Two_Point_Crossover(Rule1, Rule2, tempRule, n) break; case 3: One_to_One(Rule1, Rule2, tempRule, n) break; } } //Crossover //One-Point public static void One_Point_Crossover(int[] Rule1, int[] Rule2, rule tempRule, n) { int[] t=new array[128]; int point=rand()%128; for (int i=0; i<128; i++) { if (i<point) { t[i]=Rule1[i]; } else { t[i]=Rule2[i]; } } tempRule[n]=t; } //Two-Point public static void Two_Point_Crossover(int[] Rule1, int[] Rule2, rule tempRule, n) { int[] t=new array[128]; int point1=rand()%128; int point2=rand()%128; if (point1<point2) { for (int i=0; i<128; i++) { if (i<point1) { t[i]=Rule1[i]; } else if(i<point2) { t[i]=Rule2[i]; } else { t[i]=Rule1[i]; } } } else { for (int i=0; i<128; i++) { if (i<point2) { t[i]=Rule1[i]; } else if(i<point1) { t[i]=Rule2[i]; } else { t[i]=Rule1[i]; } } } tempRule[n]=t; } //Random at each spot public static void One_to_one(int[] Rule1, int[] Rule2, rule tempRule, n) { int[] t=new array[128]; for (int i=0; i<128; i++) { int rnd=rand()%2; switch(rnd) { case 0: t[i]=Rule1[i]; break; case 1: t[i]=Rule2[i]; break; } } tempRule[n]=t; } //Mutation public static void Mutation(int[] Rule) { for (int i=0; i<128; i++) { int rnd=rand()%100; if (rnd == 0) { if (Rule[i] == 0) { Rule[i]=1; } else { Rule[i]=0; } } } } //Elitism public static void Elitism(int[] Rule, rule tempRule) { tempRule[0] = Rule; } } \end{verbatim} \section{References} \begin{verbatim} A technical paper: "Evolution via genetic algorithms" by Gary H Anthes; Computerworld. http://proquest.umi.com/pqdweb?Did=000000140685651&Fmt=4&Deli=1&Mtd=1&Idx=19&Sid=4&RQT=309 A technical paper: One student's attempt to solve the majority classification project and his project write-up. http://cs.gmu.edu/~sean/it910/CA.pdf Paper regarding cellular automatas and genetic algorithms with mention of the majority classification problem. http://www.iop.org/Books/CIL/HEC/pdf/ECH1_1.PDf Genetic Algorithm FAQs http://www-2.cs.cmu.edu/Groups/AI/html/faqs/ai/genetic/top.html Guide to Genetic Algorithms http://www.cs.qub.ac.uk/~M.Sullivan/ga/ga3.html Another guide to Genetic Algorithms http://chemdiv-www.nrl.navy.mil/6110/6112/chemometrics/practga.html Cellular automata basics http://cell-auto.com/ Modern cellular automatas http://www.collidoscope.com/modernca/ Very cool pictures of animated cellular automata systems http://www.bayarea.net/~maydwell/htdoc/ca/ The common interactive cellular automata titled the "Game of Life" http://world.std.com/~bgw/applets/1.02/Life/Life.html Another "Game of Life" page http://www.math.com/students/wonders/life/life.html A website to help deal with Java-based genetic algorithms http://www.aridolan.com/ga/gaa/gaa.html \end{verbatim} \end{document}


TechLab Page |