Skip to main content

Advertisement

Log in

A symbiosis between population based incremental learning and LP-relaxation based parallel genetic algorithm for solving integer linear programming models

  • Special Issue Article
  • Published:
Computing Aims and scope Submit manuscript

Abstract

Solving Integer Linear Programming (ILP) models generally lies in the category of NP-hard problems and finding the optimal answer for large models is a computational challenge. Genetic algorithms are a family of metaheuristic algorithms capable of adjusting and redesigning parameters and operations according to the characteristics of ILP models. On the other hand, still the genetic algorithm performs a lot of operations to solve large models, and parallel processing is a suitable technique to tackle this problem. This paper introduces an LP-Relaxation based parallel genetic algorithm that uses a population-based incremental learning technique to presents an expandable solver for large ILP models derived from a behavioral synthesis of digital circuits. In the proposed algorithm, each chromosome provides a state subspace of possible solutions, and each generation is produced based on a probability vector as well as elitism. Our experiments verify the efficiency of the proposed algorithm on multicore platforms, as it outperformed four previous genetic algorithms for solving mixed integer programming problems. The proposed genetic algorithm solved 20 ILP models include up to 5183 int / binary decision variables in less than 20 min using four 16-core AMD Opteron 6386 SE processors. Also, the results indicate that for models with more than 4000 variables, the speedup and the efficiency of the proposed parallel genetic algorithm on 60 CPU cores is more than 18X and \(30\%\), respectively.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6

Similar content being viewed by others

References

  1. Abramson D, Randall M (1999) A simulated annealing code for general integer linear programs. Ann Oper Res 86:3–21

    Article  MathSciNet  MATH  Google Scholar 

  2. Ahn CW, Ramakrishna RS (2003) Elitism-based compact genetic algorithms. IEEE Trans Evol Comput 7(4):367–385

    Article  Google Scholar 

  3. Baluja S (1994) Population-based incremental learning. A method for integrating genetic search based function optimization and competitive learning. Tech. rep., Carnegie-Mellon Univ Pittsburgh Pa Dept Of Computer Science

  4. Baluja S, Caruana R (1995) Removing the genetics from the standard genetic algorithm. Machine learning proceedings. Elsevier, Amsterdam, pp 38–46

    Google Scholar 

  5. Bose A, Biswas T, Kuila P (2019) A novel genetic algorithm based scheduling for multi-core systems. Smart innovations in communication and computational sciences. Springer, New York, pp 45–54

    Chapter  Google Scholar 

  6. Castro PM, Harjunkoski I, Grossmann IE (2019) Discrete and continuous-time formulations for dealing with break periods: preemptive and non-preemptive scheduling. Eur J Oper Res 278(2):563–577

    Article  MathSciNet  MATH  Google Scholar 

  7. Chabini N, Wolf W (2005) Unification of scheduling, binding, and retiming to reduce power consumption under timings and resources constraints. IEEE Trans Very Large Scale Integr (VLSI) Syst 13(10):1113–1126

    Article  Google Scholar 

  8. CPLEX I (2014) Ilog cplex 12.6 optimization studio

  9. da Silva Palhares PH, da Cunha Brito L (2018) Constrained mixed integer programming solver based on the compact genetic algorithm. IEEE Lat Am Trans 16(5):1493–1498

    Article  Google Scholar 

  10. Deep K, Singh KP, Kansal ML, Mohan C (2009) A real coded genetic algorithm for solving integer and mixed integer optimization problems. Appl Math Comput 212(2):505–518

    MathSciNet  MATH  Google Scholar 

  11. Esmaeili MR, Zahiri SH, Razavi SM (2019) A novel method for high-level synthesis of datapaths in digital filters using a moth-flame optimization algorithm. Evol Intell 1–16

  12. Fallah MK, Mirhosseini M, Fazlali M, Daneshtalab M (2020) Scalable parallel genetic algorithm for solving large integer linear programming models derived from behavioral synthesis. In: 2020 28th euromicro international conference on parallel, distributed and network-based processing (PDP). pp 390–394

  13. Fallah MK, Fazlali M (2021) Parallel branch and bound algorithm for solving integer linear programming models derived from behavioral synthesis. Parallel Comput 101:102722. https://doi.org/10.1016/j.parco.2020.102722

    Article  MathSciNet  Google Scholar 

  14. Fazlali M, Fallah MK, Zolghadr M, Zakerolhosseini A (2009) A new datapath merging method for reconfigurable system. International workshop on applied reconfigurable computing. Springer, New York, pp 157–168

    Google Scholar 

  15. Fazlali M, Zakerolhosseini A, Gaydadjiev G (2012) Efficient datapath merging for the overhead reduction of run-time reconfigurable systems. J Supercomput 59(2):636–657

    Article  Google Scholar 

  16. Fazlali M, Zakerolhosseini A Sabeghi M, Bertels K, Gaydadjiev G (2009) Data path configuration time reduction for run-time reconfigurable systems. In: ERSA. pp 323–327

  17. Fazlali M, Zakerolhosseini A, Shahbahrami A, Gaydadjiev G (2009) High speed merged-datapath design for run-time reconfigurable systems. In: 2009 international conference on field-programmable technology. IEEE, pp 339–343

  18. Harik GR, Lobo FG, Goldberg DE (1999) The compact genetic algorithm. IEEE Trans Evol Comput 3(4):287–297

    Article  Google Scholar 

  19. Hosseinabadi AAR, Vahidi J, Saemi B, Sangaiah AK, Elhoseny M (2019) Extended genetic algorithm for solving open-shop scheduling problem. Soft Comput 23(13):5099–5116

    Article  Google Scholar 

  20. Jongen HT, Meer K, Triesch E (2007) Optimization theory. Springer, New York

    MATH  Google Scholar 

  21. Kadri RL, Boctor FF (2018) An efficient genetic algorithm to solve the resource-constrained project scheduling problem with transfer times: the single mode case. Eur J Oper Res 265(2):454–462

    Article  MathSciNet  MATH  Google Scholar 

  22. Karp RM (1972) Reducibility among combinatorial problems. Complexity of computer computations. Springer, New York, pp 85–103

    Chapter  Google Scholar 

  23. Kostikas K, Fragakis C (2004) Genetic programming applied to mixed integer programming. European conference on genetic programming. Springer, Neww York, pp 113–124

    Chapter  MATH  Google Scholar 

  24. Kumar A, Bayoumi M (1999) Multiple voltage-based scheduling methodology for low power in the high level synthesis. In: ISCAS’99. Proceedings of the 1999 IEEE international symposium on circuits and systems VLSI (Cat. No. 99CH36349), vol 1. IEEE, pp 371–374

  25. Li C, Bi Y, Benezeth Y, Ginhac D, Yang F (2018) High-level synthesis for fpgas: code optimization strategies for real-time image processing. J Real-Time Image Proc 14(3):701–712

    Article  Google Scholar 

  26. Mediabench (2019) http://mathstat.slu.edu/fritts/mediabench

  27. Micheli GD (1994) Synthesis and optimization of digital circuits. McGraw-Hill Higher Education, New York

    Google Scholar 

  28. Sampson JR (1976) Adaptation in natural and artificial systems (John H. Holland)

  29. Schafer BC, Wang Z (2019) High-level synthesis design space exploration: past, present, and future. IEEE Trans Comput Aided Des Integr Circuits Syst 39(10):2628–2639

    Article  Google Scholar 

  30. Taha HA (2014) Integer programming: theory, applications, and computations. Academic Press, Cambridge

    Google Scholar 

  31. Taher FN, Kishani M, Schafer BC (2018) Design and optimization of reliable hardware accelerators: leveraging the advantages of high-level synthesis. In: 2018 IEEE 24th international symposium on on-line testing and robust system design (IOLTS). IEEE, pp 232–235

  32. Tang X, Jiang T, Jones A, Banerjee P (2005) Behavioral synthesis of data-dominated circuits for minimal energy implementation. In: 18th international conference on VLSI design held jointly with 4th international conference on embedded systems design. IEEE, pp 267–273

  33. Williams A, Brown A, Baidas Z (2001) Optimisation in behavioural synthesis using hierarchical expansion: module ripping. Comput Digit Tech. 148(1):31–43

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Mahmood Fazlali.

Ethics declarations

Conflicts of interest

The authors declare that they have no conflict of interest.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Fallah, M.K., Fazlali, M. & Daneshtalab, M. A symbiosis between population based incremental learning and LP-relaxation based parallel genetic algorithm for solving integer linear programming models. Computing 105, 1121–1139 (2023). https://doi.org/10.1007/s00607-021-01004-x

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00607-021-01004-x

Keywords

Navigation