Normative design using inductive learning

In this paper we propose a use-case-driven iterative design methodology for normative frameworks, also called virtual institutions, which are used to govern open systems. Our computational model represents the normative framework as a logic program under answer set semantics (ASP). By means of an inductive logic programming approach, implemented using ASP, it is possible to synthesise new rules and revise the existing ones. The learning mechanism is guided by the designer who describes the desired properties of the framework through use cases, comprising (i) event traces that capture possible scenarios, and (ii) a state that describes the desired outcome. The learning process then proposes additional rules, or changes to current rules, to satisfy the constraints expressed in the use cases. Thus, the contribution of this paper is a process for the elaboration and revision of a normative framework by means of a semi-automatic and iterative process driven from specifications of (un)desirable behaviour. The process integrates a novel and general methodology for theory revision based on ASP.

READ FULL TEXT VIEW PDF
POST COMMENT

Comments

There are no comments yet.

Authors

page 1

page 2

page 3

page 4

12/30/2016

PrASP Report

This technical report describes the usage, syntax, semantics and core al...
09/22/2021

Reactive Answer Set Programming

Logic Production System (LPS) is a logic-based framework for modelling r...
07/07/2002

Abduction, ASP and Open Logic Programs

Open logic programs and open entailment have been recently proposed as a...
12/31/2020

Conflict-driven Inductive Logic Programming

The goal of Inductive Logic Programming (ILP) is to learn a program that...
12/31/2018

Differentiable Satisfiability and Differentiable Answer Set Programming for Sampling-Based Multi-Model Optimization

We propose Differentiable Satisfiability and Differentiable Answer Set P...
03/26/2015

ASPeRiX, a First Order Forward Chaining Approach for Answer Set Computing

The natural way to use Answer Set Programming (ASP) to represent knowled...
10/15/2021

FOLD-R++: A Toolset for Automated Inductive Learning of Default Theories from Mixed Data

FOLD-R is an automated inductive learning algorithm for learning default...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

1 Introduction

Norms and regulations play an important role in the governance of human society. Social rules such as laws, conventions and contracts prescribe and regulate our behaviour. By providing the means to describe and reason about norms in a computational context, normative frameworks (also called institutions or virtual organisations) may be applied to software systems. Normative frameworks allow for automated reasoning about the consequences of socially acceptable and unacceptable behaviour by monitoring the permissions, empowerment and obligations of the participants and generating violations when norms are not followed.

Just as legislators, and societies, find inconsistencies in their rules (or conventions), so too may designers of normative frameworks. The details of the specification makes it relatively easy to miss crucial operations needed to help or inhibit intended behaviour. To make an analogy with software engineering, this characterises the gap between requirements and implementation and what we describe here can be seen as an automated mechanism to support the validation of normative frameworks, coupled with regression testing.

The contribution of the work is twofold. Firstly, we show how inductive logic programming (ILP) can be used to fill gaps in the rules of an existing normative framework. The designer normally develops a system with a certain behaviour in mind. This intended behaviour can be captured in use cases which comprise two components: a description of a scenario and the expected outcome when executing the scenario. Use cases are added to the program to validate the existence of an answer set. Failure to solve the program indicates that the specification does not yield the intended behaviour. In this case, the program and the failing use case(s) are given to an inductive learning tool, which will then return suggestions for improving the normative specification such that the use cases are satisfied. Secondly, we present a novel integrated methodology for theory revision that can be used to revise a logic program under the answer set semantics (ASP) and supports the development process by associating answer sets (that can be used for debugging purposes) to proposed revisions. Due to the non-monotonic nature of ASP, the designer can provide the essential parts of the use case creating a template rather that a fully specified description. The revision mechanism is general and can be applied to other domains. We demonstrate the methodology through a case study showing the iterative revision process.

The paper is organised as follows. Section 2 presents some background material on the normative framework, while Section LABEL:sec:learning introduces the ILP setting used in our proposed approach. Section LABEL:sec:learning_normative_rules illustrates the methodology and how the revision task can be formulated into an ILP problem. We illustrate the flexibility and expressiveness of our approach through specifications of a reciprocal file sharing normative system. Section LABEL:sec:details discusses the details of the revision mechanism and the learning system. Section LABEL:sec:related relates our approach to existing work. We conclude with a summary and remarks on future work.

2 Normative Frameworks

The essential idea of normative frameworks is a (consistent) collection of rules whose purpose is to describe a principle of right action binding upon the members of a group and serving to guide, control, or regulate proper and acceptable behaviour [Merriam-Webster dictionary]. These rules may be stated in terms of events, specifically the events that matter for the functioning of the normative framework.

, where where where initiates a fluent terminates a fluent with State Formula:
(1) (2) (3) (4) (5) . . (6) (11)