31197886
Object-Oriented Programming and Protected Objects in Ada 95
Integrating concurrent and object-oriented programming has been an active research topic since the late 1980s. The majority of approaches have taken a sequential object-oriented language and made it concurrent. A few approaches have taken a concurrent language and made it object-oriented. The most important of this latter class is the Ada 95 language which is an extension to the object-based concurrent programming language Ada 83. Arguably, Ada 95 does not fully integrate its models of concurrency and object-oriented programming. This paper discusses ways in which protected objects can be made more extensible.
62754021
Transparent replication for fault tolerance in distributed Ada 95
In this paper we present the foundations of RAPIDS ("Replicated Ada Partitions In Distributed Systems"), an implementation of the PCS supporting the transparent replication of partitions in distributed Ada 95 using semi-active replication. The inherently non-deterministic executions of multi-tasked partitions are modeled as piecewise deterministic histories. I discuss the validity and correctness of this model of computation and show how it can be used for efficient semi-active replication. The R APIDS prototype ensures that replicas of a partition all go through the same history and are hence consistent.
1084067
On exceptions as first-class objects in Ada 95
This short position paper argues that it might be beneficial to try to bring the exception model of Ada 95 more in-line with the object-oriented model of programming. In particular, it is felt that exceptions --- being such an important concept for the development of fault-tolerant software --- have deserved a promotion to first-class objects of the language. It is proposed to resolve the somewhat awkward dichotomy of exceptions and exception occurrences as it exists now in Ada 95 by treating exceptions as (tagged) types, and exception occurrences as their instances.
196094
Integrating object-oriented programming and protected objects in Ada 95
Integrating concurrent and object-oriented programming has been an active research topic since the late 1980's. There is a now a plethora of methods for achieving this integration. The majority of approaches have taken a sequential object-oriented language and made it concurrent. A few approaches have taken a concurrent language and made it object-oriented. The most important of this latter class is the Ada 95 language, which is an extension to the object-based concurrent programming language Ada 83. Arguably, Ada 95 does not fully integrate its models of concurrency and object-oriented programming. For example, neither tasks nor protected objects are extensible. This article discusses ways in which protected objects can be made more extensible.
1703030
Optimizing GoTools' Search Heuristics using Genetic Algorithms
GoTools is a program which solves life & death problems in the game of Go. This paper describes experiments using a Genetic Algorithm to optimize heuristic weights used by GoTools' tree-search. The complete set of heuristic weights is composed of different subgroups, each of which can be optimized with a suitable fitness function. As a useful side product, an MPI interface for FreePascal was implemented to allow the use of a parallelized fitness function running on a Beowulf cluster. The aim of this exercise is to optimize the current version of GoTools, and to make tools available in preparation of an extension of GoTools for solving open boundary life & death problems, which will introduce more heuristic parameters to be fine tuned.
27997406
Forward Pruning and Other Heuristic Search Techniques in Tsume Go
Abstract G o T ools is the name of a computer program to analyse life and death fights in the game of go. First, a motivation for programing go is given. General aspects of the heuristic search performed in G o T ools are discussed. The absolute strength and the effect of forward tree pruning are tested in a competition between G o T ools and dan level human players. It is found that with a speed up of a factor of 30 the program still finds for 70% of the problems of a test set the correct first move. A suggestion is made to compare intelligence between contestants (in solving fully enclosed life/death problems) by comparing their relative increase in the time to solve problems with the increase of the difficulty of the problems. The rules of go are explained in the shortest possible form in Appendix A .
23941957
Model Checking
Die Gewährleistung der korrekten
Funktionsweise von Hard- und Software ist ein entscheidender
Faktor bei der heutigen Systementwicklung. Dies trifft ganz
besonders auf das Gebiet der sog. „sicherheitskritischen“
Systeme zu, bei dem ein Systemversagen Menschenleben gefährden
kann.
7619422
The Symbolic Integration of Exact PDEs
An algorithm is described which decides if a given polynomial differential expression ? of multivariate functions is exact, i.e. whether there exists a first integral P such thatDxP=? for any one x of a set of n variables and to provide the integral P. A generalization is given to allow integration in the case that the exactness is prevented by terms which contain only functions of less than n independent variables.
46113649
Analytical Decoupling, Decision of Compatibility and Partial Integration of Systems of Non-Linear Ordinary and Partial Differential Equations