Uploaded image for project: 'Commons Math'
  1. Commons Math
  2. MATH-1655

Refactoring of GA functionality

Rank to TopRank to BottomAttach filesAttach ScreenshotBulk Copy AttachmentsBulk Move AttachmentsAdd voteVotersWatch issueWatchersCreate sub-taskConvert to sub-taskLinkCloneLabelsUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Open
    • Minor
    • Resolution: Unresolved
    • 4.0-beta1
    • 4.0
    • legacy
    • Medium

    Description

      As discussed extensively on the "dev" ML[1][2], there are two competing designs (please review them on the dedicated git branch) for the refactoring of the basic functionality currently implemented in the org.apache.commons.math4.legacy.genetics "legacy" package.

      TL;DR;

      • The discussion has pointed to major (from a maintenance POV) issues of the design proposed by the OP.
      • The alternative (much simpler) design has been implemented as proof-of-concept (indicating that some corner might have been cut).
      • The OP mentioned correctness issues in the "simple" design but did neither fix them nor provided answers on the LM to that effect.
      • Questions concerning other possible "bloat" (e.g. on using a custom representation of the "binary chromosome" concept instead of the BitSet available from the JDK) were also left dangling.
      • Refactoring of the "basic" GA functionality (the purpose of the "proof-of-concept") must be decoupled from the new feature which the OP wanted to implement ("adaptive probability generation").
      • Unit tests (a.o. all those from the "legacy" code) must demonstrate that the refactored code does (or does not) behave correctly, and bugs should be fixed on the "simple" implementation, before implementing the new feature on top of it.

      [1] https://markmail.org/message/qn7gq2y7xjoxukzp
      [2] https://markmail.org/message/f66iii3a4kmjaprr

      Attachments

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            Unassigned Unassigned
            erans Gilles Sadowski

            Dates

              Created:
              Updated:

              Slack

                Issue deployment