41
Answer Set Programming and Extensions Unit 4 – Applications and Tools Thomas Eiter Institut für Informationsysteme, TU Wien VTSA Summer School 2016, Liège, August 29-September 2, 2016 Austrian Science Fund (FWF) grants P24090, P26471, P27730 1/32

Answer Set Programming and Extensions - TU Wien Set Programming and Extensions Unit 4 ... language standardization (cf. SAT/Dimacs*, ICAPS/PDDL*) later: ... Software Engineering challenges

Embed Size (px)

Citation preview

Answer Set Programming and ExtensionsUnit 4 – Applications and Tools

Thomas Eiter

Institut für Informationsysteme, TU Wien

VTSA Summer School 2016, Liège, August 29-September 2, 2016

Austrian Science Fund (FWF) grants P24090, P26471, P27730

1/32

ASP & Extensions / Unit 4 1. Introduction

Unit Outline

1. Introduction

2. ASP Competition Series

3. Applications: Overview

4. Application Development Tools

5. Selected Problems

T. Eiter / TU Wien VTSA 2016 08-09/2013 2/32

ASP & Extensions / Unit 4 1. Introduction

ASP Applications

There is a growing range of applications of ASP

For pervasive usage, software tools are needed (editors, debuggers,versioning tools, etc)

Need Application Programming Interfaces (APIs) to allow for ASP incommon software frameworks (Unit 3)

;ASP inside

• ASP is not a fully-fledged programming language!

• Use ASP modules for smaller tasks / capabilities transparentlyintegrated into a more complex system

For solver developments, need benchmarks (synthetic +applications), of varying complexity (P,NP,Σp

2 etc)

T. Eiter / TU Wien VTSA 2016 08-09/2013 3/32

ASP & Extensions / Unit 4 2. ASP Competition Series

ASP Competition Series

• since 2007, biannual (exception: 2014, Vienna Summer of Logic)• initial goals: benchmarks fair competition environment (open calls)• side effect: language standardization (cf. SAT/Dimacs*, ICAPS/PDDL*)• later: modeling and solve competitions (humans)• a variety of different benchmark classes and solving classes, many tracks

T. Eiter / TU Wien VTSA 2016 08-09/2013 4/32

ASP & Extensions / Unit 4 2. ASP Competition Series

ASP Competition Series /2

Latest competition: 2015• benchmark call focused on applications of practical impact and/or

difficult to solve encodings (non-tight),decision, optimization benchmarks

• benchmarks instances were classified according to their expectedhardness.

• “Marathon Track”: best performing systems are given more time forsolv- ing hard instances.

Winners• long term winner: clasp• winners 2015: ME-ASP (regular track), WASP (marathon track)

Details: [Calimeri et al., 2016b]http://www.sciencedirect.com/science/article/pii/

S0004370215001447

T. Eiter / TU Wien VTSA 2016 08-09/2013 5/32

ASP & Extensions / Unit 4 3. Applications: Overview

ASP Applications

information integrationconstraint satisfaction, configurationplanning, routing, schedulingdiagnosis, repairsecurity, verificationSemantic Webgames, puzzlessystems biology / biomedicineknowledge managementmusicology

. . .

Early report: http://www.kr.tuwien.ac.at/projects/WASP/report.html

Upcoming: AI Magazine article [Erdem et al., 2016]

Survey table: https://www.dropbox.com/s/pe261e4qi6bcyyh/aspAppTable.pdf?dl=0

T. Eiter / TU Wien VTSA 2016 08-09/2013 6/32

ASP & Extensions / Unit 4 3. Applications: Overview

Examples

USA-Advisor [Nogueira et al., 2001]

• decision support system to control the Space Shuttle during flight

• issue: problems with the oxygen transport (pipes and valves)

• failure scenario: also multiple system failures occur

Anton [Boenn et al., 2011] http://www.cs.bath.ac.uk/~mjb/anton/

• automatic system for the composition of Renaissance-style music.

• musical knowledge ≈ 500 ASP rules (melody, harmony, rhythm)

• can generate musical pieces, check pieces for violations.

Biological Network Repair [Kaminski et al., 2013]

• model nodes (substances, etc) in a large scale biological influencegraph, with roles (e.g. inhibitor, activator)

• repair inconsistencies (modify roles, add links between nodes, etc)

T. Eiter / TU Wien VTSA 2016 08-09/2013 7/32

ASP & Extensions / Unit 4 3. Applications: Overview

Verification and Security

Model checking• [Heljanko and Niemelä, 2003]• [Liu et al., 1998]

Verification of cryptographic/security protocols• [Delgrande et al., 2009]• [Aiello and Massacci, 2001]• [Armando et al., 2004]

Business processes verification• [Giordano et al., 2013]

Game theory and agents• [Vos and Vermeir, 2001], [Vos and Vermeir, 2004]

T. Eiter / TU Wien VTSA 2016 08-09/2013 8/32

ASP & Extensions / Unit 4 3. Applications: Overview

ASP in Industrial Applications

Software Engineering challenges

• powerful and expressive framework⇒ flexibility, readability,extensibility, and ease of maintenance

Executable specification language

• clarify and formalize the requirements with the customer much morequickly

low (implementation) costs

• cheaper compared to traditional imperative languages• use for (rapid) prototyping

Challenge: efficiency / scalability• e.g. magic set technique

more information: [Erdem et al., 2016]

T. Eiter / TU Wien VTSA 2016 08-09/2013 9/32

ASP & Extensions / Unit 4 3. Applications: Overview

Example: Workforce Managementassign(E,Sh,Sk) | nAssign(E,Sh,Sk) :-hasSkill(E,Sk), employee(E,_), shift(Sh,Day,Dur), not absent(Day,E),not excluded(Sh,E), neededSkill(Sh,Sk), workedHours(E,Wh), Wh+Dur<36.

:- shift(Sh,_,_), neededEmployee(Sh,Sk,EmpNum), #countE:assign(E,Sh,Sk)!=EmpNum.

:- assign(E,Sh,Sk1), assign(E,Sh,Sk2), Sk1!=Sk2.

:- wstats(E1,Sk,LastTime1), wstats(E2,Sk,LastTime2), LastTime1>LastTime2,assign(E1,Sh,Sk),not assign(E2,Sh,Sk).

:- workedHours(E1,Wh1), workedHours(E2,Wh2), threshold(Tr),Wh1+Tr<Wh2, assign(E1,Sh,Sk), not assign(E2,Sh,Sk).

Team Building at Gioia Tauro Seaport (N. Leone et al., Exeura s.r.l,company ICO BLG) [Ricca et al., 2012]• teams for unloading ships (nontrivial: skills, fair workload, laws).• kernel ASP part (simplified form): guess shift assignment, check constraints• user interface allows to modify manual teams & check constraints.• outlines cause for possible errors, suggests fixes (constraint relaxation)• ASP-based shift plans for 130 employees within some minutes

beneficial: declarative nature, executability eased refining & tuningproblem specs and ASP programs with the stakeholders

T. Eiter / TU Wien VTSA 2016 08-09/2013 10/32

ASP & Extensions / Unit 4 4. Application Development Tools 4.1 ASP Integrated Development Environments (IDEs)

ASP Integrated Development Environments (IDEs)

IDE: ease programming for both novice and skilled developers

SEA LION [Busoniu et al., 2013]

• first environment offering debugging for non-ground programs• unique tools for model-based engineering (ER diagrams), testing via

annotations, and bi-directional visualization of interpretations.

ASPIDE [Febbraro et al., 2011]

• comprehensive framework integrating several tools for advancedprogram composition and execution.

• test-driven software development in the style of JUnit, e.g.

dependency graph visualizer, designed to inspect predicatedependencies and browsing the program;debugger [Dodaro et al., 2015],DLV profiler,ARVis comparator of answer sets,answer set visualizer IDPDraw.data source plugin for JDBC connectivity

T. Eiter / TU Wien VTSA 2016 08-09/2013 11/32

ASP & Extensions / Unit 4 4. Application Development Tools 4.1 ASP Integrated Development Environments (IDEs)

ASP Development Environments /2

https://www.mat.unical.it/ricca/downloads/rr2013-tutorial.pdf

ASPIDE is extensible [Febbraro et al., 2012]user can provide new plugins:• new input formats• new program rewritings• customizing the visualization/output format of solver results

more information: See RR 2013 tutorial https://www.mat.unical.it/ricca/downloads/rr2013-tutorial.pdf

Big issue (still): debugging

T. Eiter / TU Wien VTSA 2016 08-09/2013 12/32

ASP & Extensions / Unit 4 4. Application Development Tools 4.2 Frontends

Frontends

One shot usage: ad hoc encodings

For generic problems in Knowledge Representation and Reasoning,frontends have been devloped

E.g. dlv built-in frontends

• diagnosis [E_ et al., 1998]

• knowledge-based planning [E_ et al., 2001]

• inheritance [Buccafurri et al., 2002]

Furthermore, extensions to ease specific applications (e.g.,inconsistency management)

T. Eiter / TU Wien VTSA 2016 08-09/2013 13/32

ASP & Extensions / Unit 4 5. Selected Problems 5.1 Inconsistency Management

Inconsistency Management

Dealing with inconsistency, in particular with lack of answer sets

loves(P,C)← parent(P,C), not ¬loves(P,C). (1)

parent(mary, john). (2)

cares(P,C)← loves(P,C). (3)

¬cares(mary, john). (4)

cares(mary, john) is entailed

adding ¬cares(mary, john): no answer set!

intuitively, (1) should be blocked, thus ¬loves(mary, john) true

Consistency-Restoral (CR) Prolog [Balduccini and Gelfond, 2003]

¬loves(P,C)+← parent(P,C) (5)

• allow to conclude ¬loves(P,C) if parent(P,C) is believed• apply only if program has no answer set, and parsimoniously

T. Eiter / TU Wien VTSA 2016 08-09/2013 14/32

ASP & Extensions / Unit 4 5. Selected Problems 5.1 Inconsistency Management

Inconsistency Management

Dealing with inconsistency, in particular with lack of answer sets

loves(P,C)← parent(P,C), not ¬loves(P,C). (1)

parent(mary, john). (2)

cares(P,C)← loves(P,C). (3)

¬cares(mary, john). (4)

cares(mary, john) is entailed

adding ¬cares(mary, john): no answer set!

intuitively, (1) should be blocked, thus ¬loves(mary, john) true

Consistency-Restoral (CR) Prolog [Balduccini and Gelfond, 2003]

¬loves(P,C)+← parent(P,C) (5)

• allow to conclude ¬loves(P,C) if parent(P,C) is believed• apply only if program has no answer set, and parsimoniously

T. Eiter / TU Wien VTSA 2016 08-09/2013 14/32

ASP & Extensions / Unit 4 5. Selected Problems 5.1 Inconsistency Management

Inconsistency Management /2

Practical ASP usage:

Consistent Query Answering in Database Integration (INFOMIX)[Leone et al., 2005]

• EU Project, semantic repair in DB integration settings

DLVCleaner for automatic correction of anomalies in medicalknowledge bases cf. [Leone and Ricca, 2015]

• regional cancer database (Italy)

T. Eiter / TU Wien VTSA 2016 08-09/2013 15/32

ASP & Extensions / Unit 4 5. Selected Problems 5.2 Reasoning about Actions

Reasoning about Actions

Reasoning about the effects of actions is an important AI problemASP is well-versed to address the Frame Problem:

If an action α is taken, which properties of objects remainunaffected.

E.g.∀x, y, t. at(x, joe, t) ∧ walks(joe, x, y, t)→ at(y, joe, t + 1)

• Given carries(joe,wallet, t) we expect to conclude has(joe,wallet, t)• elegant frame rule expressing inertia

carries(joe,wallet, t + 1)← carries(joe,wallet, t),not¬carries(joe,wallet, t + 1).

note: requires non-monotonic behavior!

Led to dedicated action languages [Gelfond and Lifschitz, 1998]hiding details, which are often translated to ASP

T. Eiter / TU Wien VTSA 2016 08-09/2013 16/32

ASP & Extensions / Unit 4 5. Selected Problems 5.2 Reasoning about Actions

ACTHEX

Motivation

• reasoning about actions and planning• declarative action languages from KRR

dlv front-end: static, no dynamic interaction

ACTHEX: [Basol et al., 2010], [Fink et al., 2013]

• ASP based language, with access to external sources• express execution order of actions via action atoms

#robot[goto, charger]{b, 1}← &sensor[bat](low);

#robot[clean, kitchen]{c, 2}← night;

#robot[clean, bedroom]{c, 2}← day;

night ∨ day.

charging precedes cleaning; b (c) selects inference strength• preferences, costs are optional

T. Eiter / TU Wien VTSA 2016 08-09/2013 17/32

ASP & Extensions / Unit 4 5. Selected Problems 5.2 Reasoning about Actions

ACTHEX /2

Evaluation• evaluate ACTHEX program in an observe-eval-act cycle

action

findout(2)

actionsactuators

sensors

(1)

(3)

agent

environment

percepts

• action findout: actions from a computed answer set, that are derivedin this (b) resp. all (c) answer sets

• Arrange actions into an execution schedule

Realization• on top of HEX programs, using designated external atoms• implemented as an extension of dlvhex, called ActionPluginhttp://www.kr.tuwien.ac.at/research/systems/dlvhex/https://github.com/hexhex/core

T. Eiter / TU Wien VTSA 2016 08-09/2013 18/32

ASP & Extensions / Unit 4 5. Selected Problems 5.2 Reasoning about Actions

ACTHEX /3

Modules customizable by the users• Addons (existing: Robot, KBMod, BoolMatrix, SmartRobot, . . . )• Environment• BestModelSelector• Execution Schedule Builder• Iterator

Applications e.g.• declarative management policies (knowledge base updates)• production rule systems• logic-based agent programs

Further / ongoing work• framework improvements• system improvements• reasoning about agent behavior

⇒ policy verification [Saribatur and Eiter, 2016]: does the agentprogram work?

T. Eiter / TU Wien VTSA 2016 08-09/2013 19/32

ASP & Extensions / Unit 4 5. Selected Problems 5.2 Reasoning about Actions

Hybrid Reasoning

Need for mixing of

• high level reasoning (planning, hypothetical reasoning, diagnosis)

• low level computations (action / motion feasibility)

external atoms (dlvhex, clingo) allow to embed results of externalcomputations into ASP programs (outsource computations)

E.g.: multiple robots rearranging objects on a cluttered table [Havuret al., 2014]

• need high-level motion planning• low-level feasibility checks (no collision, object reachable etc)

Similar in gaming (AngryHex) [Calimeri et al., 2016a]

T. Eiter / TU Wien VTSA 2016 08-09/2013 20/32

ASP & Extensions / Unit 4 5. Selected Problems 5.3 AngryHex

AngryHex

Joint activity between University of Calabria (UNICAL) and TU Wien(KBS)

Pick up the Angry Birds Competition Challengehttps://aibirds.org/

Approach: design an agent based ondeclarative logic programming

Challenge: plan optimal shots underconsideration of some physics

Means: HEX-programs

⇒ AngryHex [Calimeri et al., 2016a]

T. Eiter / TU Wien VTSA 2016 08-09/2013 21/32

ASP & Extensions / Unit 4 5. Selected Problems 5.3 AngryHex

Anry Birds – Game Setup

Video game developed by Rovio Entertainment Ltd.Browser Game (Chrome Plug-in)Client/Server architecture (API)• obtain current scores (of levels)• select levels• Prompt certain shots

T. Eiter / TU Wien VTSA 2016 08-09/2013 22/32

ASP & Extensions / Unit 4 5. Selected Problems 5.3 AngryHex

External atoms

Use external atoms to outsource computations

• &distance[O1,O2](D) is true iffdistance between O1 and O2 is D

• &canpush[ngobject](O1,O2) is true iffO1 can push O2 given additional infoin the extension of ngobject

O1 O2

D

O2

O1

Rule to estimate the likelihood that object O2 falls when O1 is hit

Rule1 : pushDamage(O2,P1,P)← pushDamage(O1, _,P1),P1 > 0

&canpush[ngobject](O1,O2),

pushability(O2,P2),P = P1 ∗ P2/100.

T. Eiter / TU Wien VTSA 2016 08-09/2013 23/32

ASP & Extensions / Unit 4 5. Selected Problems 5.3 AngryHex

AngryHex Architecture

Uses the provided framework (browser plugin, vision module, . . . )

Agent builds on tactics and strategy, both are realized declaratively

Tactics: reasoning about the next shot is done in a HEX-program P• Input: scene info from the vision module (facts of P)

• Output: desired target (models of P)

Strategy: next level to played is computed in an ASP program P′

• Input: info about the number of times levels were played, bestscores achieved, scores of our agent (facts of P′)

• Output: next optimal level to be played (models of P′)

T. Eiter / TU Wien VTSA 2016 08-09/2013 24/32

ASP & Extensions / Unit 4 5. Selected Problems 5.3 AngryHex

HEX Encoding for Tactics

Physics simulation results are accessed via external atoms:• decide which O′ intersect with trajectory of a bird after hitting O

• decide whether O1 falls whenever O2 falls . . .

Tactics in details:• Consider each shootable target

• Compute the estimated damage on each non-target object

• Rank the targets (=answer sets) using weak constraints

• Consider history: never play a level in the same way again!

T. Eiter / TU Wien VTSA 2016 08-09/2013 25/32

ASP & Extensions / Unit 4 5. Selected Problems 5.3 AngryHex

ASP Encoding for Strategy

Decides which level to play next based on info about:• number of times each level was played• best scores• our agent’s scores . . .

Strategy in details:• First play each level once

• Second play levels in which our scoremaximally differs from the best one

• Third play levels in which we played bestand the difference to the second best score is minimal

Results in AngryBird Competition:• quarter finals 2013, semi finals 2014, 2nd in 2015, quarter finals in

2016 (strategy error. . . )

T. Eiter / TU Wien VTSA 2016 08-09/2013 26/32

ASP & Extensions / Unit 4 5. Selected Problems 5.4 Route Planning

Route Planning on External Map

Route planning, with API to external transport map

Possible semantic enrichment: restaurants, shops, pharmacies, . . .

Map at data.wien.gv.at:• 158 subway, tram, city bus and rapid transit train lines• 1701 stations• used uniformly cost 1,2,3 for travel time, 10 for change+wait

Use HEX, with external atom:&path[s, d](a, b, c, l): returns the shortest direct connection (by Dijkstra’salgorithm) from s to d, represented as set edges (a, b) between stations aand b with costs c using line l.

T. Eiter / TU Wien VTSA 2016 08-09/2013 27/32

ASP & Extensions / Unit 4 5. Selected Problems 5.4 Route Planning

Route Planning on External Map /2

Example: journey from Wien Mitte to Taubstummengasse:

(Wien Mitte, Wien Mitte (U4), 10, change),

(Wien Mitte (U4), Stadtpark (U4), 1, U4),

(Stadtpark (U4), Karlsplatz (U4), 1, U4),

(Karlsplatz (U4), Karlsplatz (U1), 10, change),

(Karlsplatz (U1), Taubstummengasse ( U1), 1 , U1),

(Taubstummengasse (U1), Taubstummengasse, 10, change)

T. Eiter / TU Wien VTSA 2016 08-09/2013 28/32

ASP & Extensions / Unit 4 5. Selected Problems 5.4 Route Planning

Route Planning on External Map /3

Problems• Single Route Planning (SRP):

plan to visit a number of locationsgo for lunch in a restaurant if tour length ≥ 300.

• Pair Route Planning (PRP):individual plans for two persons that want to do see some sightstours intersect somehwere (meeting locations drawn randomly)meet in a restaurant, if at least one of the tour lengths is ≥ 300

Implementation• guess and check (and define)• lunch constraint is difficult: tour depends on the individual locations

which depend on the tour⇒ cycle over &path needed• check tour length using an external atom &longerThan[path](limit)

T. Eiter / TU Wien VTSA 2016 08-09/2013 29/32

ASP & Extensions / Unit 4 5. Selected Problems 5.4 Route Planning

Route Planning on External Map /4

Experiments:• SRP: visit n locations, n possible lunch places (random), ≤ 1.15 ∗ n

changes• PRP: as SR per person, and n possible (non-restaurant) meeting

places at random

Obervations:• importing the whole map apriori is merely impossible

• external source can compute only direct connections: interactionbetween hex-program and the external source needed (lunchconstraint)

• liberal safety enables to solve the task in the given time limit byimporting only the relevant part of the map during grounding.

More details: [E_ et al., 2016]

T. Eiter / TU Wien VTSA 2016 08-09/2013 30/32

ASP & Extensions / Unit 4 5. Selected Problems 5.4 Route Planning

Route Planning on External Map /5

Single Route planning (all transport; subways and trams; subways):

3 4 5 6 7

0

100

200

300 Wall Clock Time (strong safety)

Grounding Time (strong safety)

Wall Clock Time (liberal safety)

Grounding Time (liberal safety)

Solving Time (liberal safety)

3 4 5 6 7 8 9

0

100

200

300 Wall Clock Time (strong safety)

Grounding Time (strong safety)

Wall Clock Time (liberal safety)

Grounding Time (liberal safety)

Solving Time (liberal safety)

3 4 5 6 7 8 9

0

100

200

300 Wall Clock Time (strong safety)

Grounding Time (strong safety)

Wall Clock Time (liberal safety)

Grounding Time (liberal safety)

Solving Time (liberal safety)

Pair Route planning (all transport; subways and trams; subways):

1 2 3 4 5 6

0

100

200

300 Wall Clock Time (strong safety)

Grounding Time (strong safety)

Wall Clock Time (liberal safety)

Grounding Time (liberal safety)

Solving Time (liberal safety)

1 2 3 4 5 6

0

100

200

300 Wall Clock Time (strong safety)

Grounding Time (strong safety)

Wall Clock Time (liberal safety)

Grounding Time (liberal safety)

Solving Time (liberal safety)

1 2 3 4 5 6 7

0

100

200

300 Wall Clock Time (strong safety)

Grounding Time (strong safety)

Wall Clock Time (liberal safety)

Grounding Time (liberal safety)

Solving Time (liberal safety)

T. Eiter / TU Wien VTSA 2016 08-09/2013 31/32

ASP & Extensions / Unit 4 5. Selected Problems 5.4 Route Planning

Conclusion

ASP is a more recent declarative problem solving paradigm

A body of theoretical work

KR and non-monotonic reasoning features

Many extensions & solvers

Serves as a host formalism (good for prototyping)

A growing range of applications . . .

. . . and lots of things to do in theory and practice!

T. Eiter / TU Wien VTSA 2016 08-09/2013 32/32

References I

Luigia Carlucci Aiello and Fabio Massacci.Verifying security protocols as planning in logic programming.ACM Trans. Comput. Log., 2(4):542–580, 2001.

Alessandro Armando, Luca Compagna, and Yuliya Lierler.Automatic compilation of protocol insecurity problems into logic programming.In José Júlio Alferes and João Alexandre Leite, editors, Logics in Artificial Intelligence, 9thEuropean Conference, JELIA 2004, Lisbon, Portugal, September 27-30, 2004, Proceedings,volume 3229 of Lecture Notes in Computer Science, pages 617–627. Springer, 2004.

Marcello Balduccini and Michael Gelfond.Logic programs with consistency-restoring rules.In John McCarthy and Mary-Anne Williams, editors, International Symposium on LogicalFormalization of Commonsense Reasoning, AAAI 2003 Spring Symposium Series, pages9–18, 2003.

Selen Basol, Ozan Erdem, Michael Fink, and Giovambattista Ianni.Hex programs with action atoms.In Manuel V. Hermenegildo and Torsten Schaub, editors, ICLP (Technical Communications),volume 7 of LIPIcs, pages 24–33. Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik, 2010.

References II

Georg Boenn, Martin Brain, Marina De Vos, and John ffitch.Anton - A rule-based composition system.In Proceedings of the 2011 International Computer Music Conference, ICMC 2011,Huddersfield, UK, July 31 - August 5, 2011. Michigan Publishing, 2011.

Francesco Buccafurri, Wolfgang Faber, and Nicola Leone.Disjunctive Logic Programs with Inheritance.Journal of the Theory and Practice of Logic Programming, 2(3), May 2002.

Paula-Andra Busoniu, Johannes Oetsch, Jörg Pührer, Peter Skocovsky, and Hans Tompits.Sealion: An eclipse-based IDE for answer-set programming with advanced debuggingsupport.TPLP, 13(4-5):657–673, 2013.

Francesco Calimeri, Michael Fink, Stefano Germano, Andreas Humenberger, GiovambattistaIanni, Christoph Redl, Daria Stepanova, Andrea Tucci, and Anton Wimmer.Angry-hex: An artificial player for angry birds based on declarative knowledge bases.IEEE Trans. Comput. Intellig. and AI in Games, 8(2):128–139, 2016.

Francesco Calimeri, Martin Gebser, Marco Maratea, and Francesco Ricca.Design and results of the fifth answer set programming competition.Artif. Intell., 231:151–181, 2016.

References III

James P. Delgrande, Torsten Grote, and Aaron Hunter.A general approach to the verification of cryptographic protocols using answer setprogramming.In Esra Erdem, Fangzhen Lin, and Torsten Schaub, editors, Logic Programming andNonmonotonic Reasoning, 10th International Conference, LPNMR 2009, Potsdam, Germany,September 14-18, 2009. Proceedings, volume 5753 of Lecture Notes in Computer Science,pages 355–367. Springer, 2009.

Carmine Dodaro, Philip Gasteiger, Benjamin Musitsch, Francesco Ricca, and Kostyantyn M.Shchekotykhin.Interactive debugging of non-ground ASP programs.In Francesco Calimeri, Giovambattista Ianni, and Miroslaw Truszczynski, editors, LogicProgramming and Nonmonotonic Reasoning - 13th International Conference, LPNMR 2015,Lexington, KY, USA, September 27-30, 2015. Proceedings, volume 9345 of Lecture Notes inComputer Science, pages 279–293. Springer, 2015.

T. Eiter, W. Faber, N. Leone, and G. Pfeifer.The Diagnosis Frontend of the dlv System.Technical Report DBAI-TR-98-20, Institut für Informationssysteme, Technische UniversitätWien, Austria, November 1998.Shortened version in The European Journal on Artificial Intelligence (AI Communications),12(1-2):99–111, 1999.

References IV

Thomas Eiter, Wolfgang Faber, Nicola Leone, Gerald Pfeifer, and Axel Polleres.The DLVK planning system.In A. Cimatti, H. Geffner, E. Giunchiglia, and J. Rintanen, editors, Informal Proc. IJCAI-01Workshop on Planning under Uncertainty and Incomplete Information, pages 76–81, August2001.

Thomas Eiter, Michael Fink, Thomas Krennwallner, and Christoph Redl.Domain expansion for ASP-programs with external sources.Artificial Intelligence, 233:81–121, April 2016.

Esra Erdem, Michael Gelfond, and Nicola Leone.Applications of ASP.AI Magazine, 2016.Special issue on Answer Set Programming, in press.

Onofrio Febbraro, Kristian Reale, and Francesco Ricca.ASPIDE: integrated development environment for answer set programming.In James P. Delgrande and Wolfgang Faber, editors, Logic Programming and NonmonotonicReasoning - 11th International Conference, LPNMR 2011, Vancouver, Canada, May 16-19,2011. Proceedings, volume 6645 of Lecture Notes in Computer Science, pages 317–330.Springer, 2011.

References V

Onofrio Febbraro, Nicola Leone, Kristian Reale, and Francesco Ricca.Extending ASPIDE with user-defined plugins.In Francesca A. Lisi, editor, Proceedings of the 9th Italian Convention on Computational Logic,Rome, Italy, June 6-7, 2012, volume 857 of CEUR Workshop Proceedings, pages 236–240.CEUR-WS.org, 2012.

Michael Fink, Stefano Germano, Giovambattista Ianni, Christoph Redl, and Peter Schüller.Acthex: Implementing hex programs with action atoms.In Pedro Cabalar and Tran Cao Son, editors, LPNMR, volume 8148 of Lecture Notes inComputer Science, pages 317–322. Springer, 2013.

Michael Gelfond and Vladimir Lifschitz.Action Languages.Electronic Transactions on Artificial Intelligence, 2(3-4):193–210, 1998.

Laura Giordano, Alberto Martelli, Matteo Spiotta, and Daniele Theseider Dupré.Business process verification with constraint temporal answer set programming.TPLP, 13(4-5):641–655, 2013.

Giray Havur, Guchan Ozbilgin, Esra Erdem, and Volkan Patoglu.Geometric rearrangement of multiple movable objects on cluttered surfaces: A hybridreasoning approach.In 2014 IEEE International Conference on Robotics and Automation, ICRA 2014, Hong Kong,China, May 31 - June 7, 2014, pages 445–452. IEEE, 2014.

References VI

Keijo Heljanko and Ilkka Niemelä.Bounded ltl model checking with stable models.TPLP, 3(4-5):519–550, 2003.

Roland Kaminski, Torsten Schaub, Anne Siegel, and Santiago Videla.Minimal intervention strategies in logical signaling networks with ASP.TPLP, 13(4-5):675–690, 2013.

Nicola Leone and Francesco Ricca.Answer set programming: A tour from the basics to advanced development tools and industrialapplications.In Wolfgang Faber and Adrian Paschke, editors, Reasoning Web. Web Logic Rules - 11thInternational Summer School 2015, Berlin, Germany, July 31 - August 4, 2015, TutorialLectures, volume 9203 of Lecture Notes in Computer Science, pages 308–326. Springer,2015.

Nicola Leone, Georg Gottlob, Riccardo Rosati, Thomas Eiter, Wolfgang Faber, Michael Fink,Gianluigi Greco, Giovambattista Ianni, Edyta Kałka, Domenico Lembo, Maurizio Lenzerini,Vincenzino Lio, Bartosz Nowicki, Marco Ruzzi, Witold Staniszkis, and Giorgio Terracina.The INFOMIX System for Advanced Integration of Incomplete and Inconsistent Data.In Proceedings of the 24th ACM SIGMOD International Conference on Management of Data(SIGMOD 2005), pages 915–917, Baltimore, Maryland, USA, June 2005. ACM Press.

References VII

Xinxin Liu, C. R. Ramakrishnan, and Scott A. Smolka.Fully local and efficient evaluation of alternating fixed points (extended abstract).In Bernhard Steffen, editor, Tools and Algorithms for Construction and Analysis of Systems,4th International Conference, TACAS ’98, Held as Part of the European Joint Conferences onthe Theory and Practice of Software, ETAPS’98, Lisbon, Portugal, March 28 - April 4, 1998,Proceedings, volume 1384 of Lecture Notes in Computer Science, pages 5–19. Springer,1998.

Monica Nogueira, Marcello Balduccini, Michael Gelfond, Richard Watson, and Matthew Barry.An A-Prolog Decision Support System for the Space Shuttle.In I.V. Ramakrishnan, editor, Practical Aspects of Declarative Languages, Third InternationalSymposium (PADL 2001), number 1990 in Lecture Notes in Computer Science, pages169–183. Springer, 2001.

Francesco Ricca, Giovanni Grasso, Mario Alviano, Marco Manna, Vincenzino Lio, SalvatoreIiritano, and Nicola Leone.Team-building with answer set programming in the gioia-tauro seaport.TPLP, 12(3):361–381, 2012.

Zeynep Gozen Saribatur and Thomas Eiter.Reactive policies with planning for action languages.In Proceedings 15th International Workshop on Nonmonotonic Reasoning (NMR-2010),Declarative Programming Paradigms and Systems, April 2016.http://ftp.informatik.rwth-aachen.de/Publications/CEUR-WS/.

References VIII

Marina De Vos and Dirk Vermeir.Logic programming agents and game theory.In Alessandro Provetti and Tran Cao Son, editors, Answer Set Programming, Towards Efficientand Scalable Knowledge Representation and Reasoning, Proceedings of the 1st Intl. ASP’01Workshop, Stanford, March 26-28, 2001, 2001.

Marina De Vos and Dirk Vermeir.Extending answer sets for logic programming agents.Ann. Math. Artif. Intell., 42(1-3):103–139, 2004.