174,214 research outputs found
Towards the Design of Heuristics by Means of Self-Assembly
The current investigations on hyper-heuristics design have sprung up in two
different flavours: heuristics that choose heuristics and heuristics that
generate heuristics. In the latter, the goal is to develop a problem-domain
independent strategy to automatically generate a good performing heuristic for
the problem at hand. This can be done, for example, by automatically selecting
and combining different low-level heuristics into a problem specific and
effective strategy. Hyper-heuristics raise the level of generality on automated
problem solving by attempting to select and/or generate tailored heuristics for
the problem at hand. Some approaches like genetic programming have been
proposed for this. In this paper, we explore an elegant nature-inspired
alternative based on self-assembly construction processes, in which structures
emerge out of local interactions between autonomous components. This idea
arises from previous works in which computational models of self-assembly were
subject to evolutionary design in order to perform the automatic construction
of user-defined structures. Then, the aim of this paper is to present a novel
methodology for the automated design of heuristics by means of self-assembly
On Agent-Based Software Engineering
Agent-based computing represents an exciting new synthesis both for Artificial Intelligence (AI) and, more generally, Computer Science. It has the potential to significantly improve the theory and the practice of modeling, designing, and implementing computer systems. Yet, to date, there has been little systematic analysis of what makes the agent-based approach such an appealing and powerful computational model. Moreover, even less effort has been devoted to discussing the inherent disadvantages that stem from adopting an agent-oriented view. Here both sets of issues are explored. The standpoint of this analysis is the role of agent-based software in solving complex, real-world problems. In particular, it will be argued that the development of robust and scalable software systems requires autonomous agents that can complete their objectives while situated in a dynamic and uncertain environment, that can engage in rich, high-level social interactions, and that can operate within flexible organisational structures
- ā¦