diff --git a/nbproject/build-impl.xml b/nbproject/build-impl.xml index 7637736..02ced93 100644 --- a/nbproject/build-impl.xml +++ b/nbproject/build-impl.xml @@ -54,43 +54,7 @@ is divided into following sections: - - - - - - - - - - - - - - - - - - - - - - - - - - Must set platform.home - Must set platform.bootcp - Must set platform.java - Must set platform.javac - - The J2SE Platform is not correctly set up. - Your active platform is: ${platform.active}, but the corresponding property "platforms.${platform.active}.home" is not found in the project's properties files. - Either open the project in the IDE and setup the Platform with the same name or add it manually. - For example like this: - ant -Duser.properties.file=<path_to_property_file> jar (where you put the property "platforms.${platform.active}.home" in a .properties file) - or ant -Dplatforms.${platform.active}.home=<path_to_JDK_home> jar (where no properties file is used) - + @@ -219,6 +183,15 @@ is divided into following sections: + + + + + + + + + @@ -244,7 +217,6 @@ is divided into following sections: - @@ -288,7 +260,7 @@ is divided into following sections: - + @@ -328,7 +300,7 @@ is divided into following sections: - + @@ -409,7 +381,7 @@ is divided into following sections: - + @@ -432,7 +404,7 @@ is divided into following sections: - + @@ -471,7 +443,7 @@ is divided into following sections: - + @@ -551,7 +523,7 @@ is divided into following sections: - + @@ -576,7 +548,7 @@ is divided into following sections: - + @@ -721,7 +693,7 @@ is divided into following sections: - + @@ -756,9 +728,6 @@ is divided into following sections: - - - @@ -774,9 +743,7 @@ is divided into following sections: - - - + @@ -801,7 +768,7 @@ is divided into following sections: - + @@ -828,7 +795,7 @@ is divided into following sections: - + @@ -1026,7 +993,7 @@ is divided into following sections: To run this application from the command line without Ant, try: - ${platform.java} -jar "${dist.jar.resolved}" + java -jar "${dist.jar.resolved}" @@ -1235,13 +1202,10 @@ is divided into following sections: - - - - + - + diff --git a/nbproject/genfiles.properties b/nbproject/genfiles.properties index f12a119..0f52c3b 100644 --- a/nbproject/genfiles.properties +++ b/nbproject/genfiles.properties @@ -1,8 +1,8 @@ -build.xml.data.CRC32=c399fd42 +build.xml.data.CRC32=aad47bb9 build.xml.script.CRC32=fc61a0c9 -build.xml.stylesheet.CRC32=8064a381@1.79.1.48 +build.xml.stylesheet.CRC32=8064a381@1.75.2.48 # This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml. # Do not edit this file. You may delete it but then the IDE will never regenerate such files for you. -nbproject/build-impl.xml.data.CRC32=c399fd42 -nbproject/build-impl.xml.script.CRC32=e1daa8b7 -nbproject/build-impl.xml.stylesheet.CRC32=05530350@1.79.1.48 +nbproject/build-impl.xml.data.CRC32=aad47bb9 +nbproject/build-impl.xml.script.CRC32=0563b4be +nbproject/build-impl.xml.stylesheet.CRC32=876e7a8f@1.75.2.48 diff --git a/nbproject/private/config.properties b/nbproject/private/config.properties new file mode 100644 index 0000000..e69de29 diff --git a/nbproject/private/private.properties b/nbproject/private/private.properties index 8f2b5b7..2abea7a 100644 --- a/nbproject/private/private.properties +++ b/nbproject/private/private.properties @@ -1,2 +1,6 @@ compile.on.save=true -user.properties.file=C:\\Users\\guilhermeferreira\\AppData\\Roaming\\NetBeans\\8.1\\build.properties +do.depend=false +do.jar=true +javac.debug=true +javadoc.preview=true +user.properties.file=C:\\Users\\Nicole\\AppData\\Roaming\\NetBeans\\8.0.1\\build.properties diff --git a/nbproject/private/private.xml b/nbproject/private/private.xml new file mode 100644 index 0000000..2eee429 --- /dev/null +++ b/nbproject/private/private.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/nbproject/project.properties b/nbproject/project.properties index 6e7e1f3..04edd1c 100644 --- a/nbproject/project.properties +++ b/nbproject/project.properties @@ -1,9 +1,10 @@ annotation.processing.enabled=true annotation.processing.enabled.in.editor=false -annotation.processing.processor.options= annotation.processing.processors.list= annotation.processing.run.all.processors=true annotation.processing.source.output=${build.generated.sources.dir}/ap-source-output +application.title=UniversityTimeTableScheduling +application.vendor=Nicole build.classes.dir=${build.dir}/classes build.classes.excludes=**/*.java,**/*.form # This directory is removed when the project is cleaned: @@ -26,6 +27,7 @@ dist.archive.excludes= dist.dir=dist dist.jar=${dist.dir}/UniversityTimeTableScheduling.jar dist.javadoc.dir=${dist.dir}/javadoc +endorsed.classpath= excludes= includes=** jar.compress=false @@ -58,7 +60,7 @@ main.class= manifest.file=manifest.mf meta.inf.dir=${src.dir}/META-INF mkdist.disabled=false -platform.active=JDK_1.8 +platform.active=default_platform run.classpath=\ ${javac.classpath}:\ ${build.classes.dir} diff --git a/nbproject/project.xml b/nbproject/project.xml index 57e21ef..7916984 100644 --- a/nbproject/project.xml +++ b/nbproject/project.xml @@ -4,7 +4,6 @@ UniversityTimeTableScheduling - diff --git a/src/package1/Individuo.java b/src/package1/Individuo.java index 7cc64d6..0814f08 100644 --- a/src/package1/Individuo.java +++ b/src/package1/Individuo.java @@ -642,6 +642,74 @@ public void alocar(Gene gene, int timeSlot, int codigoPeriodo){ } - + public int funcaoFitness (Individuo individuo) { + int nota = 9500; + + int pesoLacunasVazias = 1; + int pesoAlunosNaoMatriculados = 1; + int pesoProfessorOscioso = 1; + int pesoMateriaNaoAlocada = 1; + + int lacunasVazias = verificaLacunasVazias(individuo); + int alunosNaoMatriculados = verificaAlunosNaoMatriculados(); + int professoresOsciosos = verificaProfessoresOsciosos(ld.Professores); + int materiasNaoAlocadas = verificaMateriasNaoAlocadas(ld.Estudantes); + + nota = nota - pesoLacunasVazias*lacunasVazias - pesoAlunosNaoMatriculados*alunosNaoMatriculados + - pesoProfessorOscioso*professoresOsciosos - pesoMateriaNaoAlocada*materiasNaoAlocadas ; + + + return nota; + + } + + private int verificaLacunasVazias(Individuo individuo ) { + int lacunas = 0; + + for (int i = 0; i < individuo.qtdPeriodos; i++){ + for(int j = 0; j < individuo.qtdTimeSlots; j++){ + if(individuo.horario[j][i] == null){ + lacunas++; + + } + } + } + + return lacunas; + } + + private int verificaAlunosNaoMatriculados(List estudantes) { + int alunos = 0; + int disciplinas = 0; + + for(Estudante p : estudantes){ + for(Disciplina d : p.disciplinasACursar ){ + if(!p.disciplinasCursadas.contains(d)) + disciplinas++; + } + if(disciplinas == p.disciplinasACursar.size()){ + alunos++; + disciplinas = 0; + } + + + return alunos; + } + + private int verificaProfessoresOsciosos(List professores) { + int qtdProfessores = 0; + + for(Professor p : professores){ + if(p.TimeSlotsAlocados.isEmpty()){ + qtdProfessores++; + } + } + return qtdProfessores; + } + + private int verificaMateriasNaoAlocadas() { + int materias = 0; + return materias; + } }