On look-ahead heuristics in disjunctive logic programming
Disjunctive logic programming (DLP), also called answer set programming (ASP), is a convenient programming paradigm which allows for solving problems in a simple and highly declarative way. The language of DLP is very expressive and able to represent even problems of high complexity (every problem i...
Gespeichert in:
Veröffentlicht in: | Annals of mathematics and artificial intelligence 2007-12, Vol.51 (2-4), p.229-266 |
---|---|
Hauptverfasser: | , , , |
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
container_end_page | 266 |
---|---|
container_issue | 2-4 |
container_start_page | 229 |
container_title | Annals of mathematics and artificial intelligence |
container_volume | 51 |
creator | Faber, Wolfgang Leone, Nicola Pfeifer, Gerald Ricca, Francesco |
description | Disjunctive logic programming (DLP), also called answer set programming (ASP), is a convenient programming paradigm which allows for solving problems in a simple and highly declarative way. The language of DLP is very expressive and able to represent even problems of high complexity (every problem in the complexity class ). During the last decade, efficient systems supporting DLP have become available. Virtually all of these systems internally rely on variants of the Davis–Putnam procedure (for deciding propositional satisfiability [SAT]), combined with a suitable model checker. The heuristic for the selection of the branching literal (i.e., the criterion determining the literal to be assumed true at a given stage of the computation) dramatically affects the performance of a DLP system. While heuristics for SAT have received a fair deal of research, only little work on heuristics for DLP has been done so far. In this paper, we design, implement, optimize, and experiment with a number of heuristics for DLP. We focus on different look-ahead heuristics, also called “dynamic heuristics” (the DLP equivalent of unit propagation [UP] heuristics for SAT). These are branching rules where the heuristic value of a literal Q depends on the result of taking Q true and computing its consequences. We motivate and formally define a number of look-ahead heuristics for DLP programs. Furthermore, since look-ahead heuristics are computationally expensive, we design two techniques for optimizing the burden of their computation. We implement all the proposed heuristics and optimization techniques in DLV—the state-of-the-art implementation of disjunctive logic programming, and we carry out experiments, thoroughly comparing the heuristics and optimization techniques on a large number of instances of well-known benchmark problems. The results of these experiments are very interesting, showing that the proposed techniques significantly improve the performance of the DLV system. |
doi_str_mv | 10.1007/s10472-008-9087-4 |
format | Article |
fullrecord | <record><control><sourceid>proquest_cross</sourceid><recordid>TN_cdi_proquest_journals_2918193085</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>2918193085</sourcerecordid><originalsourceid>FETCH-LOGICAL-c273t-2cb8d2b526de11ccd76c2295b26f9abcb6f12d832cb39338f200ecf99d36794d3</originalsourceid><addsrcrecordid>eNotkE1LAzEURYMoWKs_wN2A6-jLSyYfSylqhUI3ug4zSaZNbWdqMiP4702pq3sXh3vhEHLP4JEBqKfMQCikAJoa0IqKCzJjteJUCQWXpQNDikLwa3KT8w4AjNRyRsy6r_bD8EWbbWh8tQ1TinmMLlexr3zMu6l3Y_wJBdpEVx3TsEnN4RD7zS256pp9Dnf_OSefry8fiyVdrd_eF88r6lDxkaJrtce2RukDY855JR2iqVuUnWla18qOode8cNxwrjsECK4zxnOpjPB8Th7Ou-X7ewp5tLthSn25tGiYZoaDrgvFzpRLQ84pdPaY4qFJv5aBPRmyZ0O2GLInQ1bwP6yuWMc</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>2918193085</pqid></control><display><type>article</type><title>On look-ahead heuristics in disjunctive logic programming</title><source>ProQuest Central UK/Ireland</source><source>SpringerLink Journals - AutoHoldings</source><source>ProQuest Central</source><creator>Faber, Wolfgang ; Leone, Nicola ; Pfeifer, Gerald ; Ricca, Francesco</creator><creatorcontrib>Faber, Wolfgang ; Leone, Nicola ; Pfeifer, Gerald ; Ricca, Francesco</creatorcontrib><description>Disjunctive logic programming (DLP), also called answer set programming (ASP), is a convenient programming paradigm which allows for solving problems in a simple and highly declarative way. The language of DLP is very expressive and able to represent even problems of high complexity (every problem in the complexity class ). During the last decade, efficient systems supporting DLP have become available. Virtually all of these systems internally rely on variants of the Davis–Putnam procedure (for deciding propositional satisfiability [SAT]), combined with a suitable model checker. The heuristic for the selection of the branching literal (i.e., the criterion determining the literal to be assumed true at a given stage of the computation) dramatically affects the performance of a DLP system. While heuristics for SAT have received a fair deal of research, only little work on heuristics for DLP has been done so far. In this paper, we design, implement, optimize, and experiment with a number of heuristics for DLP. We focus on different look-ahead heuristics, also called “dynamic heuristics” (the DLP equivalent of unit propagation [UP] heuristics for SAT). These are branching rules where the heuristic value of a literal Q depends on the result of taking Q true and computing its consequences. We motivate and formally define a number of look-ahead heuristics for DLP programs. Furthermore, since look-ahead heuristics are computationally expensive, we design two techniques for optimizing the burden of their computation. We implement all the proposed heuristics and optimization techniques in DLV—the state-of-the-art implementation of disjunctive logic programming, and we carry out experiments, thoroughly comparing the heuristics and optimization techniques on a large number of instances of well-known benchmark problems. The results of these experiments are very interesting, showing that the proposed techniques significantly improve the performance of the DLV system.</description><identifier>ISSN: 1012-2443</identifier><identifier>EISSN: 1573-7470</identifier><identifier>DOI: 10.1007/s10472-008-9087-4</identifier><language>eng</language><publisher>Dordrecht: Springer Nature B.V</publisher><subject>Complexity ; Computation ; Declarative programming ; Design optimization ; Heuristic ; Logic programming ; Mathematical programming ; Optimization techniques ; Performance enhancement ; Problem solving</subject><ispartof>Annals of mathematics and artificial intelligence, 2007-12, Vol.51 (2-4), p.229-266</ispartof><rights>Springer Science+Business Media B.V. 2008.</rights><lds50>peer_reviewed</lds50><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c273t-2cb8d2b526de11ccd76c2295b26f9abcb6f12d832cb39338f200ecf99d36794d3</citedby><cites>FETCH-LOGICAL-c273t-2cb8d2b526de11ccd76c2295b26f9abcb6f12d832cb39338f200ecf99d36794d3</cites></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><linktohtml>$$Uhttps://www.proquest.com/docview/2918193085?pq-origsite=primo$$EHTML$$P50$$Gproquest$$H</linktohtml><link.rule.ids>314,776,780,21368,27903,27904,33723,43784,64361,64365,72215</link.rule.ids></links><search><creatorcontrib>Faber, Wolfgang</creatorcontrib><creatorcontrib>Leone, Nicola</creatorcontrib><creatorcontrib>Pfeifer, Gerald</creatorcontrib><creatorcontrib>Ricca, Francesco</creatorcontrib><title>On look-ahead heuristics in disjunctive logic programming</title><title>Annals of mathematics and artificial intelligence</title><description>Disjunctive logic programming (DLP), also called answer set programming (ASP), is a convenient programming paradigm which allows for solving problems in a simple and highly declarative way. The language of DLP is very expressive and able to represent even problems of high complexity (every problem in the complexity class ). During the last decade, efficient systems supporting DLP have become available. Virtually all of these systems internally rely on variants of the Davis–Putnam procedure (for deciding propositional satisfiability [SAT]), combined with a suitable model checker. The heuristic for the selection of the branching literal (i.e., the criterion determining the literal to be assumed true at a given stage of the computation) dramatically affects the performance of a DLP system. While heuristics for SAT have received a fair deal of research, only little work on heuristics for DLP has been done so far. In this paper, we design, implement, optimize, and experiment with a number of heuristics for DLP. We focus on different look-ahead heuristics, also called “dynamic heuristics” (the DLP equivalent of unit propagation [UP] heuristics for SAT). These are branching rules where the heuristic value of a literal Q depends on the result of taking Q true and computing its consequences. We motivate and formally define a number of look-ahead heuristics for DLP programs. Furthermore, since look-ahead heuristics are computationally expensive, we design two techniques for optimizing the burden of their computation. We implement all the proposed heuristics and optimization techniques in DLV—the state-of-the-art implementation of disjunctive logic programming, and we carry out experiments, thoroughly comparing the heuristics and optimization techniques on a large number of instances of well-known benchmark problems. The results of these experiments are very interesting, showing that the proposed techniques significantly improve the performance of the DLV system.</description><subject>Complexity</subject><subject>Computation</subject><subject>Declarative programming</subject><subject>Design optimization</subject><subject>Heuristic</subject><subject>Logic programming</subject><subject>Mathematical programming</subject><subject>Optimization techniques</subject><subject>Performance enhancement</subject><subject>Problem solving</subject><issn>1012-2443</issn><issn>1573-7470</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2007</creationdate><recordtype>article</recordtype><sourceid>AFKRA</sourceid><sourceid>AZQEC</sourceid><sourceid>BENPR</sourceid><sourceid>CCPQU</sourceid><sourceid>DWQXO</sourceid><sourceid>GNUQQ</sourceid><recordid>eNotkE1LAzEURYMoWKs_wN2A6-jLSyYfSylqhUI3ug4zSaZNbWdqMiP4702pq3sXh3vhEHLP4JEBqKfMQCikAJoa0IqKCzJjteJUCQWXpQNDikLwa3KT8w4AjNRyRsy6r_bD8EWbbWh8tQ1TinmMLlexr3zMu6l3Y_wJBdpEVx3TsEnN4RD7zS256pp9Dnf_OSefry8fiyVdrd_eF88r6lDxkaJrtce2RukDY855JR2iqVuUnWla18qOode8cNxwrjsECK4zxnOpjPB8Th7Ou-X7ewp5tLthSn25tGiYZoaDrgvFzpRLQ84pdPaY4qFJv5aBPRmyZ0O2GLInQ1bwP6yuWMc</recordid><startdate>200712</startdate><enddate>200712</enddate><creator>Faber, Wolfgang</creator><creator>Leone, Nicola</creator><creator>Pfeifer, Gerald</creator><creator>Ricca, Francesco</creator><general>Springer Nature B.V</general><scope>AAYXX</scope><scope>CITATION</scope><scope>8FE</scope><scope>8FG</scope><scope>ABJCF</scope><scope>AFKRA</scope><scope>ARAPS</scope><scope>AZQEC</scope><scope>BENPR</scope><scope>BGLVJ</scope><scope>CCPQU</scope><scope>DWQXO</scope><scope>GNUQQ</scope><scope>HCIFZ</scope><scope>JQ2</scope><scope>K7-</scope><scope>L6V</scope><scope>M7S</scope><scope>P5Z</scope><scope>P62</scope><scope>PQEST</scope><scope>PQQKQ</scope><scope>PQUKI</scope><scope>PTHSS</scope></search><sort><creationdate>200712</creationdate><title>On look-ahead heuristics in disjunctive logic programming</title><author>Faber, Wolfgang ; Leone, Nicola ; Pfeifer, Gerald ; Ricca, Francesco</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c273t-2cb8d2b526de11ccd76c2295b26f9abcb6f12d832cb39338f200ecf99d36794d3</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2007</creationdate><topic>Complexity</topic><topic>Computation</topic><topic>Declarative programming</topic><topic>Design optimization</topic><topic>Heuristic</topic><topic>Logic programming</topic><topic>Mathematical programming</topic><topic>Optimization techniques</topic><topic>Performance enhancement</topic><topic>Problem solving</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Faber, Wolfgang</creatorcontrib><creatorcontrib>Leone, Nicola</creatorcontrib><creatorcontrib>Pfeifer, Gerald</creatorcontrib><creatorcontrib>Ricca, Francesco</creatorcontrib><collection>CrossRef</collection><collection>ProQuest SciTech Collection</collection><collection>ProQuest Technology Collection</collection><collection>Materials Science & Engineering Collection</collection><collection>ProQuest Central UK/Ireland</collection><collection>Advanced Technologies & Aerospace Collection</collection><collection>ProQuest Central Essentials</collection><collection>ProQuest Central</collection><collection>Technology Collection</collection><collection>ProQuest One Community College</collection><collection>ProQuest Central Korea</collection><collection>ProQuest Central Student</collection><collection>SciTech Premium Collection</collection><collection>ProQuest Computer Science Collection</collection><collection>Computer Science Database</collection><collection>ProQuest Engineering Collection</collection><collection>Engineering Database</collection><collection>Advanced Technologies & Aerospace Database</collection><collection>ProQuest Advanced Technologies & Aerospace Collection</collection><collection>ProQuest One Academic Eastern Edition (DO NOT USE)</collection><collection>ProQuest One Academic</collection><collection>ProQuest One Academic UKI Edition</collection><collection>Engineering Collection</collection><jtitle>Annals of mathematics and artificial intelligence</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Faber, Wolfgang</au><au>Leone, Nicola</au><au>Pfeifer, Gerald</au><au>Ricca, Francesco</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>On look-ahead heuristics in disjunctive logic programming</atitle><jtitle>Annals of mathematics and artificial intelligence</jtitle><date>2007-12</date><risdate>2007</risdate><volume>51</volume><issue>2-4</issue><spage>229</spage><epage>266</epage><pages>229-266</pages><issn>1012-2443</issn><eissn>1573-7470</eissn><abstract>Disjunctive logic programming (DLP), also called answer set programming (ASP), is a convenient programming paradigm which allows for solving problems in a simple and highly declarative way. The language of DLP is very expressive and able to represent even problems of high complexity (every problem in the complexity class ). During the last decade, efficient systems supporting DLP have become available. Virtually all of these systems internally rely on variants of the Davis–Putnam procedure (for deciding propositional satisfiability [SAT]), combined with a suitable model checker. The heuristic for the selection of the branching literal (i.e., the criterion determining the literal to be assumed true at a given stage of the computation) dramatically affects the performance of a DLP system. While heuristics for SAT have received a fair deal of research, only little work on heuristics for DLP has been done so far. In this paper, we design, implement, optimize, and experiment with a number of heuristics for DLP. We focus on different look-ahead heuristics, also called “dynamic heuristics” (the DLP equivalent of unit propagation [UP] heuristics for SAT). These are branching rules where the heuristic value of a literal Q depends on the result of taking Q true and computing its consequences. We motivate and formally define a number of look-ahead heuristics for DLP programs. Furthermore, since look-ahead heuristics are computationally expensive, we design two techniques for optimizing the burden of their computation. We implement all the proposed heuristics and optimization techniques in DLV—the state-of-the-art implementation of disjunctive logic programming, and we carry out experiments, thoroughly comparing the heuristics and optimization techniques on a large number of instances of well-known benchmark problems. The results of these experiments are very interesting, showing that the proposed techniques significantly improve the performance of the DLV system.</abstract><cop>Dordrecht</cop><pub>Springer Nature B.V</pub><doi>10.1007/s10472-008-9087-4</doi><tpages>38</tpages></addata></record> |
fulltext | fulltext |
identifier | ISSN: 1012-2443 |
ispartof | Annals of mathematics and artificial intelligence, 2007-12, Vol.51 (2-4), p.229-266 |
issn | 1012-2443 1573-7470 |
language | eng |
recordid | cdi_proquest_journals_2918193085 |
source | ProQuest Central UK/Ireland; SpringerLink Journals - AutoHoldings; ProQuest Central |
subjects | Complexity Computation Declarative programming Design optimization Heuristic Logic programming Mathematical programming Optimization techniques Performance enhancement Problem solving |
title | On look-ahead heuristics in disjunctive logic programming |
url | https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-25T17%3A08%3A49IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_cross&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=On%20look-ahead%20heuristics%20in%20disjunctive%20logic%20programming&rft.jtitle=Annals%20of%20mathematics%20and%20artificial%20intelligence&rft.au=Faber,%20Wolfgang&rft.date=2007-12&rft.volume=51&rft.issue=2-4&rft.spage=229&rft.epage=266&rft.pages=229-266&rft.issn=1012-2443&rft.eissn=1573-7470&rft_id=info:doi/10.1007/s10472-008-9087-4&rft_dat=%3Cproquest_cross%3E2918193085%3C/proquest_cross%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=2918193085&rft_id=info:pmid/&rfr_iscdi=true |