{"id":1126,"date":"2019-03-08T16:26:42","date_gmt":"2019-03-08T19:26:42","guid":{"rendered":"https:\/\/sbia.org.br\/lnlm\/?page_id=1126"},"modified":"2019-03-08T16:26:42","modified_gmt":"2019-03-08T19:26:42","slug":"vol17-no1-art4","status":"publish","type":"page","link":"https:\/\/sbia.org.br\/lnlm\/publicacoes\/vol17-no1\/vol17-no1-art4\/","title":{"rendered":"A TOOL FOR CREATING PARALLEL SWARM ALGORITHMS AUTOMATICALLY ON MULTI-CORE COMPUTERS"},"content":{"rendered":"<p><strong>T\u00edtulo:\u00a0<\/strong>A TOOL FOR CREATING PARALLEL SWARM ALGORITHMS AUTOMATICALLY ON MULTI-CORE COMPUTERS<\/p>\n<p><strong>Autores:<\/strong> Jo\u00e3o Pedro Augusto Costa e Omar Andres Carmona Cortes<\/p>\n<p align=\"justify\">\n<p><strong>Resumo:<\/strong> Meta-heuristics are usually bio-inspired algorithms (based on genes or social behaviors) that are used for solving optimization problems in a variety of fields and applications. The basic principle of a meta-heuristic, such as genetic algorithms, differential evolutions, particle swarm optimization, etc., is to simulate the pressure that the environment applies to individuals resulting in the survival of the best ones. Regardless of which meta-heuristic is being used, the more complex the problem, the more time consuming the algorithm. In this context, parallel computing represents an attractive way of tackling the necessity for computational power. On the other hand, parallel computing introduces new issues that the programmers have to deal with, such as synchronization and the proper exploration of parallel algorithms\/models. To avoid these problems, and at the same time, to provide a fast development of parallel swarm algorithms, this work presents a tool for creating parallel code using Parallel Particle Swarm Optimization (PSO) Algorithms in Java. The generator considers three models of parallelism: master-slaves, island and hierarchical. Experiments in the created code showed that a speedup of 5.3 could be reached in the Island model with 2000 iterations using Griewank&#8217;s function. Moreover, using a cost estimation model (COCOMO) we showed that our tool could save from 4.4 to 14.5 person\/month on programming effort.<\/p>\n<p><strong>Palavras-chave:<\/strong> Particle swarm optimization, Parallel computing, Automatic code generation, Programming effort.<\/p>\n<p><strong>P\u00e1ginas:<\/strong> 9<\/p>\n<p><strong>C\u00f3digo DOI:<\/strong> <a href=\"http:\/\/dx.doi.org\/10.21528\/LNLM-vol17-no1-art4\">10.21528\/LNLM-vol17-no1-art4<\/a><\/p>\n<p><strong>Artigo em PDF:<\/strong> <a href=\"https:\/\/sbia.org.br\/lnlm\/wp-content\/uploads\/sites\/4\/2019\/03\/vol17-no1-art4.pdf\">vol17-no1-art4.pdf<\/a><\/p>\n<p><strong>Arquivo BibTex:<\/strong> <a href=\"https:\/\/sbia.org.br\/lnlm\/wp-content\/uploads\/sites\/4\/2019\/03\/vol17-no1-art4.bib\">vol17-no1-art4.bib<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>T\u00edtulo:\u00a0A TOOL FOR CREATING PARALLEL SWARM ALGORITHMS AUTOMATICALLY ON MULTI-CORE COMPUTERS Autores: Jo\u00e3o Pedro Augusto Costa e Omar Andres Carmona Cortes Resumo: Meta-heuristics are usually bio-inspired algorithms (based on genes or social behaviors) that are used for solving optimization problems <a href=\"https:\/\/sbia.org.br\/lnlm\/publicacoes\/vol17-no1\/vol17-no1-art4\/\" class=\"read-more\">Read More &#8230;<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":1115,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-1126","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.9 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>A TOOL FOR CREATING PARALLEL SWARM ALGORITHMS AUTOMATICALLY ON MULTI-CORE COMPUTERS - Learning and NonLinear Models<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/sbia.org.br\/lnlm\/publicacoes\/vol17-no1\/vol17-no1-art4\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"A TOOL FOR CREATING PARALLEL SWARM ALGORITHMS AUTOMATICALLY ON MULTI-CORE COMPUTERS - Learning and NonLinear Models\" \/>\n<meta property=\"og:description\" content=\"T\u00edtulo:\u00a0A TOOL FOR CREATING PARALLEL SWARM ALGORITHMS AUTOMATICALLY ON MULTI-CORE COMPUTERS Autores: Jo\u00e3o Pedro Augusto Costa e Omar Andres Carmona Cortes Resumo: Meta-heuristics are usually bio-inspired algorithms (based on genes or social behaviors) that are used for solving optimization problems Read More ...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/sbia.org.br\/lnlm\/publicacoes\/vol17-no1\/vol17-no1-art4\/\" \/>\n<meta property=\"og:site_name\" content=\"Learning and NonLinear Models\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. tempo de leitura\" \/>\n\t<meta name=\"twitter:data1\" content=\"1 minuto\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/sbia.org.br\/lnlm\/publicacoes\/vol17-no1\/vol17-no1-art4\/\",\"url\":\"https:\/\/sbia.org.br\/lnlm\/publicacoes\/vol17-no1\/vol17-no1-art4\/\",\"name\":\"A TOOL FOR CREATING PARALLEL SWARM ALGORITHMS AUTOMATICALLY ON MULTI-CORE COMPUTERS - Learning and NonLinear Models\",\"isPartOf\":{\"@id\":\"https:\/\/sbia.org.br\/lnlm\/#website\"},\"datePublished\":\"2019-03-08T19:26:42+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/sbia.org.br\/lnlm\/publicacoes\/vol17-no1\/vol17-no1-art4\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/sbia.org.br\/lnlm\/publicacoes\/vol17-no1\/vol17-no1-art4\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/sbia.org.br\/lnlm\/publicacoes\/vol17-no1\/vol17-no1-art4\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Browse issues\",\"item\":\"https:\/\/sbia.org.br\/lnlm\/publicacoes\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Learning &#038; Nonlinear Models &#8211; L&#038;NLM &#8211; Volume 17 &#8211; N\u00famero 1\",\"item\":\"https:\/\/sbia.org.br\/lnlm\/publicacoes\/vol17-no1\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"A TOOL FOR CREATING PARALLEL SWARM ALGORITHMS AUTOMATICALLY ON MULTI-CORE COMPUTERS\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/sbia.org.br\/lnlm\/#website\",\"url\":\"https:\/\/sbia.org.br\/lnlm\/\",\"name\":\"Learning and NonLinear Models\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/sbia.org.br\/lnlm\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/sbia.org.br\/lnlm\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-BR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/sbia.org.br\/lnlm\/#organization\",\"name\":\"Learning and NonLinear Models\",\"url\":\"https:\/\/sbia.org.br\/lnlm\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/sbia.org.br\/lnlm\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/sbia.org.br\/lnlm\/wp-content\/uploads\/2021\/07\/logo-lnlm.png\",\"contentUrl\":\"https:\/\/sbia.org.br\/lnlm\/wp-content\/uploads\/2021\/07\/logo-lnlm.png\",\"width\":398,\"height\":94,\"caption\":\"Learning and NonLinear Models\"},\"image\":{\"@id\":\"https:\/\/sbia.org.br\/lnlm\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"A TOOL FOR CREATING PARALLEL SWARM ALGORITHMS AUTOMATICALLY ON MULTI-CORE COMPUTERS - Learning and NonLinear Models","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/sbia.org.br\/lnlm\/publicacoes\/vol17-no1\/vol17-no1-art4\/","og_locale":"pt_BR","og_type":"article","og_title":"A TOOL FOR CREATING PARALLEL SWARM ALGORITHMS AUTOMATICALLY ON MULTI-CORE COMPUTERS - Learning and NonLinear Models","og_description":"T\u00edtulo:\u00a0A TOOL FOR CREATING PARALLEL SWARM ALGORITHMS AUTOMATICALLY ON MULTI-CORE COMPUTERS Autores: Jo\u00e3o Pedro Augusto Costa e Omar Andres Carmona Cortes Resumo: Meta-heuristics are usually bio-inspired algorithms (based on genes or social behaviors) that are used for solving optimization problems Read More ...","og_url":"https:\/\/sbia.org.br\/lnlm\/publicacoes\/vol17-no1\/vol17-no1-art4\/","og_site_name":"Learning and NonLinear Models","twitter_card":"summary_large_image","twitter_misc":{"Est. tempo de leitura":"1 minuto"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/sbia.org.br\/lnlm\/publicacoes\/vol17-no1\/vol17-no1-art4\/","url":"https:\/\/sbia.org.br\/lnlm\/publicacoes\/vol17-no1\/vol17-no1-art4\/","name":"A TOOL FOR CREATING PARALLEL SWARM ALGORITHMS AUTOMATICALLY ON MULTI-CORE COMPUTERS - Learning and NonLinear Models","isPartOf":{"@id":"https:\/\/sbia.org.br\/lnlm\/#website"},"datePublished":"2019-03-08T19:26:42+00:00","breadcrumb":{"@id":"https:\/\/sbia.org.br\/lnlm\/publicacoes\/vol17-no1\/vol17-no1-art4\/#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/sbia.org.br\/lnlm\/publicacoes\/vol17-no1\/vol17-no1-art4\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/sbia.org.br\/lnlm\/publicacoes\/vol17-no1\/vol17-no1-art4\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Browse issues","item":"https:\/\/sbia.org.br\/lnlm\/publicacoes\/"},{"@type":"ListItem","position":2,"name":"Learning &#038; Nonlinear Models &#8211; L&#038;NLM &#8211; Volume 17 &#8211; N\u00famero 1","item":"https:\/\/sbia.org.br\/lnlm\/publicacoes\/vol17-no1\/"},{"@type":"ListItem","position":3,"name":"A TOOL FOR CREATING PARALLEL SWARM ALGORITHMS AUTOMATICALLY ON MULTI-CORE COMPUTERS"}]},{"@type":"WebSite","@id":"https:\/\/sbia.org.br\/lnlm\/#website","url":"https:\/\/sbia.org.br\/lnlm\/","name":"Learning and NonLinear Models","description":"","publisher":{"@id":"https:\/\/sbia.org.br\/lnlm\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/sbia.org.br\/lnlm\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-BR"},{"@type":"Organization","@id":"https:\/\/sbia.org.br\/lnlm\/#organization","name":"Learning and NonLinear Models","url":"https:\/\/sbia.org.br\/lnlm\/","logo":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/sbia.org.br\/lnlm\/#\/schema\/logo\/image\/","url":"https:\/\/sbia.org.br\/lnlm\/wp-content\/uploads\/2021\/07\/logo-lnlm.png","contentUrl":"https:\/\/sbia.org.br\/lnlm\/wp-content\/uploads\/2021\/07\/logo-lnlm.png","width":398,"height":94,"caption":"Learning and NonLinear Models"},"image":{"@id":"https:\/\/sbia.org.br\/lnlm\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/sbia.org.br\/lnlm\/wp-json\/wp\/v2\/pages\/1126","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sbia.org.br\/lnlm\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/sbia.org.br\/lnlm\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/sbia.org.br\/lnlm\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sbia.org.br\/lnlm\/wp-json\/wp\/v2\/comments?post=1126"}],"version-history":[{"count":0,"href":"https:\/\/sbia.org.br\/lnlm\/wp-json\/wp\/v2\/pages\/1126\/revisions"}],"up":[{"embeddable":true,"href":"https:\/\/sbia.org.br\/lnlm\/wp-json\/wp\/v2\/pages\/1115"}],"wp:attachment":[{"href":"https:\/\/sbia.org.br\/lnlm\/wp-json\/wp\/v2\/media?parent=1126"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}