19029975
Design and Implementation of an Automatic RTPA Code Generator
Real-time process algebra (RTPA) is a mathematics-based notation system for the specification and refinement of realtime and safety-critical systems. This paper presents the work on designing and developing a set of tools that facilitate automatic generation of C++ code from RTPA specifications of system architectures and behaviors. A two-phrase strategy has been employed in the design of the toolkit. In the first phrase, an RTPA specification is lexically and syntactically analyzed and type-checked, which results in a set of abstract syntax trees. In the second phrase, C++ code is generated using the RTPA-to-C++ mapping strategies and patterns when walking down the abstract syntax trees. The RTPA-to-C++ mapping strategies specify both the traditional sequential part of RTPA mapping onto the standard C++ library and the real-time features of RTPA, such as interrupt, concurrency, duration, and event/time-driven dispatch, mapping onto the RTPA run-time library, which provides real-time support and is implemented using real-time kernel techniques. The toolkit implemented includes an RTPA lexer, an RTPA parser, an RTPA type-checker, and an RTPA code-generator. The experimental results show that RTPA specifications can be rigorously checked and corresponding C++ code can be automatically generated from RTPA specifications using the toolkit. The automatically generated code is executable and effective under the support of the standard C++ library and the specially developed RTPA run-time library
7087864
Formal description of the cognitive process of decision making
Decision making is one of the basic cognitive processes of human behaviors by which a preferred option or a course of actions is chosen from among a set of alternatives based on certain criteria. Decision theories are widely applied in a number of disciplines encompassing cognitive science, computer science, management science, economics, sociology, psychology, political science, and statistics. The studies on decision making can be categorized into two classes: descriptive and normative theories. A number of decision strategies have been proposed from different angles and application domains such as the maximum expected utility and Bayesian method. However, there is still a lack of a fundamental and mathematical decision model and a rigorous cognitive process for decision making. This paper presents a decision making process on the basis of the layered reference model of the brain (LRMB). The cognitive process of decision making is modeled as a sequence of Cartesian-product based selections. A rigorous description of the decision process in real-time process algebra (RTPA) is presented. Different decision making strategies are comparatively analyzed. The result shows these strategies can be well fit in the formally described decision process. The cognitive process of decision making may be applied in a wide range of decision-based systems, such as cognitive informatics, software agent systems, expert systems, and decision support systems.
16244688
Formal Description of Time Management in Real-Time Operating Systems
This paper describes the formal specification of the time management subsystem of a real-time operating system. Real-time process algebra (RTPA) is adopted to formally specify the system. The architecture, static behaviors, and dynamic behaviors of a CPU time manager are systematically specified that form an abstract model of the system. The formal specifications are implemented in C, on which the system performance can be tested and verified
40360434
Measurement of the cognitive functional complexity of software
One of the central problems in software engineering is its inherited complexity. It is recognized that cognitive informatics plays an important role in understanding the fundamental characteristics of software. This paper models the cognitive weights of basic control structures of software, and develops a new concept of cognitive functional size for measuring software complexity. Comparative case studies between the cognitive functional size and physical sizes of 20 programs are conducted. It is found that for a given design, although the physical sizes of software may vary in a wide range, the cognitive functional sizes are much stable and independent from implementation technologies and programming languages. Therefore, the cognitive functional size provides a novel, stable and practical software complexity measurement and is helpful to explain the fundamental nature of software complexity in the phase of design, implementation, or maintenance in software engineering.
21455681
A layered reference model of the brain
Based on the advances of research in cognitive informatics and related fields, this paper attempts to develop a layered reference model of the brain that explains the functional mechanisms and cognitive processes of the natural intelligence. A variety of life functions and cognitive processes have been identified in cognitive informatics, cognitive science, neuropsychology, and neurophilosophy. In order to formally and rigorously describe a comprehensive and coherent set of mental processes and their relationships, an integrated reference model of the brain is established, which encompasses 37 cognitive processes at six layers known as the sensation, memory, perception, action, meta and higher cognitive layers from bottom up. The reference model of the brain may be applied to explain a wide range of physiological, psychological, and cognitive phenomena in cognitive informatics, particularly relationships between the inherited and the acquired life functions, as well as the subconscious and conscious cognitive processes.
21184887
The cognitive processes of abstraction and formal inferences
Theoretical research is predominately an inductive process; while applied research is mainly a deductive process. Both inference processes are based on the cognitive process and means of abstraction. This paper describes the cognitive processes of abstraction and formal inferences such as deduction, induction, abduction, and analogy. The hierarchy of abstraction and the descriptivity of abstract means at different levels are analyzed. A set of mathematical models of formal inference methodologies are developed. Formal descriptions of the five cognitive processes of abstraction and inferences are presented using real-time process algebra (RTPA). Applications of abstraction and formal inferences in dealing with complicated problems in large-scale software system development in software engineering are discussed.
5267319
Volumetric harmonic brain mapping
We developed two different techniques to study volume mapping problem in Computer Graphics. The first one is to find a harmonic map from a 3 manifold to a 3D solid sphere and the second is a sphere carving algorithm which calculates the simplicial decomposition of volume adapted to surfaces. In this paper, we apply these two techniques to brain mapping problem. We use a tetrahedral mesh to represent the brain volume. The experimental results on both synthetic and brain volume data are reported. We suggest that 3D harmonic mapping of brain volumes to a solid sphere can provide a canonical coordinate system for feature identification and segmentation, as well as anatomical normalization.
447865
Middleware support for embedded software with multiple QoS properties for ubiquitous computing environments
Ubiquitous application software usually has multiple QoS requirements, such as situation-awareness, real-time, and security, which make the application software development complicated. In this paper, an approach to supporting multiple QoS properties in application software using middleware is presented. Our reconfigurable context-sensitive middleware (RCSM), which provides situation-awareness support to the application software, is expanded to support more QoS by using aspect-oriented software development techniques. In the expanded RCSM, each QoS is processed through a set of aspect components. The application developers specify the QoS requirements in a specification file, which is in turn compiled to configure the corresponding aspect components. Being associated with certain application objects, the QoS aspect components enforce the QoS requirements according to the specification during run-time. In this paper, security, in addition to situation-awareness, is used as an example to illustrate our approach.
15352869
Error Resilient Video Coding using Redundant Pictures
Coding of redundant pictures is supported in the latest international video coding standard H.264 (also known as MPEG-4 part 10 or AVC). This paper proposes a standard-compliant way to encode and decode redundant pictures for improved error resilience. The method is based on a combination of picture-level reference picture selection, reference picture list ordering, and a hierarchical allocation of redundant pictures, which can efficiently prevent temporal error propagation without relying on feedback information. Simulation results show that the method outperforms the optimal loss-aware rate-distortion optimized intra refresh method. The proposed algorithm has been adopted into the H.264 joint model.
2560769
Invariance Properties of Random Sequences
We present invariance characterizations of different types of random sequences. We correct Schnorr’s original, incorrect characterization of Martin-Lof random sequences, compare it with Schnorr’s corresponding characterization of his own randomness concept, and give a similar, new chararacterization of Kurtz random sequences. That is, we show that an infinite sequence ξ is Kurtz random if and only if for every partial, computable, measure-invariant function Φ : Σ → Σ the sequence Φ(ξ) is not recursive.
9419834
A Two-Dimensional Kinetic Triangulation with Near-Quadratic Topological Changes
A triangulation of a set S of points in the plane is a subdivision of the convex hull of S into triangles whose vertices are points of S. Given a set S of n points in ${\Bbb R}^2,$ each moving independently, we wish to maintain a triangulation of S. The triangulation needs to be updated periodically as the points in S move, so the goal is to maintain a triangulation with a small number of topological events, each being the insertion or deletion of an edge. We propose a kinetic data structure (KDS) that processes $n^2 2^{O(\sqrt{\log n \cdot \log \log n})}$ topological events with high probability if the trajectories of input points are algebraic curves of fixed degree. Each topological event can be processed in $O(\log n)$ time. This is the first known KDS for maintaining a triangulation that processes a near-quadratic number of topological events, and almost matches the $\Omega(n^2)$ lower bound [1]. The number of topological events can be reduced to $nk\cdot 2^{O(\sqrt{\log k \cdot \log\log n})}$ if only k of the points are moving.