On the Improvement of the Heuristic Algorithm for Packing Circles into a Circle of Minimum Radius
The article is devoted to investigation of a heuristic algorithm for solving the competitive problem "Circles Dense packing into a circle of minimum radius" and development of its improved version using Shor's r-algorithm with step dichotomy. The heuristic algorithm was developed by B...
Saved in:
| Published in | Kìbernetika ta komp'ûternì tehnologìï (Online) no. 2; pp. 32 - 45 |
|---|---|
| Main Authors | , , |
| Format | Journal Article |
| Language | English |
| Published |
V.M. Glushkov Institute of Cybernetics
28.07.2023
|
| Subjects | |
| Online Access | Get full text |
| ISSN | 2707-4501 2707-451X 2707-451X |
| DOI | 10.34229/2707-451X.23.2.4 |
Cover
| Abstract | The article is devoted to investigation of a heuristic algorithm for solving the competitive problem "Circles Dense packing into a circle of minimum radius" and development of its improved version using Shor's r-algorithm with step dichotomy. The heuristic algorithm was developed by Bohdan Zadorozhnyi, a third-year student of Uzhhorod National University. The program implemented on its basis took second place in the competition and used less time than the maximum time, which, according to the competition, was allocated for a one-time launch of the program for 50 competitive tasks. The article describes the research results of how the Shor r-algorithm can be used to improve efficiency of the heuristic algorithm.
The algorithm for improving the heuristic solution is implemented according to the following scheme. We start from the best arrangement of circles found by the heuristic algorithm. Then, we perform the following four stages of the algorithm: Stage 1. We set a rather large value of the initial step (we determine it depending on the input data or simply choose it as a large step); Stage 2. We run the r-algorithm from the starting point and find the local minimum of the corresponding nonlinear programming problem; Stage 3. If the local minimum found guarantees a smaller radius of the outer circle, then the local minimum point becomes the starting point; the local minimum found does not guarantee a smaller radius of the outer circle, then the size of the step h is reduced by half. Stage 4. If the step value is greater than the specified value, then we proceed to Stage 2. Otherwise, we finish work of the algorithm with solution improvement.
Python 3.9.5 programming language and NumPy 1.24.2 library were used for software implementation of both algorithms. For 50 competitive tests and different number of iterations of the heuristic algorithm (10, 20, 30, 40 and 50 iterations), the analysis of the obtained results was conducted according to three parameters: the number of points obtained, program execution time and the number of exchanges of circles in one iteration of the heuristic algorithm. For most of the competitive tests, the refined algorithm allows you to get better results in points, in particular, in most cases the improvement is up to 2 points, and in some cases – from 3 to 6 points. The biggest improvements (6 points) are seen in tests, where the circles have the same or close radii. Here, the heuristic algorithm works not so effectively, therefore, for such tests, due to the algorithm with refinement, it is possible to significantly improve the results of competitive tasks in terms of points. Keywords: circle packing, heuristics, r-algorithm, Python 3.9.5, NumPy 1.24.2. |
|---|---|
| AbstractList | The article is devoted to investigation of a heuristic algorithm for solving the competitive problem "Circles Dense packing into a circle of minimum radius" and development of its improved version using Shor's r-algorithm with step dichotomy. The heuristic algorithm was developed by Bohdan Zadorozhnyi, a third-year student of Uzhhorod National University. The program implemented on its basis took second place in the competition and used less time than the maximum time, which, according to the competition, was allocated for a one-time launch of the program for 50 competitive tasks. The article describes the research results of how the Shor r-algorithm can be used to improve efficiency of the heuristic algorithm.
The algorithm for improving the heuristic solution is implemented according to the following scheme. We start from the best arrangement of circles found by the heuristic algorithm. Then, we perform the following four stages of the algorithm: Stage 1. We set a rather large value of the initial step (we determine it depending on the input data or simply choose it as a large step); Stage 2. We run the r-algorithm from the starting point and find the local minimum of the corresponding nonlinear programming problem; Stage 3. If the local minimum found guarantees a smaller radius of the outer circle, then the local minimum point becomes the starting point; the local minimum found does not guarantee a smaller radius of the outer circle, then the size of the step h is reduced by half. Stage 4. If the step value is greater than the specified value, then we proceed to Stage 2. Otherwise, we finish work of the algorithm with solution improvement.
Python 3.9.5 programming language and NumPy 1.24.2 library were used for software implementation of both algorithms. For 50 competitive tests and different number of iterations of the heuristic algorithm (10, 20, 30, 40 and 50 iterations), the analysis of the obtained results was conducted according to three parameters: the number of points obtained, program execution time and the number of exchanges of circles in one iteration of the heuristic algorithm. For most of the competitive tests, the refined algorithm allows you to get better results in points, in particular, in most cases the improvement is up to 2 points, and in some cases – from 3 to 6 points. The biggest improvements (6 points) are seen in tests, where the circles have the same or close radii. Here, the heuristic algorithm works not so effectively, therefore, for such tests, due to the algorithm with refinement, it is possible to significantly improve the results of competitive tasks in terms of points. Keywords: circle packing, heuristics, r-algorithm, Python 3.9.5, NumPy 1.24.2. The article is devoted to investigation of a heuristic algorithm for solving the competitive problem "Circles Dense packing into a circle of minimum radius" and development of its improved version using Shor's r-algorithm with step dichotomy. The heuristic algorithm was developed by Bohdan Zadorozhnyi, a third-year student of Uzhhorod National University. The program implemented on its basis took second place in the competition and used less time than the maximum time, which, according to the competition, was allocated for a one-time launch of the program for 50 competitive tasks. The article describes the research results of how the Shor r-algorithm can be used to improve efficiency of the heuristic algorithm. The algorithm for improving the heuristic solution is implemented according to the following scheme. We start from the best arrangement of circles found by the heuristic algorithm. Then, we perform the following four stages of the algorithm: Stage 1. We set a rather large value of the initial step (we determine it depending on the input data or simply choose it as a large step); Stage 2. We run the r-algorithm from the starting point and find the local minimum of the corresponding nonlinear programming problem; Stage 3. If the local minimum found guarantees a smaller radius of the outer circle, then the local minimum point becomes the starting point; the local minimum found does not guarantee a smaller radius of the outer circle, then the size of the step h is reduced by half. Stage 4. If the step value is greater than the specified value, then we proceed to Stage 2. Otherwise, we finish work of the algorithm with solution improvement. Python 3.9.5 programming language and NumPy 1.24.2 library were used for software implementation of both algorithms. For 50 competitive tests and different number of iterations of the heuristic algorithm (10, 20, 30, 40 and 50 iterations), the analysis of the obtained results was conducted according to three parameters: the number of points obtained, program execution time and the number of exchanges of circles in one iteration of the heuristic algorithm. For most of the competitive tests, the refined algorithm allows you to get better results in points, in particular, in most cases the improvement is up to 2 points, and in some cases – from 3 to 6 points. The biggest improvements (6 points) are seen in tests, where the circles have the same or close radii. Here, the heuristic algorithm works not so effectively, therefore, for such tests, due to the algorithm with refinement, it is possible to significantly improve the results of competitive tasks in terms of points. |
| Author | Mitsa, Oleksandr Zadorozhnyi, Bohdan Stetsyuk, Petro |
| Author_xml | – sequence: 1 givenname: Bohdan surname: Zadorozhnyi fullname: Zadorozhnyi, Bohdan organization: Uzhhorod National University, Ukraine – sequence: 2 givenname: Oleksandr orcidid: 0000-0002-6958-0870 surname: Mitsa fullname: Mitsa, Oleksandr organization: Uzhhorod National University, Ukraine – sequence: 3 givenname: Petro orcidid: 0000-0003-4036-2543 surname: Stetsyuk fullname: Stetsyuk, Petro organization: V.M. Glushkov Institute of Cybernetics of the NAS of Ukraine, Kyiv |
| BookMark | eNp9kNtKAzEQhoMoeHwA7_ICrckk3exeSvFQUBRR8C5MskmN7iYlu_Xw9q6tVBD0amZ--D6Yf59sxxQdIcecjYUEqE5AMTWSE_44BjGGsdwie5toe7MzvkuOuu6ZMQYVZ6Kc7BG8ibR_cnTWLnJ6da2LPU1-FV26ZQ5dHyw9beYph_6ppT5leov2JcQ5nYZsG9fREPtE8fv8gq9DDO2ypXdYh2V3SHY8Np07-p4H5OH87H56Obq6uZhNT69GlleVHCllPa-NwsoAOMU9g4JzIcCU3nIvvakLYwtuHCDWXk4MFCjkxHorC-5rcUBma2-d8Fkvcmgxf-iEQa-ClOca8_BN47RTJTiBrBaqHPozwzU4SjRV7UvjYXDB2rWMC_x4w6bZCDnTq871V6l6KPhdg9Cg5QDxNWRz6rrs_N_M4w-jfjE29NiHFPuMofmH_ASzLJgM |
| CitedBy_id | crossref_primary_10_34229_2707_451X_24_4_1 |
| Cites_doi | 10.1007/s11590-015-0937-9 10.34229/2707-451X.22.3.10 10.1007/s10559-017-9971-1 |
| ContentType | Journal Article |
| DBID | AAYXX CITATION ADTOC UNPAY DOA |
| DOI | 10.34229/2707-451X.23.2.4 |
| DatabaseName | CrossRef Unpaywall for CDI: Periodical Content Unpaywall DOAJ Directory of Open Access Journals - NZ |
| DatabaseTitle | CrossRef |
| DatabaseTitleList | CrossRef |
| Database_xml | – sequence: 1 dbid: DOA name: DOAJ Directory of Open Access Journals url: https://www.doaj.org/ sourceTypes: Open Website – sequence: 2 dbid: UNPAY name: Unpaywall url: https://proxy.k.utb.cz/login?url=https://unpaywall.org/ sourceTypes: Open Access Repository |
| DeliveryMethod | fulltext_linktorsrc |
| Discipline | Sciences (General) |
| EISSN | 2707-451X |
| EndPage | 45 |
| ExternalDocumentID | oai_doaj_org_article_e782e3a0d378422b82e4618ab9df8bf2 10.34229/2707-451x.23.2.4 10_34229_2707_451X_23_2_4 |
| GroupedDBID | AAYXX ALMA_UNASSIGNED_HOLDINGS CITATION GROUPED_DOAJ ADTOC UNPAY |
| ID | FETCH-LOGICAL-c1994-77cf1db7a9b22e71f02611332b8fc1f4fbd6bc61be2aadf45b26a345cfc461fd3 |
| IEDL.DBID | UNPAY |
| ISSN | 2707-4501 2707-451X |
| IngestDate | Fri Oct 03 12:50:52 EDT 2025 Wed Oct 01 16:55:25 EDT 2025 Thu Apr 24 23:10:32 EDT 2025 Tue Jul 01 03:06:33 EDT 2025 |
| IsDoiOpenAccess | true |
| IsOpenAccess | true |
| IsPeerReviewed | true |
| IsScholarly | true |
| Issue | 2 |
| Language | English |
| License | https://creativecommons.org/licenses/by-nc-sa/4.0 cc-by-nc |
| LinkModel | DirectLink |
| MergedId | FETCHMERGED-LOGICAL-c1994-77cf1db7a9b22e71f02611332b8fc1f4fbd6bc61be2aadf45b26a345cfc461fd3 |
| ORCID | 0000-0002-6958-0870 0000-0003-4036-2543 |
| OpenAccessLink | https://proxy.k.utb.cz/login?url=http://cctech.org.ua/images/docs/Articles/2023/paper_23_2_4.pdf |
| PageCount | 14 |
| ParticipantIDs | doaj_primary_oai_doaj_org_article_e782e3a0d378422b82e4618ab9df8bf2 unpaywall_primary_10_34229_2707_451x_23_2_4 crossref_primary_10_34229_2707_451X_23_2_4 crossref_citationtrail_10_34229_2707_451X_23_2_4 |
| ProviderPackageCode | CITATION AAYXX |
| PublicationCentury | 2000 |
| PublicationDate | 2023-7-28 |
| PublicationDateYYYYMMDD | 2023-07-28 |
| PublicationDate_xml | – month: 07 year: 2023 text: 2023-7-28 day: 28 |
| PublicationDecade | 2020 |
| PublicationTitle | Kìbernetika ta komp'ûternì tehnologìï (Online) |
| PublicationYear | 2023 |
| Publisher | V.M. Glushkov Institute of Cybernetics |
| Publisher_xml | – name: V.M. Glushkov Institute of Cybernetics |
| References | ref4 ref3 ref6 ref5 ref0 ref2 ref1 |
| References_xml | – ident: ref3 doi: 10.1007/s11590-015-0937-9 – ident: ref1 – ident: ref5 – ident: ref6 – ident: ref0 – ident: ref4 doi: 10.34229/2707-451X.22.3.10 – ident: ref2 doi: 10.1007/s10559-017-9971-1 |
| SSID | ssj0002910385 ssib044750725 |
| Score | 2.2292452 |
| Snippet | The article is devoted to investigation of a heuristic algorithm for solving the competitive problem "Circles Dense packing into a circle of minimum radius"... |
| SourceID | doaj unpaywall crossref |
| SourceType | Open Website Open Access Repository Enrichment Source Index Database |
| StartPage | 32 |
| SubjectTerms | circle packing heuristics numpy 1.24.2 python 3.9.5 r-algorithm |
| SummonAdditionalLinks | – databaseName: DOAJ Directory of Open Access Journals - NZ dbid: DOA link: http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwrV3Pb9MwFLbQLsABMWBaxw_5wIExtbUdJ06OZWKqkAYIrVJvln-OSG06tY02_nveS7yqOwAXLpHs2HH0-SV-37P1PULeB8VsDreGzAggKDxXw0o6ICsqSpmFyELAHd3Lr8V0Jr_M8_leqi88E9bLA_fAjQMsYSEzzGeqlEJYKMmCl8ZWPpY2dn9fVlZ7ZAosCVXsmEqWiv9kUaEQOJ5nFIqh0Dfj_RZnBs-sxqmSz0ciG4mRfLBIdVr-T8njtrkxv27NYrG3AF08J8-S50gn_RsfkkeheUEO07e5oR-SgPTpS2K-NRT8OtoHDLr4H13Frmoa2l6amU4W16t1vf25pOC20u_GYcycntdrPCZH62a7oiYVsfNl3dTLdkl_GF-3m1dkdvH56nw6TKkUhq4T_1XKRe6tMpUVIigekXoBPQU8o-NRRusL6wpugzDGR5lbUZhM5i46QDv67IgcNKsmHBPqc6sqL4sQTQHXADQ0j5WMwGW84LYYEHaPnXZJZxzTXSw08I0Obo1wa4Rbi0wLLQfk467LTS-y8bfGn3BCdg1RH7urAKvRyWr0v6xmQM520_nnIe_SkCf_Y8jX5Ammqse4sCjfkIPtug1vwaHZ2ned7f4Gvgzsdw priority: 102 providerName: Directory of Open Access Journals |
| Title | On the Improvement of the Heuristic Algorithm for Packing Circles into a Circle of Minimum Radius |
| URI | http://cctech.org.ua/images/docs/Articles/2023/paper_23_2_4.pdf https://doaj.org/article/e782e3a0d378422b82e4618ab9df8bf2 |
| UnpaywallVersion | publishedVersion |
| hasFullText | 1 |
| inHoldings | 1 |
| isFullTextHit | |
| isPrint | |
| journalDatabaseRights | – providerCode: PRVAON databaseName: DOAJ Directory of Open Access Journals customDbUrl: eissn: 2707-451X dateEnd: 99991231 omitProxy: true ssIdentifier: ssj0002910385 issn: 2707-451X databaseCode: DOA dateStart: 20200101 isFulltext: true titleUrlDefault: https://www.doaj.org/ providerName: Directory of Open Access Journals – providerCode: PRVHPJ databaseName: ROAD: Directory of Open Access Scholarly Resources customDbUrl: eissn: 2707-451X dateEnd: 99991231 omitProxy: true ssIdentifier: ssib044750725 issn: 2707-4501 databaseCode: M~E dateStart: 20200101 isFulltext: true titleUrlDefault: https://road.issn.org providerName: ISSN International Centre |
| link | http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwnV1Lb9QwELZge4AeKOWhLtDKBw48tHnYTpwct1WrFVJLhVhpOQU_IWI3iXYTUfj1jBPvCoRAgksUO2M7ztjyfGPnG4SeGx7JBB5NIkEAoMQJn-RMAVjhljFqbGSM29G9vEpnc_ZmkSy2cU7DUClHXep28INOhOUK5tQm1LXahFN_TsyhdRo2ogEIT2hBChY02t5Ge2kCxvgI7c2vrqcfXEg5HjlG7z4Asr-PF8O-JmWE5OE28yYgNCAB-2Vl6gn899GdrmrEt69iufxp1bk4QB-3_-4Mh02-BF0rA_X9dyrH_-3QfXTPW6TYCx6iW6Z6gA79nN_gF56Y-uVDJN5WGOxFPDgier8irm2fNTPdQPmMp8tP9bpsP68wmMP4Wijni8dn5dq9BS6rtsbCJ13hy7IqV90KvxO67DaP0Pzi_P3ZbOJDNExUTyrMubKxllzkkhDDY-sgHcBeIjOrYsus1KlUaSwNEUJblkiSCsoSZRVLY6vpYzSq6socIawTyXPNUmNFClcD8DaxObOAkTSJZTpG0VY9hfL85S6MxrIAHNNrtHAaLZya_Ycco1e7Is1A3vE34VOn852g493uM0B3hZ_GhQGDylARacozqEVCCvqRCZlrm0lLxuj1bsT8uckb3-STf5J-iu66oeIcyyR7hkbtujPHYBG18qT3JJz4sf8D7o0HpQ |
| linkProvider | Unpaywall |
| linkToUnpaywall | http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwnV1Lb9QwELZge4AegPIQ21LkAwce2jxsJ06O24pqhdRSIVZaTsHPErGbRLuJKPz6jhPvCoRAgksUO2M7ztjyfGPnG4ReGB7JBB5NIkEAoMQJn-RMAVjhljFqbGSM29E9v0hnc_ZukSy2cU7DUClHXep28INOhOUK5tQm1LXahFN_TsyhdRo2ogEIT2hBChY02t5Ge2kCxvgI7c0vLqefXEg5HjlG7z4Asr-PF8O-JmWE5OE28zogNCAB-2Vl6gn899GdrmrE929iufxp1Tm7jz5v_90ZDpt8DbpWBurH71SO_9uhB-iet0ixFzxAt0z1EB34Ob_BLz0x9atHSLyvMNiLeHBE9H5FXNs-a2a6gfIZT5dX9bpsv6wwmMP4Uijni8en5dq9BS6rtsbCJ13h87IqV90KfxC67DaP0fzs7cfT2cSHaJionlSYc2VjLbnIJSGGx9ZBOoC9RGZWxZZZqVOp0lgaIoS2LJEkFZQlyiqWxlbTJ2hU1ZV5irBOJM81S40VKVwNwNvE5swCRtIklukYRVv1FMrzl7swGssCcEyv0cJptHBq9h9yjF7vijQDecffhE-czneCjne7zwDdFX4aFwYMKkNFpCnPoBYJKehHJmSubSYtGaM3uxHz5yavfZOH_yR9hO66oeIcyyR7hkbtujPHYBG18rkf9TfGegaw |
| openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=On+the+Improvement+of+the+Heuristic+Algorithm+for+Packing+Circles+into+a+Circle+of+Minimum+Radius&rft.jtitle=K%C3%ACbernetika+ta+komp%27%C3%BBtern%C3%AC+tehnolog%C3%AC%C3%AF+%28Online%29&rft.au=Zadorozhnyi%2C+Bohdan&rft.au=Mitsa%2C+Oleksandr&rft.au=Stetsyuk%2C+Petro&rft.date=2023-07-28&rft.issn=2707-4501&rft.eissn=2707-451X&rft.issue=2&rft.spage=32&rft.epage=45&rft_id=info:doi/10.34229%2F2707-451X.23.2.4&rft.externalDBID=n%2Fa&rft.externalDocID=10_34229_2707_451X_23_2_4 |
| thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=2707-4501&client=summon |
| thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=2707-4501&client=summon |
| thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=2707-4501&client=summon |