Publicação

Towards a high-performance implementation of the MCSFilter optimization algorithm

Ver documento

Detalhes bibliográficos
Resumo:Multistart Coordinate Search Filter (MCSFilter) is an optimization method suitable to find all minimizers – both local and global – of a non convex problem, with simple bounds or more generic constraints. Like many other optimization algorithms, it may be used in industrial contexts, where execution time may be critical in order to keep a production process within safe and expected bounds. MCSFilter was first implemented in MATLAB and later in Java (which introduced a significant performance gain). In this work, a comparison is made between these two implementations and a novel one in C that aims at further performance improvements. For the comparison, the problems addressed are bound constraint, with small dimension (between 2 and 10) and multiple local and global solutions. It is possible to conclude that the average time execution for each problem is considerable smaller when using the Java and C implementations, and that the current C implementation, though not yet fully optimized, already exhibits a significant speedup.
Autores principais:Araújo, Leonardo Oliveira
Outros Autores:Pacheco, Maria F.; Rufino, José; Fernandes, Florbela P.
Assunto:Optimization MCSFilter method MatLab C Java Performance
Ano:2021
País:Portugal
Tipo de documento:comunicação em conferência
Tipo de acesso:acesso restrito
Instituição associada:Instituto Politécnico de Bragança
Idioma:inglês
Origem:Biblioteca Digital do IPB
Descrição
Resumo:Multistart Coordinate Search Filter (MCSFilter) is an optimization method suitable to find all minimizers – both local and global – of a non convex problem, with simple bounds or more generic constraints. Like many other optimization algorithms, it may be used in industrial contexts, where execution time may be critical in order to keep a production process within safe and expected bounds. MCSFilter was first implemented in MATLAB and later in Java (which introduced a significant performance gain). In this work, a comparison is made between these two implementations and a novel one in C that aims at further performance improvements. For the comparison, the problems addressed are bound constraint, with small dimension (between 2 and 10) and multiple local and global solutions. It is possible to conclude that the average time execution for each problem is considerable smaller when using the Java and C implementations, and that the current C implementation, though not yet fully optimized, already exhibits a significant speedup.