Coding standards and good practices are fundamental to a disciplined approach to software projects irrespective of programing languages being employed. Prolog programing can benefit from such an approach, perhaps more than programing in... more
Coding standards and good practices are fundamental to a disciplined approach to software projects irrespective of programing languages being employed. Prolog programing can benefit from such an approach, perhaps more than programing in other languages. Despite this, no widely accepted standards and practices seem to have emerged till now. The present paper is a first step toward filling this void: It provides immediate guidelines for code layout, naming conventions, documentation, proper use of Prolog features, program development, debugging, and testing. Presented with each guideline is its rationale and, where sensible options exist, illustrations of the relative pros and cons for each alternative. A coding standard should always be selected on a per-project basis, based on a host of issues pertinent to any given programing project; for this reason the paper goes beyond the mere provision of normative guidelines by discussing key factors and important criteria that should be take...
Abstract. Motivation plays a key role in the learning process. This paper describes an experience in the context of undergraduate teaching of Artificial Intelligence at the Computer Science Department of the Faculty of Sciences in the... more
Abstract. Motivation plays a key role in the learning process. This paper describes an experience in the context of undergraduate teaching of Artificial Intelligence at the Computer Science Department of the Faculty of Sciences in the University of Porto. A sophisticated competition framework, which involved Prolog programmed contenders and game servers, including an appealing GUI, was developed to motivate students on the deepening of the topics covered in class. We report on the impact that such a competitive setup caused on ...
Research on explanation is currently of intense interest as documented in the DARPA 2021 investments reported by the USA Department of Defense. An emerging theme for explanation techniques research is their application to the improvement... more
Research on explanation is currently of intense interest as documented in the DARPA 2021 investments reported by the USA Department of Defense. An emerging theme for explanation techniques research is their application to the improvement of human-system interfaces for autonomous anti-drone or C-UAV defense systems. In the present paper a novel proposal based on natural language processing technology concerning explanatory discourse using relations is briefly described. The proposal is based on the use of relations pertaining to the possible malicious actions of an intruding alien drone swarm and the defense decisions proposed by an autonomous anti-drone system. The aim of such an interface is to facilitate the supervision that a user must exercise on an autonomous defense system in order to minimize the risk of wrong mitigation actions and unnecessary spending of ammunition.
DESCRIPTION OF THE COURSE ACCORDING TO THE DIRECTORY Know the basic concepts, techniques and applications of artificial intelligence. Heuristic methods of problem solving; search algorithms in trees and graphs; representation of... more
DESCRIPTION OF THE COURSE ACCORDING TO THE DIRECTORY
Know the basic concepts, techniques and applications of artificial intelligence.
Heuristic methods of problem solving; search algorithms in trees and graphs; representation of knowledge; expert systems; processing of natural languages; pattern recognition; neural networks. History, results, challenges and limitations. Introduction to LISP or PROLOG language.
Prerequisite (s): INF11299 Programming II
INSERTING THE COURSE INTO THE PROGRAM
This course is an optional course for students of the bachelor's degree in mathematics-computer science. It has as a formal prerequisite the course INF11299 Programming II but also requires knowledge acquired in data structures and algorithms.
COURSE OBJECTIVES
- Acquire basic notions in the main fields of artificial intelligence and study the different concepts and techniques of this discipline; and
- Become familiar with a programming language characteristic of artificial intelligence. COURSE CONTENT
The course is mainly based on the following compulsory reference book and course notes provided by the teacher:
Bratko, Ivan Prolog programming for artificial intelligence, 3rd edition Addison-Wesley, 2000 ISBN: 0-201-40375-7
Después de más de treinta años, en esta página se expone mi primer intento de tesis de doctorado, un texto maldito que ha llegado a ser legendario por las buenas y las malas razones y cuya existencia misma se ha puesto alguna vez en tela... more
Después de más de treinta años, en esta página se expone mi primer intento de tesis de doctorado, un texto maldito que ha llegado a ser legendario por las buenas y las malas razones y cuya existencia misma se ha puesto alguna vez en tela de juicio. Contrariamente a los mitos urbanos que se han echado a rodar, la tesis nunca fue desaprobada. Nunca fue aprobada tampoco, ya que simplemente rechacé haciendo abandono del campo (y por las razones cuyo fundamento acompaño) un puñado de observaciones que dos de mis tres evaluadores echaron al aire sin que se labrase ningún acta protocolar. Observaciones que tanto tiempo después, ahora ya no tanto desde el llano, sigo encontrando más insustanciales cada día que pasa.
Después de una virtual cancelación a principios de los años 90, la Inteligencia Artificial se muestra hoy no tanto como la especialización de nicho que muchos creen que es, sino como componente irreductible de las tecnologías complejas de primera línea. Todos saben que la programación lógico del modo GOFAI (Good Old Fashioned Artificial Intelligence) no es el único jugador en la arena tecnológica. Yo bien lo sabía ya entonces. Pero sin duda es un aspecto importante de las tácticas de hoy en día y pinta con serlo cada vez más.
Lo que me resulta más significativo al cabo del tiempo es que el motor de inferencia de uno de los modelos más característicos que yo desarrollé (y que usé para motorizar una base de datos de identificación de estilos cerámicos de América Precolombina) fue utilizado por médicos del Hospital de Niños de la ciudad de Buenos Aires concentrados en torno de la red PCCP como sistema experto de diagnóstico clínico durante años sin que yo tuviera que cambiar una coma.
El segundo elemento de juicio más significativo concierne a que toda la trayectoria de uno de mis jurados contumaces elaboró su carrera tardía en materia de lógica no monotónica en base a observaciones y a terminología técnica que yo desarrollé con algún detenimiento en el curso de la tesis. Algún día elaboraré el detalle de estos acontecimientos porque hacen al modus operandi de los detractores antiguos y (pos)modernos en el campo de las ciencias cognitivas. Nadie se arriesga a que en materia de predicciones tecnológicas la ciencia acabe pasándonos por encima.
Procedural storytelling offers immense promise for games to offer more reactive narrative experiences that feel more deeply tailored to players' decisions. To date, interactive narrative systems have tended toward either a large emergent... more
Procedural storytelling offers immense promise for games to offer more reactive narrative experiences that feel more deeply tailored to players' decisions. To date, interactive narrative systems have tended toward either a large emergent possibility space with less focus on narrative structure, or toward greater structure with smaller possibility spaces. In this paper, we introduce Lume, a system for procedural narrative generation that combines the best of these two approaches through a novel combinatorial scene architecture in which storylet scenes are comprised of parameterized node-trees. We detail how the system works and discuss how it moves toward creating reactive interactive narratives that are both dynamic and coherent. CCS CONCEPTS • Human-centered computing → Interactive systems and tools; Interaction design theory, concepts and paradigms; Systems and tools for interaction design; Hypertext / hypermedia.
Trei sunt intrebarile pe care mi le-am pus inca de mic, de cand aveam trei-patru ani: - De ce vor oamenii PUTEREA? - Ce este SEXUL si de ce sunt atras de el? - Ce este DRAGOSTEA si de ce nu o vad manifestandu-se pretutindeni? Apoi,... more
Trei sunt intrebarile pe care mi le-am pus inca de mic, de cand aveam trei-patru ani: - De ce vor oamenii PUTEREA? - Ce este SEXUL si de ce sunt atras de el? - Ce este DRAGOSTEA si de ce nu o vad manifestandu-se pretutindeni?
Apoi, normal ca au aparut siurmatoarele trei intrebari: - Ce e de facut ca sa fie BUCURIE pretutindeni in jurul meu? - Ce e de facut pentru ca sa fie PACE in lume? - Cine e, si ce e, si unde e DUMNEZEU, daca toate astea nu se intampla?”
The workshop OCLApps 2006 was organized as a part of MoDELS/UML Conference in Genova, Italy. It continues the series of five OCL (Object Constraint Language) workshops held at previous UML/MoDELS conferences between 2000 - 2005. Similar... more
The workshop OCLApps 2006 was organized as a part of MoDELS/UML Conference in Genova, Italy. It continues the series of five OCL (Object Constraint Language) workshops held at previous UML/MoDELS conferences between 2000 - 2005. Similar to its predecessors, the workshop addressed both people from academia and industry. The advent of the MDA (Model Driven Architecture) vision and the rapid acceptance of MDE (Model Driven Engineering) approaches emphasize new application domains (like Semantic Web or Domain Specific Languages) and call for new OCL functionalities. In this context, the OCLApps 2006 Workshop, was conceived as a forum enabling researchers and industry experts to present and debate how the OCL could support these new requirements.
In this article we will present the travel manager Skytravel, is an intelligent agent that allows the user to facilitate the search for air travel easily and quickly according to their interests; this agent can give tips to the user,... more
In this article we will present the travel manager Skytravel, is an intelligent agent that allows the user to facilitate the search for air travel easily and quickly according to their interests; this agent can give tips to the user, through the knowledge of the most common activities that the client tends to do or repeat more; the agent also knows the user's tastes and considers the favorite. This is through the management of uncertainty. The technological tools that allowed us to carry out project implementation were SWIPROLOG, ECLIPSE
"The Dictionary of Computing gives the following (abridged) defi nitions for a compiler and decompiler (or reverse compiler): compiler A program that translates high-level language into absolute code . . . decompiler A program that... more
"The Dictionary of Computing gives the following (abridged) definitions for a compiler and decompiler (or reverse compiler):
compiler A program that translates high-level language into absolute code . . .
decompiler A program that attempts to . . . translate back from machine code to something resembling the source language. The task is difficult and not often attempted.
The following sections are intended to show how a decompiler may be constructed given only a knowledge of or access to the specification for a forward compiler, and some facility with Prolog or other high-level languages. It is easy to do and
should be attempted more often.
Decompilation is only useful, of course, if the object code is available and it is
required to reproduce the higher level `original' as an intermediate stage to aid understanding
or restructuring. The decompiled code can then be abstracted to a specification
by other techniques developed by the REDO project,"
Pretend play is often defined as an imaginative play that involves acting as if : for example, pretending to work would be analysed as “acting as if one was working”. The question on how human beings understand pretence becomes... more
Pretend play is often defined as an imaginative play that involves acting as if : for example, pretending to work would be analysed as “acting as if one was working”. The question on how human beings understand pretence becomes particularly interesting, as soon as one realises that 24 months old children are able to engage in basics forms of pretend play.
In the attempt to clarify what acting as if means, the present work deconstructs pretence in terms of simpler reasoning processes, i.e. the ones that children display when they start engaging in pretend plays. This deconstruction is guided by experimental results about imagination, hypothetical reasoning and pretence in early childhood. At the same time, the theoretical analysis of these imaginative phenomena is directed towards a logical formalisation of pretence. I suggest that the logic based on closed world reasoning – i.e. the treating of all the information not currently considered or represented as false – used in this work displays how imagination, subtractive reasoning and pretend play are related.
Since autism is often diagnosed on the basis of a lack of pretence behaviour, part of the work is devoted to the investigation of how children with autism engage in pretend play. The union of psychological, philosophical and logical analysis, presented in this work, models the behaviour of both neuro-typical and children with autism, and generates a novel hypothesis on children’s understanding of pretence.
Description Logics (DLs) are gaining a widespread adoption as the popularity of the Semantic Web increases. Traditionally, reasoning algorithms for DLs have been implemented in procedural languages such as Java or C++. In this paper, we... more
Description Logics (DLs) are gaining a widespread adoption as the popularity of the Semantic Web increases. Traditionally, reasoning algorithms for DLs have been implemented in procedural languages such as Java or C++. In this paper, we present the system TRILL for “Tableau Reasoner for descrIption Logics in proLog”. TRILL answers queries to SHOIN (D) knowledge bases using a tableau algorithm. Prolog nondeterminism is used for easily handling non-deterministic expansion rules that produce more than one tableau. Moreover, given a query, TRILL is able to return instantiated explanations for the query, i.e., instantiated minimal sets of axioms that allow the entailment of the query. The Thea2 library is exploited by TRILL for parsing ontologies and for the internal Prolog representation of DL axioms.
DESCRIPTION OF THE COURSE ACCORDING TO THE DIRECTORY Know the basic concepts, techniques and applications of artificial intelligence. Heuristic methods of problem solving; search algorithms in trees and graphs; representation of... more
DESCRIPTION OF THE COURSE ACCORDING TO THE DIRECTORY
Know the basic concepts, techniques and applications of artificial intelligence.
Heuristic methods of problem solving; search algorithms in trees and graphs; representation of knowledge; expert systems; processing of natural languages; pattern recognition; neural networks. History, results, challenges and limitations. Introduction to LISP or PROLOG language.
Prerequisite (s): INF11299 Programming II
INSERTING THE COURSE INTO THE PROGRAM
This course is an optional course for students of the bachelor's degree in mathematics-computer science. It has as a formal prerequisite the course INF11299 Programming II but also requires knowledge acquired in data structures and algorithms.
COURSE OBJECTIVES
- Acquire basic notions in the main fields of artificial intelligence and study the different concepts and techniques of this discipline; and
- Become familiar with a programming language characteristic of artificial intelligence. COURSE CONTENT
The course is mainly based on the following compulsory reference book and course notes provided by the teacher:
Bratko, Ivan Prolog programming for artificial intelligence, 3rd edition Addison-Wesley, 2000 ISBN: 0-201-40375-7
This paper presents excerpts of the natural text of the Citizenship Act of the Republic of Ghana, ACT 2000 (591), as a logic theorem in First Order Logic (FOL) language. The formalism of this piece of law is done to allow for semantic... more
This paper presents excerpts of the natural text of the Citizenship Act of the Republic of Ghana, ACT 2000 (591), as a logic theorem in First Order Logic (FOL) language. The formalism of this piece of law is done to allow for semantic analysis of the text by machines. The results of this research also deals with the problem of ambiguities in the legal text, andreveals the semantic consequence of the natural construction or textual structure of the piece of law;one major problem ofthe semantics of legal text has been the problem of ambiguities, which largely affects interpretations that are alluded to legal statements. Some constructed sentences sometimesdo not reflect the semantic intentions of the composers of the sentences, due to inherent ambiguities or technical faults in the structure of some parts of the statements.The formalism of the Actin this paper provides logical proofs and deductions which are asserted to establish clarity and to reveal semantic errors, or otherwise preserve the semantic intentions of the Act.
Open innovation is gaining increasing interest as a model to foster innovation through collaboration and knowledge sharing among organizations, especially in the context of Virtual Enterprises (VE). One of the main issues to overcome in... more
Open innovation is gaining increasing interest as a model to foster innovation through collaboration and knowledge sharing among organizations, especially in the context of Virtual Enterprises (VE). One of the main issues to overcome in such distributed settings is the integration of heterogeneous data, and the need to evaluate common Key Performance Indicators (KPI) capable to measure overall performances of the VE. In this paper we propose a conceptualization of KPIs into an ontology, to provide a common vocabulary to semantically annotate data belonging to different organizations. KPIs are described in terms of dimensions and a mathematical formula. In order to support reasoning services over KPIs formulas we refer to a logic-based formalization in Prolog, where formulas are translated as facts, and several predicates are included to support both mathematical functionalities for formula manipulation and higher-level functions especially suited for VE setup.
Prolog’s support for dynamic programming, meta programming and text processing using context free grammars make the language highly suitable for defining domain specific languages (DSL) as well as analysing, refactoring or generating... more
Prolog’s support for dynamic programming, meta programming and text processing using context free grammars make the language highly suitable for defining domain specific languages (DSL) as well as analysing, refactoring or generating expression states in other (programming) languages. Well known DSLs are the DCG (Definite Clause Grammar) notation and constraint languages such as CHR. These extensions use Prolog operator declarations and the {. . . } notation to realise a good syntax. When external languages, such as HTML, SQL or JavaScript enter the picture, operators no longer satisfy for embedding snippets of these languages into a Prolog source file. In addition, Prolog has poor support for quoting long text fragments.
Haskell introduced quasi quotations to resolve this problem. In this paper we ‘ported’ the Haskell mechanism for quasi quoting to Prolog. We show that this can be done cleanly and that quasi quoting can solve the above mentioned problems.
The paper deals with the problem of lexical ambiguity and metaphorical expressions with regard to Machine Translation (MT). The research is restricted to polysemous verbs, and more particularly, frequent verbs of motion that are used in... more
The paper deals with the problem of lexical ambiguity and metaphorical expressions with regard to Machine Translation (MT). The research is restricted to polysemous verbs, and more particularly, frequent verbs of motion that are used in both their prototypical and their non-prototypical meaning. We propose an experimental procedure for English-to-Greek translation of four frequent motion verbs, used both literally and metaphorically.