Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.io.BufferedReader;
- import java.io.File;
- import java.io.FileNotFoundException;
- import java.io.FileReader;
- import java.io.IOException;
- import java.util.List;
- public class Main {
- public static void main(String[] args) {
- Integer vel_pop = 0, broj_iteracija = 0;
- Double Pc = 0.0, Pm = 0.0;
- Double rješenje;
- try {
- File dat = new File("GA.txt");
- BufferedReader datoteka = new BufferedReader(new FileReader(dat));
- String linija;
- int i = 0;
- while ((linija = datoteka.readLine()) != null) {
- if (i == 0) {
- vel_pop = Integer.parseInt(linija.split("=")[1].trim());
- }
- if (i == 1) {
- Pc = Double.parseDouble((linija.split("=")[1]).trim());
- }
- if (i == 2) {
- Pm = Double.parseDouble((linija.split("=")[1]).trim());
- }
- if (i == 3) {
- broj_iteracija = Integer.parseInt(linija.split("=")[1].trim());
- }
- i++;
- }
- datoteka.close();
- }
- catch(FileNotFoundException e) {
- e.printStackTrace();
- }
- catch (IOException e) {
- e.printStackTrace();
- };
- List<Integer> populacija = Funkcije.stvoriPopulaciju(vel_pop);
- rješenje = Funkcije.maksimalnaDobrotaPopulacije(populacija);
- for(int i=0;i<broj_iteracija;i++) {
- System.out.println("ITERACIJA BROJ: "+ (i+1));
- List<Integer> populacijaNakonSelekcije = Funkcije.jednostavnaSelekcija(populacija);
- Double max=Funkcije.maksimalnaDobrotaPopulacije(populacijaNakonSelekcije);
- if(max>rješenje){
- rješenje=max;
- }
- System.out.println("Maksimalna vrijednost dobrote u populaciji: "+Funkcije.maksimalnaDobrotaPopulacije(populacijaNakonSelekcije));
- System.out.println("Prosječna vrijednost dobrote cijele populacije: "+ Funkcije.prosjecnaVrijednostDobrotePopulacije(populacijaNakonSelekcije));
- System.out.println("Vrijednosti dobrote svake jedinke: ");
- for(int j=0;j<populacijaNakonSelekcije.size();j++){
- System.out.println(" Jedinka "+populacijaNakonSelekcije.get(j)+" -> Dobrota: "+ Funkcije.dobrota(populacijaNakonSelekcije.get(j)));
- }
- }
- System.out.println("Globalno rješenje: "+ rješenje);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement