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 条
  • [21] NegoLog: An Integrated Python']Python-based Automated Negotiation Framework with Enhanced Assessment Components
    Dogru, Anil
    Keskin, Mehmet Onur
    Jonker, Catholijn M.
    Baarslag, Tim
    Aydogan, Reyhan
    PROCEEDINGS OF THE THIRTY-THIRD INTERNATIONAL JOINT CONFERENCE ON ARTIFICIAL INTELLIGENCE, IJCAI 2024, 2024, : 8640 - 8643
  • [22] SARRA-Py: A Python']Python-based geospatial simulation framework for agroclimatic modeling
    Lavarenne, Jeremy
    Mbengue, Asse
    SOFTWAREX, 2025, 30
  • [23] pyOpt: a Python']Python-based object-oriented framework for nonlinear constrained optimization
    Perez, Ruben E.
    Jansen, Peter W.
    Martins, Joaquim R. R. A.
    STRUCTURAL AND MULTIDISCIPLINARY OPTIMIZATION, 2012, 45 (01) : 101 - 118
  • [24] pyOpenMS: A Python']Python-based interface to the OpenMS mass-spectrometry algorithm library
    Roest, Hannes L.
    Schmitt, Uwe
    Aebersold, Ruedi
    Malmstroem, Lars
    PROTEOMICS, 2014, 14 (01) : 74 - 77
  • [25] Development of a Python']Python-based Algorithm for Image Analysis of Outer-ring Galaxies
    Jo, Hoon
    Sohn, Jungjoo
    JOURNAL OF THE KOREAN EARTH SCIENCE SOCIETY, 2022, 43 (05): : 579 - 590
  • [26] PyLog: An Algorithm-Centric Python']Python-Based FPGA Programming and Synthesis Flow
    Huang, Sitao
    Wu, Kun
    Jeong, Hyunmin
    Wang, Chengyue
    Chen, Deming
    Hwu, Wen-mei
    IEEE TRANSACTIONS ON COMPUTERS, 2021, 70 (12) : 2015 - 2028
  • [27] A Rapid Python']Python-Based Methodology for Target-Focused Combinatorial Library Design
    Li, Shiliang
    Song, Yuwei
    Liu, Xiaofeng
    Li, Honglin
    COMBINATORIAL CHEMISTRY & HIGH THROUGHPUT SCREENING, 2016, 19 (01) : 25 - 35
  • [28] Python']Python-Based Circuit Design for Fundamental Building Blocks of Spiking Neural Network
    Qin, Xing
    Li, Chaojie
    He, Haitao
    Pan, Zejun
    Lai, Chenxiao
    ELECTRONICS, 2023, 12 (11)
  • [29] PyBoKids: An Innovative Python']Python-Based Educational Framework Using Real and Simulated Arduino Robots
    Vega, Julio
    Canas, Jose M.
    ELECTRONICS, 2019, 8 (08)
  • [30] Design and implementation of a python']python-based active network platform for network management and control
    Baumgartner, F
    Braun, T
    Bhargava, B
    ACTIVE NETWORKS, PROCEEDINGS, 2002, 2546 : 177 - 190