scholarly journals Omniscient Debugging for GOAL Agents in Eclipse (Demonstration)

Author(s):  
Vincent J. Koeman ◽  
Koen V. Hindriks ◽  
Catholijn M. Jonker

The main goal of our demonstration is to show how omniscient debugging can be applied in practice to cognitive agents. A concrete implementation of the mechanisms proposed in Koeman et. al [2017] has been created for the GOAL agent programming language in the Eclipse environment, integrated with the source-level debugger of Koeman et. al [2016], thus fully implementing the proposal within a state-of-the-art setting. The implementation will be used together with typical agent programs to demonstrate its practical use.

1997 ◽  
Vol 06 (01) ◽  
pp. 37-65 ◽  
Author(s):  
Michael Fisher ◽  
Michael Wooldridge

This article describes first steps towards the formal specification and verification of multi-agent systems, through the use of temporal belief logics. The article first describes Concurrent METATEM, a multi-agent programming language, and then develops a logic that may be used to reason about Concurrent METATEM systems. The utility of this logic for specifying and verifying Concurrent METATEM systems is demonstrated through a number of examples. The article concludes with a brief discussion on the wider implications of the work, and in particular on the use of similar logics for reasoning about multi-agent systems in general.


2017 ◽  
Vol 17 (3) ◽  
pp. 311-352 ◽  
Author(s):  
JAMES CHENEY ◽  
ALBERTO MOMIGLIANO

AbstractThe problem of mechanically formalizing and proving metatheoretic properties of programming language calculi, type systems, operational semantics, and related formal systems has received considerable attention recently. However, the dual problem of searching for errors in such formalizations has attracted comparatively little attention. In this article, we present αCheck, a bounded model checker for metatheoretic properties of formal systems specified using nominal logic. In contrast to the current state of the art for metatheory verification, our approach is fully automatic, does not require expertise in theorem proving on the part of the user, and produces counterexamples in the case that a flaw is detected. We present two implementations of this technique, one based onnegation-as-failureand one based onnegation elimination, along with experimental results showing that these techniques are fast enough to be used interactively to debug systems as they are developed.


2011 ◽  
Vol 38 (3) ◽  
pp. 1723-1737 ◽  
Author(s):  
Marco Crasso ◽  
Cristian Mateos ◽  
Alejandro Zunino ◽  
Marcelo Campo

2000 ◽  
Vol 15 (2) ◽  
pp. 5-12 ◽  
Author(s):  
Rena B. Lewis

Almost 30 years ago, I bought an IBM Selectric typewriter for about $500. I still use it occasionally and it works perfectly. Almost 20 years ago, I bought my first home microcomputer, an Apple II Plus, for about $5,000. The system included a monochrome Zenith monitor with an amber display, an Apple disk drive, and an Epson dot matrix printer, all state-of-the-art equipment. It also included a shift key modification so that both upper and lowercase letters would appear on the screen. The BASIC programming language was resident in ROM. I had to purchase software to run on the microcomputer, and my first purchase was the Apple Writer II word processor. This computer system is gone from my life; it's too old even to be stored with the “antiques” in the rafters of my garage.


2020 ◽  
Vol 107 ◽  
pp. 1105-1115 ◽  
Author(s):  
Stéphane Galland ◽  
Sebastian Rodriguez ◽  
Nicolas Gaud

2019 ◽  
Vol 52 (4) ◽  
pp. 882-897 ◽  
Author(s):  
A. Boulle ◽  
J. Kieffer

The Python programming language, combined with the numerical computing library NumPy and the scientific computing library SciPy, has become the de facto standard for scientific computing in a variety of fields. This popularity is mainly due to the ease with which a Python program can be written and executed (easy syntax, dynamical typing, no compilation etc.), coupled with the existence of a large number of specialized third-party libraries that aim to lift all the limitations of the raw Python language. NumPy introduces vector programming, improving execution speeds, whereas SciPy brings a wealth of highly optimized and reliable scientific functions. There are cases, however, where vector programming alone is not sufficient to reach optimal performance. This issue is addressed with dedicated compilers that aim to translate Python code into native and statically typed code with support for the multi-core architectures of modern processors. In the present article it is shown how these approaches can be efficiently used to tackle different problems, with increasing complexity, that are relevant to crystallography: the 2D Laue function, scattering from a strained 2D crystal, scattering from 3D nanocrystals and, finally, diffraction from films and multilayers. For each case, detailed implementations and explanations of the functioning of the algorithms are provided. Different Python compilers (namely NumExpr, Numba, Pythran and Cython) are used to improve performance and are benchmarked against state-of-the-art NumPy implementations. All examples are also provided as commented and didactic Python (Jupyter) notebooks that can be used as starting points for crystallographers curious to enter the Python ecosystem or wishing to accelerate their existing codes.


2021 ◽  
Vol 5 (OOPSLA) ◽  
pp. 1-31
Author(s):  
Masaomi Yamaguchi ◽  
Kazutaka Matsuda ◽  
Cristina David ◽  
Meng Wang

We propose a technique for synthesizing bidirectional programs from the corresponding unidirectional code plus a few input/output examples. The core ideas are: (1) constructing a sketch using the given unidirectional program as a specification, and (2) filling the sketch in a modular fashion by exploiting the properties of bidirectional programs. These ideas are enabled by our choice of programming language, HOBiT, which is specifically designed to maintain the unidirectional program structure in bidirectional programming, and keep the parts that control bidirectional behavior modular. To evaluate our approach, we implemented it in a tool called Synbit and used it to generate bidirectional programs for intricate microbenchmarks, as well as for a few larger, more realistic problems. We also compared Synbit to a state-of-the-art unidirectional synthesis tool on the task of synthesizing backward computations.


Author(s):  
N. Gobinath ◽  
J. Cecil ◽  
T. Son

This paper outlines the design of an Internet based collaborative framework to support the rapid assembly of micro devices. With the help of an agent programming language called 3APL, a distributed approach to achieving the life cycle of the various phases in the assembly of micro devices has been implemented. A discussion of the various agent resources created for a VE oriented approach is also provided in this paper.


Sign in / Sign up

Export Citation Format

Share Document