Menu

Name of the Optimize algorithm.

Help
Maxat
2016-12-19
2016-12-21
  • Maxat

    Maxat - 2016-12-19

    Hello,
    What is the name of the algorithm used by Optimize function?
    For ex.:
    DepthFirstSearch search = new DepthFirstSearch();
    Optimize min = new Optimize(store, search, select, cost);
    boolean result = min.minimize();
    And what is it's complexity?
    So far I've come up with "D&C algorithm using Depth-First search"

     
  • kris

    kris - 2016-12-20

    The algorithm follows the idea of the Algorithm 1 presented in

    @article{DBLP:journals/tcad/AbderrahmanCK99,
    author = {Abdessatar Abderrahman and
    Eduard Cerny and
    Bozena Kaminska},
    title = {Worst case tolerance analysis and CLP-based multifrequency test generation
    for analog circuits},
    journal = {{IEEE} Trans. on {CAD} of Integrated Circuits and Systems},
    volume = {18},
    number = {3},
    pages = {332--345},
    year = {1999},
    url = {http://dx.doi.org/10.1109/43.748163},
    doi = {10.1109/43.748163},
    timestamp = {Fri, 18 Mar 2016 09:17:14 +0100},
    biburl = {http://dblp.uni-trier.de/rec/bib/journals/tcad/AbderrahmanCK99},
    bibsource = {dblp computer science bibliography, http://dblp.org}
    }

    /Kris

     
  • Maxat

    Maxat - 2016-12-21

    Thanks Kris!
    And what is the algorithm used in search.labeling?
    Somehow "search.labeling" runs 7 times faster than "optimize" for my floating point COP and I am curious why.

     
  • kris

    kris - 2016-12-21

    The algorithm for labeling is DFS (Depth First Search). If you use cost function in your labeling and do minimization we use branch-and-bound (B&B) algorithm. This means that every time we find a solution we add constraint that the cost must be lower than currently found cost. If no solution id found the solver reports the last solution as optimal.

    /Kris

     

Log in to post a comment.