V. Gyurjyan (Jefferson Lab)
A general overview of the Jefferson Lab data acquisition run control system is presented. This run control system is designed to operate the configuration, control, and monitoring of all Jefferson Lab experiments. It controls data-taking activities by coordinating the operation of DAQ sub-systems, online software components and third-party software such as external slow control systems. The main, unique feature which sets this system apart from conventional systems is its incorporation of intelligent agent concepts. Intelligent agents are autonomous programs which interact with each other through certain protocols on a peer-to-peer level. In this case, the protocols and standards used come from the domain-independent Foundation for Intelligent Physical Agents (FIPA), and the implementation used is the Java Agent Development Framework (JADE). A lightweight, RDF (Resource Deffinition Framework) based language was developed to standardize the description of the run control system for configuration purposes. Fault tolerance and recovery issues are addressed. Key features of the system include: subsystem state management, configuration management, agent communication, multiple simultaneous run management and synchronization, and user interfaces. A user interface allowing web-wide monitoring was developed which incorporates a JAS/AIDA data server extensible through Java servlets.