A Python']Python-Based Design-by-Contract Evolutionary Algorithm Framework with Augmented Diagnostic Capabilities

被引:0
|
作者
Panchapakesan, Ashwin [1 ]
Abielmona, Rami
Petriu, Emil [1 ]
机构
[1] Univ Ottawa, Sch EECS, Ottawa, ON, Canada
关键词
evolutionary algorithm; design-by-contract; !text type='python']python[!/text] programming language;
D O I
暂无
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Evolutionary algorithms are a class of algorithms that try to mimic natural, biological evolution a la Darwinian natural selection, to compute solutions to a given problem. They are especially useful when no well known strategies for computing solutions to such a problem exist. Evolutionary algorithms begin by creating a collection (population) of candidate solutions to the problem at hand; and through repeated application of genetic operators such as crossover and mutation, they iterate over multiple generations of this population, until they eventually converge onto an attractive solution. One important problem facing code implementing Evolutionary Algorithms is that due to the dynamic nature of the individual chromosomes in a population, simple coding errors lead to complex bugs that are difficult to both diagnose and debug. This problem is only exacerbated when attempting to develop the algorithms in a dynamically typed language such as Python. This paper presents a novel Evolutionary Algorithm framework for the Python programming language that implements design-by-contract, a paradigm in which each function and class must follow a contractual set of pre-conditions and post-conditions. Failure to follow the contract causes an error condition identifying the violated clause, thereby catching bugs earlier in the development process and in a more descriptive manner.
引用
收藏
页码:2517 / 2524
页数:8
相关论文
共 50 条
  • [31] A Python']Python-Based Automation Script to Mark Computer-Aided Design Assessments
    Tierney, Gregory
    APPLIED SCIENCES-BASEL, 2025, 15 (03):
  • [32] Late Breaking Results: PyAIE: A Python']Python-based Programming Framework for Versal ACAP Platforms
    2023 60TH ACM/IEEE DESIGN AUTOMATION CONFERENCE, DAC, 2023,
  • [33] lsforce: A Python']Python-Based Single-Force Seismic Inversion Framework for Massive Landslides
    Toney, Liam
    Allstadt, Kate E.
    SEISMOLOGICAL RESEARCH LETTERS, 2021, 92 (04) : 2610 - 2626
  • [34] Pyxel - a novel and multi-purpose Python']Python-based framework for imaging detector simulation
    Lucsanyi, David
    Prod'homme, Thibaut
    Smit, Hans
    Lemmel, Frederic
    Crouzet, Pierre-Elie
    Verhoeve, Peter
    Shortt, Brian
    HIGH ENERGY, OPTICAL, AND INFRARED DETECTORS FOR ASTRONOMY VIII, 2018, 10709
  • [35] Python']Python-Based Algorithm for Estimating NRTL Model Parameters with UNIFAC Model Simulation Results
    Jo, Se-Hee
    Lee, Jina
    Won, Wangyun
    Kim, Jun-Woo
    ACS OMEGA, 2025, 10 (03): : 2949 - 2957
  • [36] Development of a Python']Python-Based Algorithm for Comparative Analysis of Multiparticipant Next Generation Sequencing Data
    Martz, Flora G.
    Forst, Thomas M.
    Ryan, Sean M.
    Murphy, Patrick J. M.
    FASEB JOURNAL, 2016, 30
  • [37] Python']Python-based Optimization Model and Algorithm for Rescue Routes During Gas Leak Emergencies
    Gai, Wen-mei
    Deng, Yun-feng
    Li, Jing
    Du, Yan
    2013 32ND CHINESE CONTROL CONFERENCE (CCC), 2013, : 2509 - 2514
  • [38] Python']Python-Based Algorithm for Estimating the Parameters of Physical Property Models for Substances Not Available in Database
    Lee, Jina
    Won, Wangyun
    Kim, Jun-Woo
    ACS OMEGA, 2024, 9 (10): : 11895 - 11909
  • [39] Python']Python-Based Solutions of Biokinetic Models of the Human Respiratory Tract System: A Technique for an Augmented Uncertainty Propagation
    Mate-Kole, E. M.
    Margot, D.
    Dewji, S. A.
    HEALTH PHYSICS, 2023, 125 (01): : 49 - 49
  • [40] Design and development of a Python']Python-based interface for processing massive data with the LOAD ESTimator (LOADEST)
    Gao, Jungang
    White, Michael J.
    Bieger, Katrin
    Arnold, Jeffrey G.
    ENVIRONMENTAL MODELLING & SOFTWARE, 2021, 135