• Non ci sono risultati.

thanks to Davide Fuscà EmbASP

N/A
N/A
Protected

Academic year: 2021

Condividi "thanks to Davide Fuscà EmbASP"

Copied!
11
0
0

Testo completo

(1)

EmbASP

thanks to Davide Fuscà

(2)

Motivations

➔ Answer Set Programming (ASP) is mature for practical applications

➔ Declarative and Imperative languages integration

➔ Ease the development of ASP-based applications, in both educational and real-world contexts

➔ ICT industry is moving towards the mobile scenario

➔ Lack of works about ASP systems natively running on mobile devices

(3)

Answer Set Programming

A purely declarative AI formalism for Knowledge Representation and Reasoning developed in the field of Logic Programming and Nonmonotonic Reasoning :

➔ language based on rules, allowing for both disjunction in rule heads and nonmonotonic negation in the body

➔ use logic program to represent a given computational problem

➔ an answer set solver is used to find the models, called answer sets, which correspond one-to-one to solutions of the computational problem

(4)

ASP Based Application

Using ASP in the “wild” :

➔ Select an ASP system: DLV,DLV2,Clingo,wasp,I-DLV…

➔ Convert your objects in facts

➔ Start a process running the selected ASP system

➔ Communicates with the process writing the encoding and the facts

➔ Gather the results

➔ Convert the results in objects

➔ Kill/Manage the process

(5)

ASP Based Application

(6)
(7)

EmbASP

➔ EmbASP: an abstract framework for the integration of ASP in external systems for generic applications

➔ An actual Java implementation of the framework with specialized libraries for two state-of-the-art ASP systems

➔ Some fully functional applications developed in the educational context

(8)
(9)

The ASPMapper

Two-way “translator” between strings recognizable by the ASP solver at hand and Java objects directly employable within the application

➔ Guided by the Java Annotations

➔ Uses the Java Reflection mechanisms to examine the Annotation at run-time and perform the translation

➔ Give developers the possibility to work separately on the ASP-based modules and on the Java side

(10)
(11)

How to use EmbASP to build an application

Build an Java application for solving Sudoku puzzles using EmbASP

➔ We have a proper logic program to solve a sudoku puzzle

➔ We have also an initial schema

Riferimenti

Documenti correlati

Qualcuno si è limitato ad eseguire un compito stringato, altri si sono impegnati in una ricostruzione più articolata, altri ancora hanno colto l’occasione di questa storia della

In [3] a wall boundary independent problem (the gas flow through the slit) was considered and the decomposition of the physical domain into kinetic and continuum sub-domains was

For instance, the genes encoding leptin, thyroid hormone receptor, insulin growth factor-1, growth hormone receptor, are associated with the impacts of heat stress on the

There is simply no end to drawing fine distinctions between translations, discussing them in relation to the original and

• A member (class, interface, field, or method) of a reference (class, interface, or array) type or a constructor of a class type is accessible only if the type is accessible and

• Se una classe contiene uno o più metodi astratti, anch’essa deve essere qualificata come abstract. Classi e

Crea un oggetto di tipo File File denominato denominato nome nome a partire dalla directory dir a partire dalla directory dir (descritta tramite una stringa)..

Javascript, Python, Ruby, but also Lisp, etc...) -Type inference for generics, diamond operator -Fork/Join Framework for parallel programming. (aiuta a creare task paralleli, fa