sandeshMC

Genetic Algorithm

Apr 1st, 2016
44
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.49 KB | None | 0 0
  1. package javaapplication1;
  2.  
  3. import java.util.Arrays;
  4.  
  5. public class JavaApplication1 {
  6.  
  7.     static int fitness[] = new int[4];
  8.     static int pop[] = new int[4];
  9.     static double probabilities[] = new double[4];
  10.     static double expectedCount[] = new double[4];
  11.     static int actualCount[] = new int[4];
  12.     static String binary[] = new String[4];
  13.  
  14.     static void calculateProbability() {
  15.         int sum = 0;
  16.         for (int i = 0; i < fitness.length; i++) {
  17.  
  18.             sum += fitness[i];
  19.         }
  20.         for (int i = 0; i < fitness.length; i++) {
  21.  
  22.             probabilities[i] = fitness[i] / sum;
  23.             expectedCount[i] = probabilities[i]*4;
  24.             actualCount[i] = (int)Math.round(expectedCount[i]);
  25.         }
  26.     }
  27.  
  28.     static void populationGenerator() {
  29.         for (int i = 0; i < pop.length; i++) {
  30.             pop[i] = (int) (Math.random() * 100) % 31;
  31.  
  32.             String s = Long.toBinaryString(pop[i]);
  33.             while (s.length() < 5) {
  34.                 s = "0" + s;
  35.             }
  36.             binary[i] = s;
  37.             fitness[i] = pop[i] * pop[i];
  38.         }
  39.         System.out.println(binary[3]);
  40.         calculateProbability();
  41.     }
  42.  
  43.     public static void main(String[] args) {
  44.         // TODO code application logic here
  45.         populationGenerator();
  46.         for(int i = 0 ; i < 4 ; i ++ ) {
  47.        
  48.         System.out.println(binary[i]+"  "+fitness[i]+"  "+probabilities[i]+"  "+expectedCount[i]+"  "+actualCount[i]);
  49.         }
  50.     }
  51. }
Add Comment
Please, Sign In to add comment