25 research outputs found
Hybrid ASP-based multi-objective scheduling of semiconductor manufacturing processes (Extended version)
Modern semiconductor manufacturing involves intricate production processes
consisting of hundreds of operations, which can take several months from lot
release to completion. The high-tech machines used in these processes are
diverse, operate on individual wafers, lots, or batches in multiple stages, and
necessitate product-specific setups and specialized maintenance procedures.
This situation is different from traditional job-shop scheduling scenarios,
which have less complex production processes and machines, and mainly focus on
solving highly combinatorial but abstract scheduling problems. In this work, we
address the scheduling of realistic semiconductor manufacturing processes by
modeling their specific requirements using hybrid Answer Set Programming with
difference logic, incorporating flexible machine processing, setup, batching
and maintenance operations. Unlike existing methods that schedule semiconductor
manufacturing processes locally with greedy heuristics or by independently
optimizing specific machine group allocations, we examine the potentials of
large-scale scheduling subject to multiple optimization objectives.Comment: 17 pages, 1 figure, 4 listings, 1 table; a short version of this
paper is presented at the 18th European Conference on Logics in Artificial
Intelligence (JELIA 2023
A Multi-Engine Approach to Answer Set Programming
Answer Set Programming (ASP) is a truly-declarative programming paradigm
proposed in the area of non-monotonic reasoning and logic programming, that has
been recently employed in many applications. The development of efficient ASP
systems is, thus, crucial. Having in mind the task of improving the solving
methods for ASP, there are two usual ways to reach this goal: extending
state-of-the-art techniques and ASP solvers, or designing a new ASP
solver from scratch. An alternative to these trends is to build on top of
state-of-the-art solvers, and to apply machine learning techniques for choosing
automatically the "best" available solver on a per-instance basis.
In this paper we pursue this latter direction. We first define a set of
cheap-to-compute syntactic features that characterize several aspects of ASP
programs. Then, we apply classification methods that, given the features of the
instances in a {\sl training} set and the solvers' performance on these
instances, inductively learn algorithm selection strategies to be applied to a
{\sl test} set. We report the results of a number of experiments considering
solvers and different training and test sets of instances taken from the ones
submitted to the "System Track" of the 3rd ASP Competition. Our analysis shows
that, by applying machine learning techniques to ASP solving, it is possible to
obtain very robust performance: our approach can solve more instances compared
with any solver that entered the 3rd ASP Competition. (To appear in Theory and
Practice of Logic Programming (TPLP).)Comment: 26 pages, 8 figure
Logic Programming Applications: What Are the Abstractions and Implementations?
This article presents an overview of applications of logic programming,
classifying them based on the abstractions and implementations of logic
languages that support the applications. The three key abstractions are join,
recursion, and constraint. Their essential implementations are for-loops, fixed
points, and backtracking, respectively. The corresponding kinds of applications
are database queries, inductive analysis, and combinatorial search,
respectively. We also discuss language extensions and programming paradigms,
summarize example application problems by application areas, and touch on
example systems that support variants of the abstractions with different
implementations