• Login
    View Item 
    •   Home
    • Research
    • Articles
    • View Item
    •   Home
    • Research
    • Articles
    • View Item
    JavaScript is disabled for your browser. Some features of this site may not work without it.

    Browse

    All of KAUSTCommunitiesIssue DateSubmit DateThis CollectionIssue DateSubmit Date

    My Account

    Login

    Quick Links

    Open Access PolicyORCID LibguideTheses and Dissertations LibguideSubmit an Item

    Statistics

    Display statistics

    Extensions of dynamic programming for multi-stage combinatorial optimization

    • CSV
    • RefMan
    • EndNote
    • BibTex
    • RefWorks
    Thumbnail
    Name:
    Michal_M_St_2.pdf
    Size:
    2.346Mb
    Format:
    PDF
    Description:
    Accepted manuscript
    Download
    Type
    Article
    Authors
    Mankowski, Michal cc
    Moshkov, Mikhail cc
    KAUST Department
    Applied Mathematics and Computational Science Program
    Computer Science Program
    Computer, Electrical and Mathematical Sciences and Engineering (CEMSE) Division
    Extensions of Dynamic Programming, Machine Learning and Discrete Optimization Research Group
    Date
    2020-08-17
    Online Publication Date
    2020-08-17
    Print Publication Date
    2020-12
    Embargo End Date
    2022-08-17
    Submitted Date
    2019-02-28
    Permanent link to this record
    http://hdl.handle.net/10754/665309
    
    Metadata
    Show full item record
    Abstract
    We propose a dynamic programming framework for an exact multi-stage (lexicographic) combinatorial optimization. Unlike conventional algorithms of dynamic programming that return one optimal solution, two dynamic programming algorithms proposed in this paper are coping with the whole set of optimal solutions or with its essential part. We describe the set of elements for optimization by a labeled directed acyclic graph, which in some sense, is similar to the structure of subproblems of the considered problem. For a given cost function (objective), the first algorithm constructs a subgraph of this graph that describes the whole set of optimal elements or its essential part. This algorithm can be used for multi-stage optimization of elements relative to a sequence of cost functions. The second algorithm counts elements before the optimization and after each optimization step. The considered labeled directed acyclic graph is a kind of circuit. This circuit builds the set of elements for optimization from one-element sets attached to input nodes. It uses the operation of union of sets attached to unifying nodes and functional operations attached to functional nodes. The algorithms for optimization and counting elements are defined for an arbitrary circuit without repetitions in which each element is generated exactly one time. For a considered problem with a known conventional dynamic programming solution algorithm, usually, it is easy to construct a corresponding circuit without repetitions. Once the circuit and cost functions are defined, our framework provides the correctness proofs and detailed time complexity analysis for the proposed algorithms. To make this approach more intuitive, we consider an illustrative example related to the maximum subarray problem. We tested our approach on the following nine combinatorial optimization problems: matrix chain multiplication, global sequence alignment, optimal paths in directed graphs, binary search trees, optimal bitonic tour, segmented least squares, convex polygon triangulation, one-dimensional clustering, and line breaking (text justification). We consider the last three problems in detail: construct a circuit without repetitions, describe at least two cost functions, evaluate a number of operations and time required by the algorithms, discuss an example, and consider the results of computer experiments with randomly generated instances of the problem.
    Citation
    Mankowski, M., & Moshkov, M. (2020). Extensions of dynamic programming for multi-stage combinatorial optimization. Theoretical Computer Science. doi:10.1016/j.tcs.2020.08.009
    Sponsors
    Research reported in this publication was supported by King Abdullah University of Science and Technology (KAUST). The authors wish to express their thanks to Hassan Alsibyani for his collaboration in preparation illustrative example related to the maximum subarray problem. The authors are greatly indebted to the anonymous reviewers for useful comments and suggestions.
    Publisher
    Elsevier BV
    Journal
    Theoretical Computer Science
    DOI
    10.1016/j.tcs.2020.08.009
    Additional Links
    https://linkinghub.elsevier.com/retrieve/pii/S0304397520304618
    ae974a485f413a2113503eed53cd6c53
    10.1016/j.tcs.2020.08.009
    Scopus Count
    Collections
    Articles; Applied Mathematics and Computational Science Program; Computer Science Program; Computer, Electrical and Mathematical Science and Engineering (CEMSE) Division

    entitlement

     
    DSpace software copyright © 2002-2023  DuraSpace
    Quick Guide | Contact Us | KAUST University Library
    Open Repository is a service hosted by 
    Atmire NV
     

    Export search results

    The export option will allow you to export the current search results of the entered query to a file. Different formats are available for download. To export the items, click on the button corresponding with the preferred download format.

    By default, clicking on the export buttons will result in a download of the allowed maximum amount of items. For anonymous users the allowed maximum amount is 50 search results.

    To select a subset of the search results, click "Selective Export" button and make a selection of the items you want to export. The amount of items that can be exported at once is similarly restricted as the full export.

    After making a selection, click one of the export format buttons. The amount of items that will be exported is indicated in the bubble next to export format.