Rodrigo Lankaites Pinheiro
An application programming interface with increased performance for optimisation problems data
Pinheiro, Rodrigo Lankaites; Landa-Silva, Dario; Qu, Rong; Constantino, Ademir Aparecido; Yanaga, Edson
Authors
DARIO LANDA SILVA DARIO.LANDASILVA@NOTTINGHAM.AC.UK
Professor of Computational Optimisation
RONG QU rong.qu@nottingham.ac.uk
Professor of Computer Science
Ademir Aparecido Constantino
Edson Yanaga
Abstract
An optimisation problem can have many forms and variants. It may consider different objectives, constraints, and variables. For that reason, providing a general application programming interface (API) to handle the problem data efficiently in all scenarios is impracticable. Nonetheless, on a R&D environment involving personnel from distinct backgrounds, having such an API can help with the development process because the team can focus on the research instead of implementations of data parsing, objective function calculation, and data structures. Also, some researchers might have a stronger background in programming than others, hence having a standard efficient API to handle the problem data improves reliability and productivity. This paper presents a design methodology to enable the development of efficient APIs to handle optimisation problems data based on a data-centric development framework. The proposed methodology involves the design of a data parser to handle the problem definition and data files and on a set of efficient data structures to hold the data in memory. Additionally, we bring three design patterns aimed to improve the performance of the API and techniques to improve the memory access by the user application. Also, we present the concepts of a Solution Builder that can manage solutions objects in memory better than built-in garbage collectors and provide an integrated objective function so that researchers can easily compare solutions from different solving techniques. Finally, we describe the positive results of employing a tailored API to a project involving the development of optimisation solutions for workforce scheduling and routing problems.
Citation
Pinheiro, R. L., Landa-Silva, D., Qu, R., Constantino, A. A., & Yanaga, E. (in press). An application programming interface with increased performance for optimisation problems data. Journal of Management Analytics, 3(4), https://doi.org/10.1080/23270012.2016.1233514
Journal Article Type | Article |
---|---|
Acceptance Date | Sep 4, 2016 |
Online Publication Date | Nov 30, 2016 |
Deposit Date | Nov 14, 2016 |
Publicly Available Date | Nov 30, 2016 |
Journal | Journal of Management Analytics |
Electronic ISSN | 2327-0039 |
Publisher | Taylor and Francis |
Peer Reviewed | Peer Reviewed |
Volume | 3 |
Issue | 4 |
DOI | https://doi.org/10.1080/23270012.2016.1233514 |
Keywords | Optimisation Problems, Data API, Efficient Data Structures, Research and Development Projects |
Public URL | https://nottingham-repository.worktribe.com/output/826468 |
Publisher URL | http://www.tandfonline.com/doi/abs/10.1080/23270012.2016.1233514 |
Additional Information | This is an Accepted Manuscript of an article published by Taylor & Francis in Journal of Management Analytics on 30 November 2016, available online: http://www.tandfonline.com/10.1080/23270012.2016.1233514 |
Contract Date | Nov 14, 2016 |
Files
JTMA16.pdf
(977 Kb)
PDF
You might also like
Local-global methods for generalised solar irradiance forecasting
(2024)
Journal Article
An agent based modelling approach for the office space allocation problem
(2018)
Presentation / Conference Contribution
Lookahead policy and genetic algorithm for solving nurse rostering problems
(2018)
Presentation / Conference Contribution
Downloadable Citations
About Repository@Nottingham
Administrator e-mail: discovery-access-systems@nottingham.ac.uk
This application uses the following open-source libraries:
SheetJS Community Edition
Apache License Version 2.0 (http://www.apache.org/licenses/)
PDF.js
Apache License Version 2.0 (http://www.apache.org/licenses/)
Font Awesome
SIL OFL 1.1 (http://scripts.sil.org/OFL)
MIT License (http://opensource.org/licenses/mit-license.html)
CC BY 3.0 ( http://creativecommons.org/licenses/by/3.0/)
Powered by Worktribe © 2024
Advanced Search