Autor:
Carro, Manuel

Cargando...
Foto de perfil

E-mails conocidos

manuel.carro@upm.es
manuel.carro@imdea.org

Fecha de nacimiento

Proyectos de investigación

Unidades organizativas

Puesto de trabajo

Apellidos

Carro

Nombre de pila

Manuel

Nombre

Nombres alternativos

Afiliaciones conocidas

IMDEA Software Institute, Spain
Universidad Politécnica de Madrid, Spain
Página completa del ítem
Notificar un error en este autor

Resultados de la búsqueda

Mostrando 1 - 3 de 3
  • Artículo
    Modeling and Reasoning in Event Calculus Using Constraint Answer Set Programming
    Arias, Joaquín; Carro, Manuel. Actas de las XIX Jornadas de Programación y Lenguajes (PROLE 2019), 2019-09-02.
    Automated commonsense reasoning is essential for building human-like AI systems featuring, for example, explainable AI. Event Calculus (EC) is a family of formalisms that model commonsense reasoning with a sound, logical basis. Previous attempts to mechanize reasoning using EC faced difficulties in the treatment of continuous change in dense domains (e.g., time and other physical quantities), constraints among variables, default negation, and the uniform application of different inference methods, among others. We propose the use of s(CASP), a query driven, top-down execution model for predicate Answer Set Programming with Constraints, to model and reason using EC. We show how EC scenarios can be modeled in s(CASP) and how its expressiveness makes it pos- sible to perform deductive and abductive reasoning tasks in domains featuring, for example, constraints involving dense time and fluents.
  • Artículo
    Towards Automatic Learning of Heuristics for Mechanical Transformations of Procedural Code
    Vigueras, Guillermo; Carro, Manuel; Tamarit, Salvador; Mariño, Julio. Actas de las XVI Jornadas de Programación y Lenguajes (PROLE 2016), 2016-09-02.
    The current trends in next-generation exascale systems go towards integrating a wide range of specialized (co-)processors into traditional supercomputers. Due to the efficiency of heterogeneous systems in terms of Watts and FLOPS per surface unit, opening the access of heterogeneous platforms to a range of users as wide as possible is an important problem to be tackled. However, the integration of heterogeneous, specialized devices increases programming complexity, restricting it to a few experts, and makes porting applications onto different computational infrastructures extremely costly. In order to bridge the gap between the programming needs of heterogeneous systems and the expertise of programmers, program transformation has been proposed elsewhere as a means to ease program generation and adaptation. This brings about several issues such as how to plan a transformation strategy which eventually generates code with increased performance. In this paper we propose a machine learning-based approach to learn heuristics for defining transformation strategies of a program transformation system. Our approach proposes a novel combination of reinforcement learning and classification methods to efficiently tackle the problems inherent to this type of systems. Preliminary results demonstrate the suitability of this approach.
  • Artículo
    Towards a Semantics-Aware Code Transformation Toolchain for Heterogeneous Systems
    Tamarit, Salvador; Mariño, Julio; Vigueras, Guillermo; Carro, Manuel. Actas de las XVI Jornadas de Programación y Lenguajes (PROLE 2016), 2016-09-02.
    Obtaining good performance when programming heterogeneous computing platforms poses significant challenges. We present a program transformation environment, implemented in Haskell, where architecture-agnostic scientific C code with semantic annotations is transformed into functionally equivalent code better suited for a given platform. The transformation steps are represented as rules which can be fired when certain syntactic and semantic conditions are fulfilled. These rules are not hard-wired into the rewriting engine: they are written in a C-like language and are automatically processed and incorporated by the rewriting engine. That makes it possible for end-users to add their own rules or to provide sets of rules which are adapted to certain specific domains or purposes.