Skip to main content
Log in

A hybrid energy-aware algorithm for virtual machine placement in cloud computing

  • Regular Paper
  • Published:
Computing Aims and scope Submit manuscript

Abstract

Virtual Machine Placement (VMP) plays a significant role in improving efficiency of Cloud Data Center (CDC). With the dramatic increase in the use of cloud computing, it seems necessary to apply effective algorithms to reduce the power consumption of CDC. VMP is known as a NP-Hard problem that cannot be solved by deterministic algorithms in polynomial time. In this paper, an algorithm named Combinated Random Best First Fit (CRBFF) is proposed with the aim of increasing the Quality of Service (QoS), in which Virtual Machines (VMs) are optimally placed on heterogeneous Physical Machines (PMs). The effectiveness of CRBFF is evaluated by different metrics on Google Compute Engine (GCE), Amazon Web Service Elastic Compute Cloud (AWS EC2) and Microsoft Azure scenarios and the results show that CRBFF performs better than other common algorithms.

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
Algorithm 1
Fig. 2

Similar content being viewed by others

Code availability

The proposed algorithm code in C++ is available at https://github.com/MalekYousefi/CRBFF.

References

  1. Buyya R, Yeo CS, Venugopal S, Broberg J, Brandic I (2009) Cloud computing and emerging it platforms: vision, hype, and reality for delivering computing as the 5th utility. Futur Gener Comput Syst 25(6):599–616

    Article  Google Scholar 

  2. Xu M, Tian W, Buyya R (2017) A survey on load balancing algorithms for virtual machines placement in cloud computing. Concurr Comput Pract Exp 29(12):4123

    Article  Google Scholar 

  3. Azizi S, Shojafar M, Abawajy J, Buyya R (2020) Grvmp: a greedy randomized algorithm for virtual machine placement in cloud data centers. IEEE Syst J 15(2):2571–2582

    Article  Google Scholar 

  4. Peake J, Amos M, Costen N, Masala G, Lloyd H (2022) Paco-vmp: parallel ant colony optimization for virtual machine placement. Futur Gener Comput Syst 129:174–186

    Article  Google Scholar 

  5. Fatima A, Javaid N, Sultana T, Hussain W, Bilal M, Shabbir S, Asim Y, Akbar M, Ilahi M (2018) Virtual machine placement via bin packing in cloud data centers. Electronics 7(12):389

    Article  Google Scholar 

  6. Lin W, Wu W, He L (2019) An on-line virtual machine consolidation strategy for dual improvement in performance and energy conservation of server clusters in cloud data centers. IEEE Trans Serv Comput 15(2):766–777

    Article  Google Scholar 

  7. Pourghebleh B, Aghaei Anvigh A, Ramtin AR, Mohammadi B (2021) The importance of nature-inspired meta-heuristic algorithms for solving virtual machine consolidation problem in cloud environments. Clust Comput 24(3):2673–2696

    Article  Google Scholar 

  8. Lee S, Panigrahy R, Prabhakaran V, Ramasubramanian V, Talwar K, Uyeda L, Wieder U (2011) Validating heuristics for virtual machines consolidation. Microsoft Res MSR-TR-2011-9, 1–14

  9. Pearl J (1984) Heuristics: intelligent search strategies for computer problem solving. Addison-Wesley Longman Publishing Co., Inc., Boston

    Google Scholar 

  10. Blum C, Roli A (2003) Metaheuristics in combinatorial optimization: overview and conceptual comparison. ACM Comput Surv 35(3):268–308

    Article  Google Scholar 

  11. Keller G, Tighe M, Lutfiyya H, Bauer M (2012) An analysis of first fit heuristics for the virtual machine relocation problem. In: 2012 8th international conference on network and service management (cnsm) and 2012 workshop on systems virtualiztion management (svm). IEEE, pp 406–413

  12. Wei C, Hu Z-H, Wang Y-G (2020) Exact algorithms for energy-efficient virtual machine placement in data centers. Futur Gener Comput Syst 106:77–91

    Article  Google Scholar 

  13. Albers S, Mitzenmacher M (2000) Average-case analyses of first fit and random fit bin packing. Random Struct Algorithms 16(3):240–259

    Article  MathSciNet  Google Scholar 

  14. Brahmam MG, Anand RV (2023) An investigation of consolidating virtual servers and data centers based on energy consumptions using various algorithms. In: 2023 international conference on inventive computation technologies (ICICT). IEEE, pp 1521–1528

  15. Kong Y, He Y, Abnoosian K (2022) Nature-inspired virtual machine placement mechanisms: a systematic review. Concurr Comput Pract Exp 34(11):6900

    Article  Google Scholar 

  16. Bose A, Nag S (2022) An overview of the state-of-the-art virtual machine placement algorithms for green cloud data centres. Asia Pac J Manag Technol 3(1):1–12

    Google Scholar 

  17. Zhang X, Wu T, Chen M, Wei T, Zhou J, Hu S, Buyya R (2019) Energy-aware virtual machine allocation for cloud with resource reservation. J Syst Softw 147:147–161

    Article  Google Scholar 

  18. Wang H, Tianfield H (2018) Energy-aware dynamic virtual machine consolidation for cloud datacenters. IEEE Access 6:15259–15273

    Article  Google Scholar 

  19. Speitkamp B, Bichler M (2010) A mathematical programming approach for server consolidation problems in virtualized data centers. IEEE Trans Serv Comput 3(4):266–278

    Article  Google Scholar 

  20. Beloglazov A, Buyya R (2012) Optimal online deterministic algorithms and adaptive heuristics for energy and performance efficient dynamic consolidation of virtual machines in cloud data centers. Concurr Comput Pract Exp 24(13):1397–1420

    Article  Google Scholar 

  21. Rao KS, Thilagam PS (2015) Heuristics based server consolidation with residual resource defragmentation in cloud data centers. Futur Gener Comput Syst 50:87–98

    Article  Google Scholar 

  22. Li X, Qian Z, Lu S, Wu J (2013) Energy efficient virtual machine placement algorithm with balanced and improved resource utilization in a data center. Math Comput Model 58(5–6):1222–1235

    Article  MathSciNet  Google Scholar 

  23. Wang X, Liu Z (2012) An energy-aware vms placement algorithm in cloud computing environment. In: 2012 second international conference on intelligent system design and engineering application. IEEE, pp 627–630

  24. Song W, Xiao Z, Chen Q, Luo H (2013) Adaptive resource provisioning for the cloud using online bin packing. IEEE Trans Comput 63(11):2647–2660

    Article  MathSciNet  Google Scholar 

  25. Katal A, Choudhury T, Dahiya S (2023) Energy optimized container placement for cloud data centers: a meta-heuristic approach. J Supercomput 80:98–140

    Article  Google Scholar 

  26. Shirvani MH, Seifhosseini S (2023) Power management of cloud datacenter in infrastructure level via efficient virtual machine placement by utilizing hybrid genetic algorithm. In: 2023 international symposium on signals, circuits and systems (ISSCS). IEEE, pp 1–4

  27. Mukhija L, Sachdeva R (2023) An effective mechanism for virtual machine placement using cuckoo search. In: 2023 2nd edition of IEEE Delhi section flagship conference (DELCON). IEEE, pp 1–5

  28. Singh AK, Swain SR, Saxena D, Lee C-N (2023) A bio-inspired virtual machine placement toward sustainable cloud resource management. IEEE Syst J

  29. Javadi-Moghaddam S-M, Dehghani Z (2023) Virtual machine placement in cloud using artificial bee colony and imperialist competitive algorithm. Int J Electr Comput Eng 13(4):4743–4751

    Google Scholar 

  30. Feng Y, Li C, Tu B (2023) A novel discrete bi-objective optimization method for virtual machine placement. In: 2022 IEEE 28th international conference on parallel and distributed systems (ICPADS). IEEE, pp 617–624

  31. Singh AK, Swain SR, Lee CN (2023) A metaheuristic virtual machine placement framework toward power efficiency of sustainable cloud environment. Soft Comput 27(7):3817–3828

    Article  Google Scholar 

  32. Guo P, Liu M, Xue Z (2018) A pso-based energy-efficient fault-tolerant static scheduling algorithm for real-time tasks in clouds. In: 2018 IEEE 4th international conference on computer and communications (ICCC). IEEE, pp 2537–2541

  33. Zhang W, Chen X, Jiang J (2020) A multi-objective optimization method of initial virtual machine fault-tolerant placement for star topological data centers of cloud systems. Tsinghua Sci Technol 26(1):95–111

    Article  Google Scholar 

  34. Alharbi F, Tian Y-C, Tang M, Zhang W-Z, Peng C, Fei M (2019) An ant colony system for energy-efficient dynamic virtual machine placement in data centers. Expert Syst Appl 120:228–238

    Article  Google Scholar 

  35. Abohamama AS, Hamouda E (2020) A hybrid energy-aware virtual machine placement algorithm for cloud environments. Expert Syst Appl 150:113306

    Article  Google Scholar 

  36. Tang Z, Mo Y, Li K, Li K (2014) Dynamic forecast scheduling algorithm for virtual machine placement in cloud computing environment. J Supercomput 70:1279–1296

    Article  Google Scholar 

  37. Hieu NT, Di Francesco M, Ylä-Jääski A (2017) Virtual machine consolidation with multiple usage prediction for energy-efficient cloud data centers. IEEE Trans Serv Comput 13(1):186–199

    Article  Google Scholar 

  38. Zeng J, Ding D, Kang K, Xie H, Yin Q (2022) Adaptive drl-based virtual machine consolidation in energy-efficient cloud data center. IEEE Trans Parallel Distrib Syst 33(11):2991–3002

    Google Scholar 

  39. Bharathi PD, Prakash P, Kiran MVK (2017) Virtual machine placement strategies in cloud computing. In: 2017 innovations in power and advanced computing technologies (i-PACT). IEEE, pp 1–7

  40. Wu J, Shen H (2017) Efficient algorithms for vm placement in cloud data center. In: Proceedings of the parallel architecture, algorithm and programming: 8th international symposium, PAAP 2017, Haikou, China, June 17–18, 2017, vol 8. Springer, pp 353–365

  41. Chekuri C, Khanna S (2004) On multidimensional packing problems. SIAM J Comput 33(4):837–851

    Article  MathSciNet  Google Scholar 

  42. Dong J, Jin X, Wang H, Li Y, Zhang P, Cheng S (2013) Energy-saving virtual machine placement in cloud data centers. In: 2013 13th IEEE/ACM international symposium on cluster, cloud, and grid computing. IEEE, pp 618–624

  43. Gao Y, Guan H, Qi Z, Hou Y, Liu L (2013) A multi-objective ant colony system algorithm for virtual machine placement in cloud computing. J Comput Syst Sci 79(8):1230–1242

    Article  MathSciNet  Google Scholar 

  44. Lee YC, Zomaya AY (2012) Energy efficient utilization of resources in cloud computing systems. J Supercomput 60:268–280

    Article  Google Scholar 

  45. Abdel-Basset M, Abdle-Fatah L, Sangaiah AK (2019) An improved lévy based whale optimization algorithm for bandwidth-efficient virtual machine placement in cloud computing environment. Clust Comput 22:8319–8334

    Article  Google Scholar 

  46. Mandal CA, Chakrabarti PP, Ghose S (1998) Complexity of fragmentable object bin packing and an application. Comput Math Appl 35(11):91–97

    Article  MathSciNet  Google Scholar 

  47. Karp RM (2010) Reducibility among combinatorial problems. In: Jünger M, Liebling TM, Naddef D, Nemhauser GL, Pulleyblank WR, Reinelt G, Rinaldi G, Wolsey LA (eds) 50 Years of integer programming 1958–2008 - from the early years to the state-of-the-art. Springer, Berlin, pp 219–241. https://doi.org/10.1007/978-3-540-68279-0_8

    Chapter  Google Scholar 

  48. Yousefi M (2023) Combinated random best first fit. https://github.com/MalekYousefi/CRBFF

  49. Sampaio AM, Barbosa JG, Prodan R (2015) Piasa: a power and interference aware resource management strategy for heterogeneous workloads in cloud data centers. Simul Model Pract Theory 57:142–160

    Article  Google Scholar 

  50. GCE Dataset (2019) https://cloud.google.com/blog/products/compute/google-compute-engine-gets-new-e2-vm-machine-types

  51. Azizi S, Zandsalimi M, Li D (2020) An energy-efficient algorithm for virtual machine placement optimization in cloud data centers. Clust Comput 23:3421–3434

    Article  Google Scholar 

  52. Azure Dataset (2022) https://learn.microsoft.com/en-us/azure/virtual-machines/sizes-previous-gen

  53. Krishnan S, Gonzalez JLU, Krishnan S, Gonzalez JLU (2015) Google compute engine. Building your next big thing with google cloud platform: a guide for developers and enterprise architects, pp 53–81

  54. Bisong E, Bisong E (2019) An overview of google cloud platform services. Building Machine learning and deep learning models on google cloud platform: a comprehensive guide for beginners, pp 7–10

  55. Li Z, OBrien L, Ranjan R, Zhang M (2013) Early observations on performance of google compute engine for scientific computing. In: 2013 IEEE 5th international conference on cloud computing technology and science, vol 1. IEEE, pp 1–8

  56. Kokkinos P, Varvarigou TA, Kretsis A, Soumplis P, Varvarigos EA (2013) Cost and utilization optimization of amazon ec2 instances. In: 2013 IEEE sixth international conference on cloud computing. IEEE, pp 518–525

  57. Saini R, Behl R (2020) An introduction to aws-ec2 (elastic compute cloud). In: ICRMAT, pp 99–102

  58. Madhuri T, Sowjanya P (2016) Microsoft azure v/s amazon AWS cloud services: a comparative study. Int J Innov Res Sci Eng Technol 5(3):3904–3907

    Google Scholar 

  59. Shi W, Hong B (2011) Towards profitable virtual machine placement in the data center. In: 2011 fourth IEEE international conference on utility and cloud computing. IEEE, pp 138–145

  60. Khan MA, Paplinski A, Khan AM, Murshed M, Buyya R (2018) Dynamic virtual machine consolidation algorithms for energy-efficient cloud resource management: a review. Sustain Cloud Energy Serv Princ Pract 135–165

  61. Jangiti S, Sri Ram E, Shankar Sriram V (2019) Aggregated rank in first-fit-decreasing for green cloud computing. In: Cognitive informatics and soft computing: proceeding of CISC 2017. Springer, pp 545–555

  62. Yue M (1991) A simple proof of the inequality ffd (l) ≤ 11/9 opt (l) + 1, ∀l for the ffd bin-packing algorithm. Acta Math Appl Sin 7(4):321–331

    Article  MathSciNet  Google Scholar 

  63. Anand A, Lakshmi J, Nandy S (2013) Virtual machine placement optimization supporting performance slas. In: 2013 IEEE 5th international conference on cloud computing technology and science, vol 1. IEEE, pp 298–305

  64. Tseng F-H, Chen C-Y, Chou L-D, Chao H-C, Niu J-W (2015) Service-oriented virtual machine placement optimization for green data center. Mobile Netw Appl 20:556–566

    Article  Google Scholar 

  65. Braiki K, Youssef H (2020) Fuzzy-logic-based multi-objective best-fit-decreasing virtual machine reallocation. J Supercomput 76:427–454

    Article  Google Scholar 

  66. Wei W, Wang K, Wang K, Gu H, Shen H (2020) Multi-resource balance optimization for virtual machine placement in cloud data centers. Comput Electr Eng 88:106866

    Article  Google Scholar 

  67. Ji S, Da Li M, Ji N, Li B (2018) An online virtual machine placement algorithm in an over-committed cloud. In: 2018 IEEE international conference on cloud engineering (IC2E). IEEE, pp 106–112

  68. Duong-Ba T, Tran T, Nguyen T, Bose B (2018) A dynamic virtual machine placement and migration scheme for data centers. IEEE Trans Serv Comput 14(2):329–341

    Article  Google Scholar 

  69. Mosa A, Sakellariou R (2019) Dynamic virtual machine placement considering cpu and memory resource requirements. In: 2019 IEEE 12th international conference on cloud computing (CLOUD). IEEE, pp 196–198

  70. Shen D, Luo J, Dong F, Zhang J (2019) Virtco: joint coflow scheduling and virtual machine placement in cloud data centers. Tsinghua Sci Technol 24(5):630–644

    Article  Google Scholar 

  71. Medara R, Singh RS (2021) Energy-aware workflow task scheduling in clouds with virtual machine consolidation using discrete water wave optimization. Simul Model Pract Theory 110:102323

    Article  Google Scholar 

Download references

Acknowledgements

We thank University of Kashan for supporting this research.

Funding

This research was fully supported and funded by University of Kashan.

Author information

Authors and Affiliations

Authors

Contributions

M.Y. obtained the real case studies and achieved the results by applying the proposed method to the study. In addition, he provided the related study. S.M.B. proposed the suggested method and supervised the research.

Corresponding author

Correspondence to Seyed Morteza Babamir.

Ethics declarations

Conflict of interest

There is no Conflict of interest.

Ethics approval

The authors declare that they used no ethical matters.

Consent to participate

Yousefi and Babamir declare their consent to prticipate in this paper.

Consent for publication

Yousefi and Babamir declare their consent to publish this paper.

Additional information

Publisher's Note

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

Appendix A: Illustrative example

Appendix A: Illustrative example

In this part, an example is given to trace the steps of the CRBFF algorithm, and how it works is explained by calculating the parameters value of all the equations. We consider a CDC consisting of two PMs with different resource capacities as shown in Table 6. According to the explanations given in Sect. 3, each PM has a maximum and minimum power consumption. In this example, we assume the maximum value of the PM \(P_1\) to be 1300 and PM \(P_2\) to be 2000, and the minimum value for each of them is obtained by multiplying the maximum value by 0.7. Then, through Eq. 6, the power efficiency of each PM is calculated, which is also shown in Table 6.

Table 6 PMs configurations (\(P_i\): PMs number, \(C^{cpu}_i\): cpu capacity of \(P_i\), \(C^{ram}_i\): memory capacity of \(P_i\), \(P^{max}_i\): maximum power consumption of \(P_i\), \(P^{min}_i\): minimum power consumption of \(P_i\), \(P^{PE}_i\): power efficiency of \(P_i\))

Also, five VMs are considered with the amount of resource demands in different scales, which can be seen in Table 7.

Table 7 VMs configurations (\(V_j\): VMs number, \(R^{cpu}_j\): cpu demand of \(V_j\), \(R^{ram}_j\): memory demand of \(V_j\))

According to Algorithm 1, in the first part, PMs are sorted in descending order based on their power efficiency, in which in this example, PM \(P_1\) has a higher priority than PM \(P_2\), and as long as it has enough capacity, it can be a candidate for the placement process. Next, the number of randomly selected VMs is calculated through Eq. 10. The value of N is obtained based on the number of VMs and PMs, where its value is equal to three, which means that in each step, three VMs are randomly selected. In the next part of the algorithm, for the current PM, the amount of resource wastage when randomly selected VMs can be placed on it is calculated through Eq. 5. After that, each of the VMs that leads to the least amount of resource wastage is placed on the current PM and removed from the list of VMs, and the resource capacity of the current PM is updated. The algorithm continues for the remaining VMs until they are placed on PMs. In Table 8, the amount of resource wastage of the randomly selected VMs in each step is given, which shows that the proposed CRBFF performs placement optimally with minimal resource wastage and the number of PMs used.

Table 8 Tracing the proposed CRBFF algorithm on the example (Steps: steps of the algorithm, \(P_i\): PMs number, \(C^{cpu}_i\): remaining cpu capacity of \(P_i\), \(C^{ram}_i\): remaining memory capacity of \(P_i\), \(V_j\): VMs number, \(R^{cpu}_j\): cpu demand of \(V_j\), \(R^{ram}_j\): memory demand of \(V_j\), \(R^w_{ij}\): resource wastage of \(V_j\) after placed on \(P_i\), SV: randomly and uniformly selected VMs for placement on \(P_i\), PV: placement of \(V_j\) on \(P_i\))

According to Table 8, in the first step, three VMs \(V_2\), \(V_3\) and \(V_5\) are randomly and uniformly selected for placement, and for each of them, the amount of resource wastage on the current PM \(P_1\) is calculated if \(P_1\) has enough resources. Then, among them, \(V_3\), which leads to the least waste of resources, is placed on \(P_1\) and removed from the list of VMs, and then the resources capacity of \(P_1\) is updated. In the second step, among the remaining VMs, three VMs are selected again, where VMs \(V_1\), \(V_4\) and \(V_5\) are candidates. Also, because \(P_1\) still has the resource capacity, it is the first priority to place VMs, so the calculation of resource wastage is done for the selected VMs, and then because \(V_4\) has the smaller amount, it is placed on \(P_1\), and it is removed from the list of VMs. The third step, in which only three VMs are remained, and because the value of N is equal to three, all VMs are selected. At this step, because \(P_1\) does not have enough resources for placement, \(P_2\) becomes a candidate, and the resource wastage for it is calculated for the selected VMs. Since \(V_1\) has the smaller value, it is placed on \(P_2\) and the resource capacity of \(P_2\) is updated. In the fourth step, the number of remaining VMs is less than the value of N, so all of them are selected, and since \(V_5\) wastes less resources, it is placed on \(P_2\), and then the resources of \(P_2\) are updated. In the fifth step, there is only one VM and since \(P_2\) has enough resources, it places \(V_2\). When the list of VMs is empty, the execution of the algorithm ends. After the completion of the placement process by CRBFF, all the VMs have been placed efficiently and the remaining CPU and memory resources capacity are 0 MIPS and 536 MB for \(P_1\) and 0 MIPS and 128 MB for \(P_2\), respectively, which shows that the proposed CRBFF algorithm has used PMs optimally and has provided a significant performance. To obtain the amount of resources utilization, normalized remaining resources, total resource wastage and total power consumption of PMs, the VMs placed on each PM are needed, which is calculated through Eq. 1, and the obtained values for \(x_{ij}\) matrix are as follows:

where two VMs \(V_3\) and \(V_4\) are placed on \(P_1\), and three VMs \(V_1\), \(V_2\) and \(V_5\) are placed on \(P_2\). Also, the active state of PMs is calculated through Eq. 2 as the following array

where the value of both PMs \(P_1\) and \(P_2\) is one, and it means that PMs have been used. After placing the VMs by CRBFF, the obtained values are calculated through different equations to analyze the efficiency of the algorithm, which are shown in Table 9. The resources utilization of PMs and the amount of their normalized remaining resources as well as their power consumption and resource wastage are respectively calculated by Eqs. 3, 4, 7 and 5. Also, the total amount of power consumption and resource wastage of PMs are obtained through Eqs. 8 and 9.

Table 9 Obtained values for metrics (\(P_i\): PMs number, \(u^{cpu}_i\): cpu utilization of \(P_i\), \(u^{ram}_i\): memory utilization of \(P_i\), \(R^{cpu}_i\): normalized remaining cpu resource of \(P_i\), \(R^{ram}_i\): normalized remaining memory resource of \(P_i\), \(P^{PE}_i\): power efficiency of \(P_i\), \(P^{Power}_i\): power consumption of \(P_i\), \(R^w_i\): resource wastage of \(P_i\), \(P^{Total}\): total power consumption of PMs, \(R^{Total}\): total resource wastage of PMs)

The data in Table 9 shows that the utilization rate of the CPU resource of both \(P_1\) and \(P_2\) is 100%, and the utilization rate of their memory resource is 87% and 96%, respectively. Therefore, the amount of their remaining resource has reached the minimum possible amount, in other words, the amount of their resource wastage is in the best possible state. Focusing on power consumption and resource wastage, \(P_1\) has the lower power consumption than \(P_2\) in kilowatts, while its resource wastage, which is a unit is higher than \(P_2\) because it has more remaining memory resource and cannot be used for other VMs. Finally, the total power consumption and resource wastage of PMs shows that the algorithm has a suitable performance for the VMP problem. The performance of the proposed CRBFF algorithm on this small example also shows that significant results can be obtained for real and large CDCs as well.

Rights and permissions

Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Yousefi, M., Babamir, S.M. A hybrid energy-aware algorithm for virtual machine placement in cloud computing. Computing (2024). https://doi.org/10.1007/s00607-024-01280-3

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1007/s00607-024-01280-3

Keywords

Mathematics Subject Classification

Navigation