Programmer's Guide

This guide is intended for a low-level user (or programmer) who would like to study the mechanisms and techniques used in system Antares in more detail. It also provides all necessary information for a programmer to implement new extensions. In this book we assume that the reader is familiar with object-oriented programming under C++.

1 Introduction

2 Object Model

2.1 Object Hierarchy

2.2 Modules and Object Groups

2.3 Process architecture

3 Base Class

4 PVM Extension Layers

4.1 Communication Base Layer

4.2 Communication Coder/Decoder

5 Data Control Layers

5.1 Local Collector Layer

5.2 Global Collector Layer

5.3 Application Collector Layer

6 Computation Control Layers

6.2 Parent Warden Layer

6.1 Child Warden Layer

7 Generic GA Layers

7.1 Local and Global GA Layers

8 External Layers

8.1 Diffusion External Layer

9 Supportive Classes

9.1 Fitness Class

9.2 Parameter Class

9.3 Gene Coding Class

9.4 Gene and Population Class

9.5 GA Tools Classes

9.6 Kernel Info Class


Appendix A - Major Techniques

A.1 Serialization and Deserialization
A.2 Fitness Function
A.3 Scaling Method
A.4 GA Operators Specification
A.5 How Table Settings are Implemented in Parameter File
A.6 Termination Conditions
A.7 Process Priorities and States
A.8 Kernel Initialization Procedure

Appendix B - How To Extend

B.1 How to Serialize
B.2 How To Create a New Operator
B.3 How To Implement New Extension Layer
B.4 How To Implement New KI Class

Appendix C - Interfaces

C.1 Control Interface of Kernel
C.2 Kernel Data Interface
C.3 Result and Initialization Interface

Appendix D - Formats

D.1 Parameter File Format
D.2 Message Format
D.3 Complete List of KI Classes

Appendix E - Examples

E.1 Serialisation Example
E.2 Global Kernel Info Implementation Example
E.3 Local Kernel Info Implementation Example
E.4 Template for Interrupt Method
Programmer's Guide Project Antares