{"id":6541,"date":"2021-02-24T09:28:12","date_gmt":"2021-02-24T09:28:12","guid":{"rendered":"http:\/\/141.23.68.248\/wp\/?page_id=6541"},"modified":"2021-02-25T02:46:06","modified_gmt":"2021-02-25T02:46:06","slug":"genetic-algorithm-nsga-ii","status":"publish","type":"page","link":"http:\/\/141.23.68.248\/wp\/?page_id=6541","title":{"rendered":"Genetic algorithm NSGA-II"},"content":{"rendered":"<p>The present multi-objective optimization problem of maintenance planning is solved by applying a genetic algorithm. A genetic algorithm, as explained in [1] is understood as a search heuristic identifying the fittest individuals from a population. This is done over the course of multiple generations with increasing fitness of the individuals from one generation to the following. Typically, genetic algorithms consist of the following five phases.<\/p>\n<p><strong>Initial population:<\/strong><\/p>\n<p style=\"padding-left: 30px;\">individuals characterized by variables (\u201cgenes\u201d) are forming solution (\u201cchromosomes\u201d) to the optimization problem<\/p>\n<p><strong>Fitness function:<\/strong><\/p>\n<p style=\"padding-left: 30px;\">fitness scores are given to the individuals based on the defined assessment criteria<\/p>\n<p><strong>Selection:<\/strong><\/p>\n<p style=\"padding-left: 30px;\">the fittest pairs of individuals (parents) are selected, and their genes passed to the next generation<\/p>\n<p><strong>Crossover:<\/strong><\/p>\n<p style=\"padding-left: 30px;\">a random crossover point is chosen within the genes for each pair of parents and an offspring is created by exchanging the parent genes among themselves until the crossover point and added to the population<\/p>\n<p><strong>Mutation:<\/strong><\/p>\n<p style=\"padding-left: 30px;\">some bits in the chromosomes of the new offspring have a low random probability and are mutated to maintain diversity in the population and prevent premature convergence<\/p>\n<p>To this end, the NSGA-II algorithm is used. It applies a modified mating and survival selection, and the individuals are selected frontwise based on crowding distance [2]. The frontwise selection happens by applying minimization to the fitness function to approximate its pareto front and pareto set [3].<\/p>\n<p>The following figure visualizes a representation of the NSGA-II algorithm [3].<\/p>\n<p><a href=\"http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2021\/02\/nsga2.png\"><img loading=\"lazy\" decoding=\"async\" class=\" size-full wp-image-6543 aligncenter\" src=\"http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2021\/02\/nsga2.png\" alt=\"NSGA-II\" width=\"573\" height=\"288\" srcset=\"http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2021\/02\/nsga2.png 573w, http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2021\/02\/nsga2-300x151.png 300w, http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2021\/02\/nsga2-520x261.png 520w\" sizes=\"auto, (max-width: 573px) 100vw, 573px\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<hr \/>\n<p><strong>References<\/strong><\/p>\n<h6>[1] <a href=\"https:\/\/towardsdatascience.com\/introduction-to-genetic-algorithms-including-example-code-e396e98d8bf3\">https:\/\/towardsdatascience.com\/introduction-to-genetic-algorithms-including-example-code-e396e98d8bf3<\/a><\/h6>\n<h6>[2] <a href=\"https:\/\/pymoo.org\/algorithms\/nsga2.html\">https:\/\/pymoo.org\/algorithms\/nsga2.html<\/a><\/h6>\n<h6>[3] <a href=\"https:\/\/esa.github.io\/pagmo2\/docs\/cpp\/algorithms\/nsga2.html\">https:\/\/esa.github.io\/pagmo2\/docs\/cpp\/algorithms\/nsga2.html<\/a><\/h6>\n<hr \/>\n<p><strong>Navigation<\/strong><\/p>\n<p><a title=\"Group 3\" href=\"http:\/\/141.23.68.248\/wp\/?page_id=4319\">Home\u00a0<\/a><\/p>\n<p><a title=\"Integrated maintenance plan by multi-objective optimization\" href=\"http:\/\/141.23.68.248\/wp\/?page_id=4396\">Integrated maintenance plan by multi-objective optimization<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>The present multi-objective optimization problem of maintenance planning is solved by applying a genetic algorithm. A genetic algorithm, as explained in [1] is understood as a search heuristic identifying the fittest individuals from a population.<a class=\"read-more\" href=\"http:\/\/141.23.68.248\/wp\/?page_id=6541\">Continue reading<\/a><\/p>\n","protected":false},"author":95,"featured_media":0,"parent":4396,"menu_order":0,"comment_status":"closed","ping_status":"open","template":"page-templates\/page_fullwidth.php","meta":{"footnotes":""},"class_list":["post-6541","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"http:\/\/141.23.68.248\/wp\/index.php?rest_route=\/wp\/v2\/pages\/6541","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/141.23.68.248\/wp\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"http:\/\/141.23.68.248\/wp\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"http:\/\/141.23.68.248\/wp\/index.php?rest_route=\/wp\/v2\/users\/95"}],"replies":[{"embeddable":true,"href":"http:\/\/141.23.68.248\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=6541"}],"version-history":[{"count":7,"href":"http:\/\/141.23.68.248\/wp\/index.php?rest_route=\/wp\/v2\/pages\/6541\/revisions"}],"predecessor-version":[{"id":7674,"href":"http:\/\/141.23.68.248\/wp\/index.php?rest_route=\/wp\/v2\/pages\/6541\/revisions\/7674"}],"up":[{"embeddable":true,"href":"http:\/\/141.23.68.248\/wp\/index.php?rest_route=\/wp\/v2\/pages\/4396"}],"wp:attachment":[{"href":"http:\/\/141.23.68.248\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=6541"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}