|
In current network
environment, using multi-agent technology promises improving efficiency
and simplification of software development. This technology is based
on idea of distributing the original task to several agents that solves
parts of the task.
We are working on:
- using agents in transformations of logic programs
- application of multi-agent technology to scheduling
Contact: Jan Hruza (transformations), Roman Barták (scheduling)
|
Advanced Planning
and Scheduling
|
Production planning
and scheduling is a challenging area of industrial applications because
of its inner complexity. The task is to prepare a production plan or
a schedule for specified duration according to factory and workforce
restrictions and custom orders.
We are working on:
- application of AI and CP techniques to planning and scheduling problems
- development of a generic scheduling engine
- studying the edge between planning and scheduling
Contact: Roman Barták
|
Transformations of
Logic Programs
|
Transformations of Logic Programs have been used for several different
purposes. Usually, they help to decrease the computational or descriptive complexity of the initial logic program.
Transformations are applicable in a wider domain of declarative programming. The techniques of transformations
that have been developed so far concern two levels of declarative programming, namely to the object level which
roughly coincides with the standard Logic or Prolog Programming and to the level of Higher-order Logic programming.
The object level methods are working with individual clauses of the transformed program while the higher-order
transformations are based on higher-order variables and predicates that can cope with larger portions of programs
by means of so-called program schemata. There are some similarities between higher-order transformations and Meta-programming.
We are trying to develop new methods
- supporting systematic and structured development of logic programs
in declarative environment. We are analyzing the applicability of such techniques to common data structures in
order to identify specific programming techniques,
- of transformations of logic programs both directly by means of the
transformation of the source code and by higher-order transformations.
Contact: Petr Stepanek, Jan Hruza
|
|
Meta-programming is a well-known technique widely used in logic
programming and artificial intelligence. This technique is based on idea of using program structures as data for
program.
We are working on
- design of general techniques for writing extendible (open) meta-interpreters
which can be easily customized for various purposes,
- developing techniques for extending features of traditional interpreters
(meta-variables, constructive negation).
Contact: Roman Barták
|
|
Constraint programming is an emergent software technology for
declarative description and effective solving of large, particularly combinatorial, problems especially in the
areas of planning and scheduling.
We are interested in
- solving over-constrained problems using constraint hierarchy concept,
- practical applications of constraint programming in traditional areas
of planning and scheduling,
- new areas of practical applications like decision support systems.
Contact: Roman Barták
|
Augmenting Logic Programming with Functional Principles
|
|