Efficient solution to the 3D problem of automatic wall paintings reassembly This paper, introduces a new approach for the automated reconstructionreassembly of fragmented objects having one surface near to plane, on the basis of the 3D representation of their constituent fragments. The whole process starts by 3D scanning of the available fragments. The obtained representations are properly processed so that they can be tested for possible matches. Next, four novel criteria are introduced, that lead to the determination of pairs of matching fragments. These criteria have been chosen so as the whole process imitates the instinctive reassembling method dedicated scholars apply. The first criterion exploits the volume of the gap between two properly placed fragments. The second one considers the fragments" overlapping in each possible matching position. Criteria 3, 4 employ principles from calculus of variations to obtain bounds for the area and the mean curvature of the contact surfaces and the length of contact curves, which must hold if the two fragments match. The method has been applied, with great success, both in the reconstruction of objects artificially broken by the authors and, most important, in the 2 virtual reassembling of parts of wall-paintings belonging to the Mycenaic civilization (c.1300 BC.), excavated highly fragmented in Tyrins, Greece. Many very important archaeological objects are unearthed fragmented, frequently in many hundreds or even thousands of pieces. The problem of reconstructing the initial object from its constituent parts is, as a rule, a very painstaking, tedious and time consuming process. For example, only in Greece, there are thousands of fragmented ancient objects waiting to be reconstructed. A very important class of these objects is the wall-paintings such as those excavated in Mycenae, Tyrins, Akrotiri, Thera, Crete, Pylos, etc. There are numerous wall-paintings of great archaeological value excavated in thousands of fragments that remain broken and non-preserved for tenths of years, exactly because their reconstruction faces serious difficulties. In this paper, a novel methodology and a related system have been presented, for the reconstruction of fragmented objects having one near to plane surface. Five criteria have been developed to test if and exactly where two fragments match. The four of them describe a variety of geometric restrictions necessary for matching; they reject possible matching positions and they are applied sequentially. If all of them are satisfied at a considered relative position of the two fragments, then a fifth sufficient criterion is applied that takes into consideration the volume of a properly chosen gap between the two fragments. All these criteria and the way they are applied try to imitate the process the professional conservators follow. It also accounts for the 36 (a) (b 1 ) (c 1 ) (d 1 ) It would be really helpful in achieving the wall-paintings reconstruction to take into consideration the contour, thematic and color continuation between adjacent fragments [13] , [12] . However, considering the form and wear of the illustrations appearing on the fragments, tackling this problem goes well outside the goals of the present work. The authors may deal with the problem in a future work.. The authors intend to apply the method and the system to a more large scale reconstruction, of prehistoric wall-paintings excavated at Tyrins and Mycenae.. Finally, the authors are now extending the methodology, so that it can be applied to more general cases than the wall-paintings, such as the reconstruction of fragmented sculptures.. (a) (b) Fig. 16 : The auxiliary shape and its use for the determination of fragments upper, neartoplane, surface. (a): The configuration of the auxiliary shape as defined in Appendix 1. For each rotation of n US we count the points that lie between Δ 1 and Δ 2 , and we calculate the mean signed distances of these points from Δ.(b): The auxiliary shape in the orientation that offers maximal number of points lying between Δ1 and Δ2 (points in red) and signed distances from Δ close to 0. There have been various approaches in the treatment of the problem of automated reassembling of fragmented objects. Thus, for example in [4] the reconstruction of 2D fragmented or torn objects is undertaken; the procedure compares the curvatureencoded fragment outlines, at progressively increasing scales of resolution, using an incremental dynamic programming sequence-matching algorithm. In [21] the authors tackle the problem of fragmented pot reconstruction by means of axially symmetric implicit polynomial surface models. The same problem is treated in [14] , where earthenware reconstruction is based on average color continuation in contour pixels of adjacent fragments. The pot-shape reconstruction approach of [19] uses functions of the curvature to spot matching of contiguous contour pixels of two fragments. Papers [2] , [15] , [16] , [17] , [18] , [24] treat the automatic reassembly of torn or shredded documents in a contour-based manner using 2D/3D representations of the documents.. Approaches to the problem of fragmented objects" 3D reconstruction usually incorporate elements from surface matching (e.g. the ICP algorithm introduced in [1] or point-by-point approaches like the "Generalized Hough Transform" [7] ) and schemes from pattern recognition in order to determine the proper sequence of optimal surface alignments that possibly solve the reconstruction problem. Namely, in [22] the authors initially reduce the dimensionality of the surface alignment problem by constraining the surface normals" alignment and then search for optimal pairwise matches by a special kind of random sample consensus (RANSAC) scheme. In [8] and [9] automatic 3D reconstruction is dealt via point by point distances (z-buffer) between given mutually visible facets of the object"s fragments. The optimal alignment between adjacent fracture facets is spotted via simulated annealing optimization. In [5] , the authors introduce a 3D reconstruction method based on fragments" surface features computed via centered multi-scale local integrals.. Potential fracture surfaces are spotted via a graph-cuts based segmentation algorithm.. Then a solution to fragments" reassembly is determined via feature-based global registration for pairwise matching of fragments, and simultaneous constrained local registration of multiple fragments. The approach introduced in [23] differs from the previous ones in the sense that the proposed method for fragmented objects" 3D reassembly is not a feature-based one, but relies on the action of an iterative process over a dense binary tree structure attached to the fracture facets" points. Namely, the authors employ a transformation between pairs of points on adjacent fracture surfaces in order to define binary relations between these surfaces. In order to determine the maximal set of neighboring points that satisfy the same binary relation the authors employ an hierarchical clustering algorithm which iteratively acts over the clusters binary tree in a "region-growing" manner thus decreasing its density. The problem of fragmented wall-paintings 3D reassembly is discussed on [3] . The authors present an inexpensive system for 3D fragment information acquisition and processing. The acquisition system requires minimal supervision, so that a single, non-expert user can scan at least 10 fragments per hour. The system is applied to Akrotiri, Thera wallpaintings. In [10] , the problem of fragmented wall-paintings reconstruction is treated, in the case where the only available information is the set of 2D fragments" images; the approach is effective but it suffers from the intrinsic restriction that there is no available three-dimensional information of the constituent parts.

O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


A generalized super-memory gradient projection method of strongly sub-feasible directions with strong convergence for nonlinear inequality constrained optimization In this work, combining the properties of the generalized super-memory gradient projection methods with the ideas of the strongly sub-feasible directions methods, we present a new algorithm with strong convergence for nonlinear inequality constrained optimization. At each iteration, the proposed algorithm can sufficiently use the information of the previous t steps' iterations to generate a new iterative point. Particularly, the intervals of parameters in the super-memory gradient projection direction are adjustable. The main properties of the new algorithm are described as follows: (i) the improving super-memory gradient projection direction is a combination of the generalized gradient projection and the t steps' super-memory gradients, which include both the previous t steps' search directions and gradients; moreover, only the gradients associated with a generalized active constrained set are dealt with rather than the gradients of all constraints; (ii) the initial point can be chosen arbitrarily, and at each iteration, the number of the functions satisfying the inequality constraints is nondecreasing. Especially, once a feasible iteration is obtained, then the subsequent iterations are also feasible; (iii) under suitable assumptions, it possesses global and strong convergence. Finally, some preliminary numerical results show that the proposed algorithm is promising. In this paper, we consider the nonlinear inequality constrained optimization problem as follows: (P) min f (x) s.t. g j (x) 0, j ∈ J = {1, 2, . . . , m}, where x ∈ R n and f (x), g j (x) ( j ∈ J ) : R n → R 1 are all smooth functions. We denote the feasible set for the problem (P) by X = {x ∈ R n | g j (x) 0, j ∈ J }.. A given point x is said to be feasible if it satisfies all constraints of the problem (P), i.e., x ∈ X .. The Gradient projection method (GPM for short), which was first developed by Rosen in 1960s [1, 2] , is one of the early important methods of feasible directions for solving the problem (P). Thereafter, many authors (see, e.g., [3] [4] [5] ) further researched and improved the GPM, especially in the case of nonlinear constraints. In the recent two decades, a new kind of projection type method collectively called generalized gradient projection methods (GGPM) have been proposed, see, e.g., [6] [7] [8] .. On the other hand, the super-memory gradient method, a generalization of the conjugate gradient method, is one of the most effective methods for solving unconstrained optimization problems, see, e.g., [9] [10] [11] [12] [13] [14] . The super-memory gradient method can sufficiently use the information of the previous t steps' iterations to generate the next iterative point. As proposed in Ref. [10] , the next iteration is obtained by Besides, in Ref. [12] , Shi constructed the search direction d k by. and θ k is an angle between ∇ f (x k ) and ∇ f (x k−1 ), a k and b k satisfy. .. To extend the super-memory gradient method for unconstrained optimization to constrained optimization, combining the GGPM, a kind of so-called generalized super-memory gradient projection method (GSM-GPM) was proposed, see, e.g., [15, 16] . The method in Ref. [15] iterates in the feasible region X , so it must begin with a feasible initial point. However, it is not usually easy to compute a feasible initial point. In order to overcome this shortcoming, Sun [16] further presented a GSM-GPM, which could start with an arbitrary initial point by using the generalized projection technique. The search direction d k in Ref. [16] was yielded by. , e = (1, 1, . . . , 1). where the parameters σ 1 > 1, σ 2 > 0 and the generalized projection matrix P(x k ) is computed by. In Ref. [16] , the step-length λ k is chosen as the first value of λ in the sequence {1,. . .} (ρ > 1) satisfying: (a) in the case of ψ(x k ) = 0, i.e., x k ∈ X ,. (b) in the case of ψ(x k ) > 0, i.e., x k ∈ X , ψ(x k + λd k ) ψ(x k ) + µλD d k ψ(x k ), where D d k ψ(x k ) denotes the direction derivative of ψ(x k ).. We can see, in case (b) above, that the line search cannot effectively control the increase of the objective function f . Moreover, the constraints which hold at the point x k may not hold at the next point x k+1 .. For the case of an infeasible initial point, Jian [17] presented and researched a new class of methods called strongly sub-feasible directions methods (SSFDM). Further researches on SSFDM can be found in [18] [19] [20] [21] . The main properties of SSFDM are shown below.. (i) the initial point can be chosen arbitrarily, and it can unify automatically the operations of initialization (Phase I) and optimization (Phase II). Even if x k is infeasible, the line search technique can also control the increase of the objective value; (ii) it can guarantee that the inequality constraints, which hold at the previous iteration, also hold at the subsequent iterative points, that is, if g j (x s ) 0, then g j (x k ) 0 for all k s. So the number of the functions satisfying the inequality constraints is nondecreasing.. In this paper, based on the ideas of GSM-GPM and SSFDM, we present a new GSM-GPM-SSFDM for nonlinear programming problem (P). The main features of the proposed algorithm are summarized as follows:. • it possesses all the properties of SSFDM;. • it can sufficiently use the information of the previous t steps' iterations, i.e., search directions. , to generate the search direction; • the intervals of the parameters in the super-memory gradient projection direction are symmetric and adjustable;. • besides the global convergence, strong convergence is obtained under some suitable assumptions. This paper is organized as follows: in the next section, our algorithm is proposed and the relative properties are discussed in detail. In Sections 3 and 4, we analyze the global convergence and the strong convergence of the algorithm, respectively. Some preliminary numerical tests are reported in Section 5.

O O O O O O O B I I O B I O O B I I O O O O O O O O O O O O O O O O O O B I I O O O O O O O B I O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O B I O O O O O O O O O O O O O


Quantifying adaptation parameters for information support of trauma teams Trauma centers are stressful, noisy and dynamic environments, with many people performing complex tasks, and with little in the way of information support. Information must be prioritized and filtered to avoid overload or loss. This work quantifies the informationselection parameters that will guide adaptive user interfaces for trauma teams. Modern society increasingly depends on the work of teams of skilled individuals that use complex communications and processes to achieve their goals. Our work focuses on advanced trauma care, an example of such a domain. During trauma resuscitation, potentially life-threatening injuries are rapidly identified and treated, and plans for hospitalization are developed ( Figure 1 ). While every patient and their injuries are unique, there are principles underlying the care of injured patients that are known to improve care and efficiency [1] .. Despite process standardization and highly trained personnel, human errors and inefficiencies are still observed during resuscitations [3] . Errors disrupt the flow of care, slow the speed and efficiency of the evaluation and may have cascading effects leading to poor patient outcome. To reduce the number of errors and improve efficiency in trauma teamwork, we need to understand not only how teams work and exchange information, but also how to automatically capture team communication, evaluation, and management processes in real time. Real-time error management will require the development of monitoring technology that can detect communication and process failures and provide critical information effectively.. Our long-term goal is to develop a "smart resuscitation room" that can automatically capture trauma team activities for offline and online analysis of teamwork. If we can deliver information as it is needed, we can reduce the number of repeated inquiries, the delays waiting for data and scan results, and the probability of an error caused by the lack of information. All of these improvements offer the possibility of reducing the cost of trauma care and increasing its quality.. To date, it is not known whether computer aids for trauma resuscitation should support certain individuals, the overall team, or both [2] . The team's activities and information needs hinge on a continuous flow of information about patient status from many sources inside and outside the hospital. The team must continually incorporate and adapt to information without losing focus on the patient. These conflicting demands mandate prioritization and filtering of information streams. The main challenge to the application of information technologies in this setting is developing a system to dynamically adapt the user interface based on "intelligent" selection from the universe of relevant information in this domain. To present information selectively based on changing information needs of collaborative teams, the following questions need to be answered:. a) "what" type of information to present (e.g., vital signs, medications given, medical history) b) "when" to present specific information during the evaluation process c) "who" is the current target of information presentation, i.e., specific team member(s), or role(s), or the entire team d) "where" to present information (modality of presentation and the spatial location of the device on which the information is presented), and e) "how" to present needed information (e.g., color vs. monochrome, text vs. graphics). Most previous research in human-computer interaction (HCI) and computer-supported collaborative work (CSCW) has focused on the "where" and "how" of information presentation, e.g., [7] [8] . While these are important aspects, this research does not deal with who needs to know, what, and when, which represent the first step in designing information presentation systems for time-critical settings such as trauma care. This paper describes our preliminary findings about teamwork information behavior for emergency trauma teams. The contribution of this work to HCI field is a technique for quantifying dynamically-changing information needs of teams in high-risk domains. We have introduced a novel task coding scheme and evaluated it on several resuscitation events. This representation allowed us to quantify task-role relationships and information needs in trauma teams. Based on our initial data analysis, we have determined preliminary answers to design issues related to "what" information is needed, "when" during patient evaluation it is needed, and for "whom" it should be displayed. We are continuing the recording and data analysis. Our main future effort is to continue deriving accurate statistical models and identifying the expert rules needed for selection of critical information. These studies will allow us to more effectively design interfaces for presenting the chosen information to answer "where" and "how."

O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


A Synthetic View of Belief Revision with Uncertain Inputs in the Framework of Possibility Theory This paper discusses belief revision under uncertain inputs in the framework of possibility theory. This framework is flexible enough to account for numerical and ordinal revision procedures. It is emphasized that revision under uncertain inputs can be understood in two different ways depending on whether the input is viewed as a constraint to be enforced, or as an unreliable piece of information. Two revision rules are proposed to implement these forms of revision. It is shown that M.A. Williams' transmutations, originally defined in the setting of Spohn's functions, can be captured in possibility theory, as well as Boutilier's natural revision. The use of conditioning greatly simplifies the description of these belief change operations. Lastly, preliminary results on implementing revision rules at the syntactic level are given.

O O O O B I O O O O O O O B I O O O B I O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


An approximation algorithm for scheduling trees of malleable tasks This work presents an approximation algorithm for scheduling the tasks of a parallel application. These tasks are considered as malleable tasks (MT in short), which means that they can be executed on several processors. This model receives recently a lot of attention, due mainly to their practical use for implementing actual parallel applications. Most of the works developed within this model deal with independent MT for which good approximation algorithms have been designed. This work is devoted to the case where MT are linked by precedence relations. We present a 1+epsilon approximation algorithm (for any fixed epsilon) for the specific structure of a tree. This preliminary result should open the way for further investigations concerning arbitrary precedence graphs of MT

O O O O B B O B I O O O O O O O B O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


Reference-driven performance anomaly identification Complex system software allows a variety of execution conditions on system configurations and workload properties. This paper explores a principled use of reference executions-those of similar execution conditions from the target-to help identify the symptoms and causes of performance anomalies. First, to identify anomaly symptoms, we construct change profiles that probabilistically characterize expected performance deviations between target and reference executions. By synthesizing several single-parameter change profiles, we can scalably identify anomalous reference-totarget changes in a complex system with multiple execution parameters. Second, to narrow the scope of anomaly root cause analysis, we filter anomaly-related low-level system metrics as those that manifest very differently between target and reference executions. Our anomaly identification approach requires little expert knowledge or detailed models on system internals and consequently it can be easily deployed. Using empirical case studies on the Linux I/O subsystem and a J2EE-based distributed online service, we demonstrate our approach's effectiveness in identifying performance anomalies over a wide range of execution conditions as well as multiple system software versions. In particular, we discovered five previously unknown performance anomaly causes in the Linux 2.6.23 kernel. Additionally, our preliminary results suggest that online anomaly detection and system reconfiguration may help evade performance anomalies in complex online systems. Large system software such as operating systems and distributed system middleware are complex in terms of their implementation, their supported configuration settings, and their wide ranging workloads. Under certain execution conditions, these systems may deliver below-expectation anomalous performance. Besides causing performance degradation, such performance anomalies also compromise the predictability of system behaviors [11, 15, 17, 18] , which is important for automatic system management.. Compared to program crashes and correctness violations, performance anomalies are more difficult to identify because normal performance behaviors are not always easily known or even clearly defined. Further, performance anomalies typically relate to high-level system semantics and they do not possess common source-level patterns such as accessing invalid pointers. Despite widespread anecdotal observations of performance problems, relatively few of them are clearly identified and understood. For instance, we examined CLOSED (i.e., resolved and corrected) bugs concerning Linux 2.4/2.6 IO/storage, file system, and memory management in the Linux bug tracking system [9] . Among 219 reported bugs, only 9 were primarily performance-related (about 4%). Here, we determine a bug to be primarily performance-related if it causes significant performance degradation but it does not cause any incorrect behaviors like system crashes or deadlocks. This paper explores principled, scalable techniques on using reference executions for performance anomaly analysis. A reference execution is very similar to the targeted anomalous execution in terms of system software, configuration settings, and workload properties (which, we collectively call execution conditions). Like a literary reference, it serves as a basis of comparison that helps understand the commonality and uniqueness of the target.. References can assist in identifying performance anomaly symptoms. We say that a target execution exhibits the symptoms of a performance anomaly if its performance is abnormally lower than that of a reference-i.e., compared to the expected performance deviation between them. Our approach utilizes change profiles that probabilistically characterize expected performance deviations between target and reference executions. In a complex system with multiple execution parameters, we first use sampling to derive singleparameter change profiles for a target and its reference that differ only slightly in execution condition. By synthesizing multiple single-parameter change profiles using a generally applicable bounding analysis, we can scalably identify anomalous referenceto-target changes over wide ranges of execution conditions.. Identified reference-target anomaly symptoms can serve as the basis of root cause analysis. In particular, references may help the analysis by filtering anomaly-related system metrics from the large set of collectible metrics in today's systems. Our approach builds on the intuition that system metrics that manifest very differently between the target anomalous execution and its normal reference are likely related to the performance anomaly. Further, our anomaly identification approach can assist the management of complex online systems. For instance, the online detection of anomaly symptoms coupled with adjustments of anomaly-inducing system configurations may help improve the performance (or evade performance anomalies).. Our reference-driven performance anomaly identification requires little knowledge or detailed models on internal system design and implementation. This allows easy deployment on complex systems supporting a variety of configuration settings and workload conditions. We are able to apply it on two large software systems: the Linux I/O subsystem and the JBoss J2EE distributed application server. Our empirical studies uncovered previously unknown anomaly symptoms and causes over wide ranges of system execution conditions (eight execution parameters for Linux and nine parameters for JBoss) as well as multiple system software versions. This paper makes several contributions to reference-driven performance anomaly identification. First, we present a scalable approach to produce probabilistic expectations on performance deviations due to execution condition changes. This approach allows us to identify anomalous performance degradations between reference and target executions in complex systems with wide ranges of execution conditions. Second, we propose a reference-driven approach to filter anomaly-related performance metrics from many varieties of collectible metrics in today's systems. Such filtering can help narrow the scope of anomaly root cause analysis.. We apply our techniques to identify anomaly symptoms and causes in real system software including the Linux I/O subsystem and a J2EE-based distributed online service. In particular, we have discovered five previously unknown performance anomaly causes in the recent Linux 2.6.23 kernel, including one that has been acknowledged by the Linux kernel development team [10] . Corrections to these anomalies can significantly improve the system performance. But more importantly, they lead to predictable performance behavior patterns during system version evolution and execution condition changes. Such predictability [11, 15, 17, 18] is an essential foundation for automatic system management like resource provisioning and capacity planning.. Finally, our work has uncovered interesting characteristics of real performance anomalies. For instance, less than half of our discovered Linux performance anomaly causes are unqualified bugs. The rest are better described either as partially beneficial optimizations that may degrade performance in some workload conditions, or as intentional simplifications for which perfect implementations are difficult to realize. Also, we demonstrated the potential for reference-driven anomaly detection in a realistic distributed online system. In doing so, we discovered that subtle anomalies that do not exhibit poor absolute performance can represent significant opportunistic cost. System reconfiguration may be a promising technique to avoid such lost performance. Recent research has tackled performance anomaly detection and diagnosis for complex systems. Reynolds et al. [12] proposed an infrastructure, called Pip, to expose system performance problems by comparing system metric manifestation and programmerspecified expectation. Joukov et al. [6] uncovered operating system performance problems by analyzing the latency distribution of system execution. Without systematic understanding of expected performance, these anomaly identification approaches rely on programmer-specified expectations or they target specific system properties with known normal behaviors. By using references, our approach requires little knowledge on the target system design/implementation and it can identify anomalies over wide ranges of system execution conditions.. Besides our reference-driven approach, performance expectations can also be derived through absolute performance models (typically driven by design specifications) [15, 17, 18] . In particular, IRONModel [18] characterizes performance anomalies as observed deviations from such model expectations. However, it is difficult to construct comprehensive, design-driven performance models for complex systems with varying execution conditions (including system configuration parameters and workload properties). Expectations and corresponding anomalies can also be derived through machine learning techniques [11] . Most of the learning techniques, however, do not produce easily interpretable results. Consequently they cannot directly help discover anomaly causes and derived anomalies are often hard to validate.. The use of correct peer systems to aid problem diagnosis is not new. Wang et al. [21] discovered erroneous Windows registry con-figurations by matching with a set of known correct configurations. Triage [20] and delta debugging [22] proposed to isolate problem sources by comparing against successful program runs with slightly different inputs. These studies focus on diagnosing nonperformance problems for which anomaly symptoms (crashes or program failures) are obvious. However, the normal peer executions are not easily identifiable for performance anomaly analysis. Further, performance analysis must handle quantitative system metrics (e.g., the latency of the read system call or the number of outstanding I/O requests) that typically manifest as a set of varying sample measurements. This increases the challenge in understanding the difference between the anomalous target and its reference.. Our search of performance anomalies in a multi-parameter system condition space is reminiscent of the software testing problem of designing efficient test cases with good coverage over a complex system. Grindal et al.'s survey [4] summarized a number of combinatorial strategies to choose values for individual input parameters and combine them into complete test cases. In the context of software testing, it is assumed that the success or failure at a system condition can be easily determined after testing. However, identifying performance anomaly at a tested condition is fundamentally more challenging. This paper proposes to identify performance anomalies by checking unexpected performance degradations from reference to target conditions. This approach is based on a scalable technique to construct probabilistic characterizations of expected performance deviations over a large execution condition space.

O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


A fuzzy model for human fall detection in infrared video Abstract. Fall detection, especially for elderly people, is a challenging problem which demands new products and technologies. In this paper a fuzzy model for fall detection and inactivity monitoring in infrared video is presented. The classification features proposed include geometric and kinematic parameters associated with more or less sudden changes in the tracked human-related regions of interest. A complete segmentation and tracking algorithm for infrared video as well as a fuzzy fall detection and confirmation algorithm are introduced. The proposed system is capable of identifying true and false falls, enhanced with inactivity monitoring aimed at confirming the need for medical assistance and/or care. The fall indicators used as well as their fuzzy model is explained in detail. The fuzzy model has been tested for a wide number of static and dynamic falls, demonstrating exciting initial results. Nowadays, fall detection is still a challenging and emergent problem [1] , especially for monitoring elderly people [8, 13] . The problem has mainly been provoked and induced by population ageing, showing a tendency of permanent growth in accordance with recent demographical predictions [29] . As reported, about a third part of humans aged 65 and above suffer from a fall each year, increasing up to 42 percent for elderly over 70 years. Moreover, every year approximately around 50 percent of humans who live in long-term care institutions suffer a fall, and 40 percent of them experience recurrent falls. In addition to this, elderly people are highly vulnerable, as falls are known to be one of the leading causes of injuries and death. Another important consequence of recurrent falls is the post-fall syndrome that manifests through depression, loss of autonomy, immobilization, and may result in impairments in daily activities [29] .. One more reason of growing research in the field of fall detection is that governmental promotion through high public attention, and constant improvement of associated support technology in the area of elderly care, permits to carry out research and to implement new applications. This enables usage of professional up-to-date equipment and development of complex solutions based on advanced visual information analysis methods (e.g. [3, 17] ). Consequently, the number of applications in this area has constantly grown. Indeed, in [31] an overview of the current situation in the field of elderly fall detection and alarm generation is presented. Firstly, the authors classify fall detection under camera-based, wearing-device-based and ambient-device-based approaches. In another review on the principles and algorithms for fall detection [21] , the authors study analytical methods and machine learning techniques. Within the first group of methods, image processing and usage of sensors (horizontal 1064-1246/13/$27.50 © 2013 -IOS Press and the authors. All rights reserved inclination sensor, sensitive floor tiles, accelerometers, etc.) are included. In a second group, the authors place approaches based on machine learning for fall detection, covering all steps from observation to classification.. Within the camera-based group of methods, several approaches to fall detection have been proposed. For instance, head motion trajectory analysis is one of the indicators of a fall [23] . Many research works are dedicated to posture detection analysis with the intention not only to identify poses, but also to distinguish among true and false falls. In this way, in [28] the authors propose a 3D method from 2D pose reconstruction based on the introduction of bone, bone symmetry, and rigid body projection constraints. Another approach for fall detection, which is based on the k-nearest neighbor algorithm, is introduced in [15] . Moreover, 3D shapeencoded filters are described in [19] . These extract the boundary gradient information of the body image, which is then propagated by a branching particle system. In [25] , the application of a kernel particle filter for 3D body tracking is introduced. In [18] a system for human behavior analysis is reported, where a human is represented with three components: human star skeleton, angles of six sticks in the star skeleton, and object motion vectors. Here the human posture classifier, based on a multi-category support vector machine, is used for pose detection.. In general terms, human fall detection starts with people monitoring and tracking and finishes with secure decision making on whether a human has fallen or not. It is a known fact that segmentation and tracking results are very sensitive to environmental conditions. The results are dependent on the quality of the image, on sudden changes in illumination (mainly in color video) and temperature (in infrared video), among others. In addition, humans have different types of body composition, which can be heavy, sturdy, slim, stocky, and so on. In 2-D images, humans can be overshadowed by other objects and be part of groups composed of two, three or more humans. Thereby, direct analysis of a human body appears to be an ambiguous and difficult task. Indeed, on the one hand, the principal anatomical proportions of human bodies are similar. But, also, personal physical characteristics of each human make it impossible to create a uniform crisp decision block. Thus, since humans usually appear warmer than the background in many environmental conditions, several methods which use thermal infrared imagery have been proposed for human detection [5, 11] . The thermal infrared imagery is specially suitable for human detection in indoor environments. These are the most usual areas of work for human fall detection. Moreover, temperature changes affecting the detection do not usually appear in indoor, since there are few external factors which can affect them (e.g., air currents and/or day/night heat variations).. There have been several approaches to infrared human detection so far [12] . For instance, a pedestrian detection method in thermal infrared imagery using the wavelet transform is proposed in [14] . The approach uses a support vector machine (SVM) classifier to establish true pedestrian regions. The regions are detected using features obtained from a conversion to the frequency domain used as an input to the SVM. In [7] , a background subtraction is initially performed to identify local foreground objects. Then, gradient information from the objects and the background is combined to elaborate a contour map representing the confidence for each pixel to belong to a human's boundary. Finally, a path search is performed to complete broken segments. An approach based on histogram is introduced on [10] , realizing a vertical and a horizontal adjustment on the pedestrian candidate regions. Two different cases for summer and winter are established, using the gray level values to delimit pedestrians in the winter case and the intensity changes in the human boundaries to delimit pedestrians in summer sequences. More recently, the Otsu algorithm [22] is used to binarize the image separating the warmer regions (probably belonging to humans) from the colder ones, using opening and closing morphological operations to remove small broken parts obtained from the binarization [6] . Next, objects that are too small or have a wrong aspect ratio to be humans are filtered out and a histogram of oriented gradients (HOG) method is used to extract features used to train an Adaboost classifier.. In this paper, we explain how human fall detection and inactivity monitoring in infrared video is realized within a fuzzy model. Fuzziness has been largely studied in the past for pattern recognition [9, 27] . In relation to fall detection, a method with fuzzy one class support vector machine in a smart room has been presented [30] . The fuzzy membership function represents the likelihood for the data to belong to a target class [20] . This is also our approach. The paper is organized as follows. Section 2 introduces the proposed approach towards human monitoring and fall detection, mainly explaining the required segmentation and fall detection algorithms. Then, in Section 3, data and experimental results are presented. Section 4 introduces some aspects of the accuracy of the proposed fuzzy system and shows some comparison with other similar approaches. Finally, some final conclusions are provided in Section 5. Falls of elderly people is a big problem which needs rapid and effective solutions. In this paper we have presented a proposal that includes a human detection algorithm in infrared video and a fuzzy-based model for fall detection and inactivity monitoring. The data supplied by the human detection algorithms are used by the fuzzy model to detect if a true fall has occurred. The geometrical characteristics of the blob corresponding to the detected person, and velocity of the change of its region of interest serve as fall indicators. Additionally, the fuzzy model enables to avoid certain limitations in parameter evaluation, and to make smoother and more flexible decisions, on the other hand.. The proposed algorithms are incorporated into a fall detection system for the elderly, and then tested for a wide number of static and dynamic falls, including the identification of false falls. Experimental results, which have been carried out for static and dynamic falls, have demonstrated that the proposed algorithms are able to detect them and to distinguish true from false falls. The system is also designed to claim for medical assistance when the fall persists in time. During the experimentation a set of twenty one fall sequences was studied. The set includes fifteen simulated true falls and six false falls. (16) Notice that the estimators demonstrate that the recognition system obtains very good results. Indeed, the value of the sensitivity, which returns a percentage of correct classification, is equal to 93.3% in our case. The accuracy of the system is also high (90.4%), and a specificity of 83.3% is more than acceptable.. Next, a comparison of our results with other similar approaches is performed. The proposal described in [24] achieves results with sensitivity and specificity of 90.7% and 90.6%, respectively. Moreover, there are 95% confidence intervals within 86.8-93.7%, and 87.0-93.4%, respectively. Another fall detection system [23] offers values for sensitivity around 88% and specificity is 87.5%. Lastly, the fuzzy-based algorithm proposed in [4] recognizes fall events with an accuracy rate varying between 74% and 100%, and the average detection performance when combining fall and non-fall events falls within the interval [80. .3%], depending on the location of the sensor. Another paper [2] reports around 100% fall detection (from a set of 14 falls) with 6.0% of false negatives. Notice that our approach reaches low false positives (6.67%). This is lower that the values reported in some recent related works (for example, 16.67% in [8] , and 2/17 or 11.76% in [23] ).. Thus, the performance of our fall recognition system demonstrates a high performance and is competitive against similar previous approaches. The fact that the proposed fall detection system provides an adequate response solely based on the kinematic and geometrical analysis of a given ROI is also a great benefit. The limited number of fall parameters to evaluate further calculations reduces the need for great computation resources.

O O O O O B I O B I O B I O O O O O O O O O O O O O O O O O O O O O B I O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O B I O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O B I O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


Effective query expansion with the resistance distance based term similarity metric In this paper, we define a new query expansion method that relies on term similarity metric derived from the electric resistance network. This proposed metric lets us measure the mutual relevancy in between terms and between their groups. This paper shows how to define this metric automatically from the document collection, and then apply it in query expansion for document retrieval tasks. The experiments show this method can be used to find good expansion terms of search queries and improve document retrieval performance on two TREC genomic track datasets. A fundamental challenge of information retrieval (IR) is to find documents that are relevant to user queries. The search queries usually consists of only few terms, which barely describe the information that users request. A widely used approach to deal with this problem is to expand the original query with relevant terms [4, 5] . In this study, we tackle the query expansion problem by defining new term-similarity metric that is based on the electric resistant network. In particular, this metric is derived from the effective resistance distances in between pairs of vertices in an undirected weighted graph. In this graph, nodes represent terms and they are linked together based on their co-occurrences. The edge weights represent the strength of term co-occurrences and are interpreted as electric resistances. Based on the resistance distances between pairs of terms, we demonstrate how to derive the similarity between terms and groups of terms. In this paper, we will discuss how to build the metric from document collection and apply it in query expansion for document retrieval tasks. We then present some of the evaluation results on two TREC Genomic Track data. Finally we will conclude the paper and suggests some future work.. Copyright is held by the author/owner(s). SIGIR'10, July 19-23, 2010, Geneva, Switzerland. ACM 978-1-60558-896-4/10/07. We have presented a new term similarity metric that can be easily defined using the document collection and applied it successfully in query expansion for document retrieval tasks. To the best of our knowledge this is the first study that attempts to define the term similarity metric based on electric resistance networks. In our evaluation, we defined the similarity metrics on important concepts because the data is from genomic domain. We would extend our study to define the similarity on all terms and experiment it on general document retrieval tasks. Our objective is to define a metric in the term space that would reflect how likely the terms are to be associated (or cooccur) in the document. We define the metric with the help of a weighted graph representing direct associations among terms and their strength. More formally, our model consists of an undirected weighed graph G = (V, E, w) where nodes V represent terms in the document, edges E represent pairwise association relations in between them, and weights w on the edges measure the strength of associations in between the connected pairs of nodes. In general, the association in between any two terms is calculated by considering all association paths and cumulative weights connecting them. This defines a metric on the term space. We evaluate our method using TREC Genomic Track 2003 & 2004 datasets, which are consist of abstracts from Medline. Test queries in 03 data contains gene names, their associated products (e.g., proteins), and their symbols and synonyms. Test queries in 04 data are sentences and they cover more general topics and involve more genomic concepts. We define our metric over only important terms: gene/protein names for 03 data and 5000 terms with highest TF-IDF scores for 04 data. We use 30% of 03 data and 25% of 04 data to extract the association networks respectively.. We choose Lemur/Indri and its internal Pseudo Relevance Feedback (PRF) query expansion module as the baselines. We use the Mean Average Precision (MAP), to measure the retrieval performance of various methods. All query terms are connected by "#combine" and the weights of expanded terms are assigned according to distance measures as w(x) = e −r Q,x . x is a expanded term, Q is the set of original query terms, and r Q,x defines the resistance distance between them.. We report results of query expansion with two proposed metrics, rQ,x and its normalized version r n Q,x . We first combine our metrics with Lemur/Indir and compare them with two baselines (See Tables 2). We use 5 expanded terms in this experiment. Both proposed metrics perform much (about 20%) better than the original Indri. More importantly, our metrics are much (over 9%) better than the PRF expansion approach and the normalized metric is the best.

O B I O O O O O B I O O O O O O O O B I O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


A distributed activity scheduling algorithm for wireless sensor networks with partial coverage Abstract One of the most important design objectives in wireless sensor networks (WSN) is minimizing the energy consumption since these networks are expected to operate in harsh conditions where the recharging of batteries is impractical, if not impossible. The sleep scheduling mechanism allows sensors to sleep intermittently in order to reduce energy consumption and extend network lifetime. In applications where 100% coverage of the network field is not crucial, allowing the coverage to drop below full coverage while keeping above a predetermined threshold, i.e., partial coverage, can further increase the network lifetime. In this paper, we develop the distributed adaptive sleep scheduling algorithm (DASSA) for WSNs with partial coverage. DASSA does not require location information of sensors while maintaining connectivity and satisfying a user defined coverage target. In DASSA, nodes use the residual energy levels and feedback from the sink for scheduling the activity of their neighbors. This feedback mechanism reduces the randomness in scheduling that would otherwise occur due to the absence of location information. The performance of DASSA is compared with an integer linear programming (ILP) based centralized sleep scheduling algorithm (CSSA), which is devised to find the maximum number of rounds the network can survive assuming that the location information of all sensors is available. DASSA is also compared with the decentralized DGT algorithm. DASSA attains network lifetimes up to 92% of the centralized solution and it achieves significantly longer lifetimes compared with the DGT algorithm. Wireless sensor networks (WSN) consist of sensor devices deployed across a geographic area to sense the environment by measuring physical parameters such as temperature, motion, etc. [1] . The most important issue regarding the design of WSNs is the energy consumption since these networks are usually deployed in remote areas where the replacement of batteries is impossible.. The lifetime of a WSN can be significantly increased by allowing some of the nodes to sleep intermittently. Activity scheduling or sleep scheduling controls the number of sensors which are sensing, receiving and transmitting data, such that some user defined constraints are satisfied. While ensuring only a subset of nodes to be in the operating mode, the sleep scheduling mechanism must fulfill two requirements: connectivity and coverage. A WSN is connected if each active sensor in the network can reach the sink, possibly via multiple hops. Coverage is defined as the area that can be monitored by the active sensors that can reach the sink.. A detailed survey of the sleep scheduling algorithms has been recently conducted in [2] . Sleep scheduling algorithms can be categorized into four groups. In the first group, active nodes only provide connectivity to the network without considering coverage. GAF [3] , SPAN [4] , ASCENT [5] , S-MAC [6] and PEAS [7] protocols are examples to this group. In the second group, the nodes are selected to be active so as to assure full coverage of the sensor field without considering connectivity. A linear programming approach is used in [8] to determine the minimum number of sensors which can fully cover a certain area. In [9, 10] nodes whose sensing areas are covered by their neighbors are turned off with a random backoff mechanism. [11] extends this work and reduces the redundancy among the active nodes.. Finding the minimum set of connected sensors which cover the entire deployment area is proven to be an NP-hard problem [12] . However, there are many heuristic algorithms for providing coverage and connectivity. Some algorithms select mutually exclusive sets of sensor nodes, where the members of each of those sets together completely cover the monitored field. These sets are used in a round robin fashion in order to increase the lifetime while maintaining the coverage [13, 14] . In CCP [15] and OGDC [16] , it is proven that if the radio range is at least twice the sensing range, complete coverage of a network field guarantees connectivity. CCP schedules nodes to sleep depending on the coverage degrees of the intersection points of a node's sensing disk with its neighbors' sensing disks. In OGDC, the optimum location of a third disk to cover the intersection points of two other disks, with minimum overlapping sensing areas, is found. Then, OGDC tries to schedule nodes which are close to these optimum locations to be active. Both CCP and OGDC require location knowledge of sensors.. In some applications, covering 100% of the sensor field continuously is not necessary. Instead, the network lifetime can be prolonged if the coverage level is kept below 100%. For example, in a temperature or humidity monitoring WSN, it may be sufficient to cover just 90% of the total sensor field in order to increase network lifetime. This is named as partial coverage. This concept is fairly new and is not extensively studied in the literature. The last group of existing work on activity scheduling exploits partial coverage. The theoretical bounds for the number of active nodes to satisfy a certain coverage level while being connected is derived in [17] . pCover [18] is a distributed algorithm for the partial coverage problem assuming all the nodes are aware of their locations and their neighbors' locations. Nodes are scheduled for sleep according to the coverage loss incurred by their deactivation in [19] , where the locations of the sensors are assumed to be known. An upper bound for the network lifetime when only a portion of the sensor field is to be covered, assuming that the deployed nodes form a homogenous Poisson point process, is found in [20] .. In [21] , a distributed scheduling mechanism is proposed which does not assume location information while providing statistical guarantees on the sensing coverage. However, this algorithm does not guarantee connectivity. The distributed scheduling algorithm in [22] , which we name data gathering tree (DGT) algorithm hereafter, also does not assume location information. DGT exploits partial coverage and involves similar design specifications used in this paper. The minimum number of sensors, k, to provide a certain coverage level is found by using geometric probability theory assuming that the nodes are distributed uniformly. Network operation is divided into reporting cycles such that the period for each sensor to report its data is equal to the duration of these reporting cycles. Each cycle is further divided into d slots, where. and N is the number of sensors. Each sensor randomly assigns itself a slot in {1, …,d} and reports its data only at that slot in each reporting cycle. This way, disjoint sets of sensors are found that provide the required coverage on the average. In order to ensure connectivity, it may become necessary to use non-disjoint sets. To find k, the distribution of the sensors on the field has to be known and the integrations over these distributions have to be tractable. A drawback of this algorithm is that the scheduling messages are large in size which increases the energy consumption.. Although most of the work in the literature consider network lifetime, connectivity and coverage, there are other studies on sleep scheduling that also consider the delay in data gathering for delay sensitive sensor networking applications. Pipelined tone wakeup (PTW) is proposed in [23] which achieves a balance between energy saving and end-to-end delay. PTW is based on an asynchronous wakeup scheduling mechanism that overlaps the wakeup procedures with the packet transmissions. During a transmission, the receiver node wakes up all its neighbors using the signaling channel, which makes it possible to forward the data to the next hop as soon as the current transmission is completed, reducing the end-to-end delay. To accomplish this, PTW uses a second wireless interface, a signaling radio, which is used to awaken a node when it is needed for data transmission. The assumption is that the power consumption of this secondary radio is extremely low, and thus it can remain active at all times without having a major impact on the lifetime of the device. Although there are low power radio technologies today, their power consumptions are not negligible and their transmission ranges are much shorter than the ranges of technologies used for the primary wireless interface.. In this work, we assume that there is a single radio interface at each sensor node, and a synchronous activity scheduling mechanism is used where nodes periodically wake up at the same time in order to determine their schedules for the next scheduling interval. It is also assumed that the sensor data is periodically generated by the sensor nodes and gathered at the sink node. The main objective of the proposed distributed adaptive sleep scheduling algorithm (DASSA) is to maximize the network lifetime subject to connectivity and partial coverage constraints, without requiring the location information of the sensor nodes. Other metrics, such as the latency in data gathering, are not explicitly considered by DASSA. However, the delay in DASSA can be adjusted by properly choosing the duration of the scheduling interval.. The main contributions of this paper are as follows. An integer linear programming (ILP) based centralized sleep scheduling algorithm (CSSA) which uses location information is formulated to provide an upper bound for the lifetime achieved by the distributed sleep scheduling algorithms. Next, a distributed scheduling algorithm, DASSA, which requires no location information and exploits partial coverage is proposed. The set of nodes selected to be active by DASSA are always connected due to the nature of the algorithm. Simulation results show that DASSA performs close to the performance of the centralized algorithm. Comparisons with DGT show that the network lifetime can be significantly extended by DASSA especially for relatively low partial coverage targets.. In the rest of the paper, we first describe the network model in Sect. 2. The centralized scheduling algorithm is explained in Sect. 3. We then present the design and analysis of DASSA in Sect. 4. Extensive simulation results are presented in Sect. 5 and the paper is concluded in Sect. 6. In this paper, the activity scheduling problem in wireless sensor networks with partial coverage is investigated. The optimum scheduling of nodes is found by using an ILP formulation which provides the maximum number of rounds for which the network can satisfy a certain coverage level. This approach is centralized and requires location information and global knowledge of the network. Next, a distributed, simple and scalable sleep scheduling algorithm called DASSA is proposed. The main objective of DASSA is to find the minimum set of nodes which can satisfy the desired coverage without using any location information and only using local information. An analysis for selecting the parameters of DASSA is also provided. DASSA can attain network lifetimes up to 46, 63 and 92% of the lifetimes achieved by the centralized algorithm for coverage levels of 90, 80 and 70%, respectively. DASSA is also shown to significantly outperform DGT sleep scheduling algorithm in terms of the network lifetime subject to partial coverage constraints.. As the number of tiers in the network increases, the gain provided by DASSA decreases since the randomness in DASSA increases. In such sensor networking applications, DASSA can benefit from a clustered network structure. A multi-sink scenario where each sink employs DASSA could increase the performance of the algorithm. DASSA can also be used in an heterogeneous network, where a subset of nodes have higher capabilities than the other type of nodes. In such a network, high powered nodes can employ DASSA within their clusters. For future work, the performance of DASSA can be analyzed for a clustered network.

O O O O O O B I I O B I O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


Real-time application mapping for many-cores using a limited migrative model Abstract Many-core platforms are an emerging technology in the real-time embedded domain. These devices offer various options for power savings, cost reductions and contribute to the overall system flexibility, however, issues such as unpredictability, scalability and analysis pessimism are serious challenges to their integration into the aforementioned area. The focus of this work is on many-core platforms using a limited migrative model (L M M). L M M is an approach based on the fundamental concepts of the multi-kernel paradigm, which is a promising step towards scalable and predictable many-cores. In this work, we formulate the problem of real-time application mapping on a many-core platform using L M M, and propose a three-stage method to solve it. An extended version of the existing analysis is used to assure that derived mappings (i) guarantee the fulfilment of timing constraints posed on worst-case communication delays of individual applications, and (ii) provide an environment to perform load balancing for e.g. energy/thermal management, fault tolerance and/or performance reasons. NoC-based many-core platforms are the next frontier technology in the real-time embedded domain. Their design not only allows cost reductions and power savings, but also contributes to the overall system flexibility. In this work we focus on manycores using a limited migrative model (L M M). L M M extends the concepts of the multi-kernel paradigm, which is a novel OS design and a promising step towards scalable and predictable many-cores. The main contribution of this work is that we formulate the problem of application mapping on a many-core platform using L M M, and propose a three-stage process to solve it. The extended version of the existing analysis is utilised to assure that derived solutions (i) guarantee the fulfilment of timing constrains posed on worst-case communication delays of individual applications and (ii) provide an environment to perform load balancing for various beneficial reasons, e.g. energy/thermal management, performance enhancements or fault tolerance.. Regarding the future work, we plan to extend the approach to additionally consider memory operations of individual applications. Moreover, we plan to study the schedulability aspects of L M M and propose the schedulability analysis which will be considered during the application mapping process. Both these activities would help to derive a more complete analysis framework for L M M, which is a promising step towards the integration of many-core platforms into the real-time domain. Proof Proven directly. This is a constrained optimisation problem, with one constraint expressed by the equality (Eq. 19), and n constraints expressed by the inequalities (Inequality 20). If we (temporarily) exclude the inequalities from consideration, the extreme values of the function f (X ), subject to the equality constraint, can be found by the Lagrange Multipliers Method.. A new variable λ is called the Lagrange multiplier. According to the first derivative test, the necessary condition for the extreme point is that the partial derivative of the Lagrange function with respect to ∀x i ∈ X and λ is equal to 0 (see .. . . .. We analyse two cases: (1) λ = 0 and (2) λ = 0.. (1) λ = 0: This is possible only if at least two of the variables are also equal to 0, that is ∃x i ∈ X, ∃x j ∈ X |x i = x j = 0 ∧ i = j. There exists an infinite amount of these points and they are both critical and stationary, and therefore should be further examined by the second derivative test. (2) λ = 0: There exists only one point and that is x 1 = x 2 = · · · = x n = C n . This point is also critical and stationary. It also holds for this point that it can be examined by the second derivative test.. Additionally, due to the inequality constraints (x i ≥ 0, ∀x i ∈ X ), it is necessary to check the boundaries of the solution space as well. The boundaries are represented with the solutions where only one of the variables is 0, (i.e. ∃x i ∈ X ∧ ∃x j ∈ X | x i = x j = 0 ∧ i = j). Those are called boundary points and there exists no test to prove their properties, they have to be individually checked. In our case it is easy; it is obvious that those points represent the minima on the domain, since f (X ) = 0 for all of them. Now we proceed with the second derivative test for the cases (1) and (2). It is conducted in the form of the Bordered Hessian. The process consists of finding the first partial derivatives of g(X ) with respect to ∀x i ∈ X , then finding the second partial derivatives of f (X ) also with respect to ∀x i ∈ X and finally putting them into the matrix called the Bordered Hessian. The general form of the Bordered Hessian is represented by Fig. 18. (1) λ = 0: Fig. 19 presents the Bordered Hessian for the case where λ = 0. The variable z i j stands for the second partial derivative with respect to the variables x i and x j and is described by Eq. 25. z i j has a non-zero value only in cases where at most two variables are equal to zero, otherwise it is also equal to zero. A sufficient condition for the local maximum is that the Bordered Hessian is negative definite, i.e. the determinants of its principal minors alternatively change their signs (Eq. 26). However, from Fig. 19 it is visible that there always exists some |H i | = 0, thus making this test inconclusive. In such cases, each of the points should be examined individually. Yet, in our case it is obvious that these points represent the minima on the domain, since f (X ) = 0 for all of them. (2) λ = 0: The Bordered Hessian for this case is represented by Fig. 20 . For z i j also holds Eq. 25, however, these are all non-zero values in this case. Note that since x i = C n , ∀x i ∈ X , all the second partial derivatives are also equal (Eq. 27).. , ∀i ∈ {1, . . . , n}, ∀ j ∈ {1, . . . , n} | i = j. When computed, the determinants of the principal minors are |H 1 | = 2z, |H 2 | = −3z 2 , |H 3 | = 4z 3 , . . . , |H n | = (−1) n nz n . Since both n and z are strictly positive, the sign of the determinant depends only on the first term of the product: (−1) i , and therefore alternatively changes when different principal minors are considered. This fulfils the sufficient condition for the maximum, so we conclude that the function f (X ) has one maximum on the domain, which is located in the point x 1 = x 2 = · · · = x n = C n and the value is max( f (X )) = C n n .. Theorem 2 Let X = {x 1 , x 2 , . . . , x n } ∈ N be the distances between the neighbouring dispatchers of an application, and let C be the circumference of the application shape. The product of the distances between the neighbouring dispatchers f (X ) = Proof Proven directly. Note that the distances between the dispatchers are natural numbers, which is a subset of real numbers. We analyse two cases:. (1) C n ∈ N: In this scenario the results of Theorem 1 hold, i.e. the maximum on the continuous domain of real numbers (superset) is also the maximum on the discontinuous domain of natural numbers (subset). Therefore, in these scenarios the function f (X ) reaches the maximum when all the distances are equal, i.e. ∀x i ∈ X : x i = C n .. (2) C n ∈ N: In this case the maxima are different. As proven in Theorem 1, f (X ) has a unique maximum on a continuous real-number domain, inferring that the function is monotonically increasing from the boundary to the extremum, with respect to each variable, when treating all other variables as constants. Therefore, the maximum on a discontinuous natural-number domain is the point geometrically the closest to the continuous maximum, which corresponds to a set of solutions (multiple maxima) on a discontinuous domain where the distances between dispatchers are either The efficiency of the mapping process significantly depends on the right selection of the parameters P and G. But more than that, it highly depends on the parameters of the application-set upon which it is being applied. As observed through the experiments, there are no individual values of P and G which derive the best solution for every application-set. We used the experiments to identify and explain the general trends associated to these parameters, but also to show that different mapping strategies can in some cases provide competitive results, and conversely, the same mapping strategy may vary substantially in terms of efficiency when applied to different cases.. For instance, for sets with tight communication constraints, setting low values to P and G will very fast produce a feasible mapping but without a significant quality.. Increasing P in such cases may result in a solution with the better quality, but at the expense of the additional time. If the computational complexity is not the problem, in such cases setting P = 1 is the preferable option. For sets where applications have similar communication constraints the best strategy is to invoke the balanced network consumption by keeping P low and G low or moderate, depending on the tightness of the constraints. Conversely, the sets with significant differences in communication constraints will benefit the most from a spatial partialisation approach invoked by moderate or high values of P and high values of G. This parameter selection will allow only a limited number of applications to claim wide mappings and utilise the routes on the boundaries of the grid, and at the same time preserve the central cores free for the applications with tight constraints. Finally, for sets with relaxed communication constraints setting P low or moderate and G high may result in a mapping with the good solution quality, but may also deem the application-set infeasible with that particular parameter selection. In such cases, decreasing the parameter G until the application-set becomes feasible is a preferable option.. The advantage of the proposed method is that by setting P and G low, a feasible solution can be derived very fast. This option may be useful in scenarios where limited computational capacities are available, and the system designer is not very knowledgeable about the nature of the workload. Alternatively, if additional computational capacities are available, the designer might choose to increase P, until reaching a desirable trade-off between the solution quality and the computational complexity. Moreover, if the designer knows workload characteristics (e.g. the number of applications, the number of dispatchers, the tightness of the constraints), he can take that knowledge into account and make an informed decision regarding the parameter G, which may additionally improve the solution quality. Application mapping for many-cores has been one of the most investigated topics over the last decade, thus resulting in a vast amount of works. In this section we give a brief overview of the state-of-the-art methods by mentioning only works that are relevant for our cause. An interested reader may consult a comprehensive survey of Sahu and Chattopadhyay (2013) , which covers scientific publications related to the entire application mapping topic.. The problem of application mapping is equivalent to the quadratic assignment problem, which is NP-Hard, hence searching for the optimal solution can be prohibitively expensive even for small NoC platforms, e.g. 4×4 cores . Therefore, the existing approaches are predominantly heuristics-based. Lei and Kumar (2003) assumed different processor types and developed a two-stage genetic algorithm, where the workload is firstly mapped to a specific processor type and in the second pass to a particular processor. Moein-darbari et al. (2009) use a modification of the aforementioned heuristics, called the chaos-genetic algorithm. By employing the branch-and-bound technique Hu and Marchulescu (2003) investigate mappings which minimise the power consumption within the network. The authors present a power model to calculate the energy spent by the NoC infrastructure, which is used as an objective function to evaluate derived mappings. The concept of minimising the energy consumption was further extended to include performance enhancements , network contentions and runtime mappings (Chou and Marculescu 2007) . Murali and De Micheli (2004) elaborate on bandwidth constraints and minimise the average communication delay, while Hung et al. (2004) study thermal-aware placements. Marcon et al. (2005) are the first to consider the ordering and dependencies among traffic messages, while Srinivasan and Chatha (2005) introduce per-message latency constraints. Ascia et al. (2004) present an approach where not one, but a group of mappings is considered (Pareto mappings), so as to derive a solution to the multi-objective approach. Kreutz et al. (2005) explore the same topic for interconnect topologies other than NoC, while exploit the routing flexibility in order to reduce the routing energy consumption and improve the performance.. Assuming wormhole-switched priority-preemptive NoCs, Burns (2008, 2009) propose two worst-case communication delay analyses. The former analysis was combined with genetic algorithms with the objective of mapping hard real-time applications (Mesidis and Indrusiak 2011; Racu and Indrusiak 2012) , while the latter approach was further combined with a priority assignment algorithm with the same aim (Shi and Burns 2010) . Note that the works mentioned in this paragraph are the most relevant to our approach, as they study the application-mapping problem from the real-time perspective, where the main emphasis is on deriving a mapping such that all temporal constraints posed on communication delays are always fulfilled, even under the worst-case conditions. Also note that these approaches assume that each application is statically assigned to a specific core at design-time, and does not have the possibility to migrate (see fully partitioned approaches in Sect. 2), while we consider L M M, which offers flexibility to perform run-time load balancing via migrations. In the previous work, Nikolić et al. (2014) introduced techniques to make the L M M traffic deterministic, and subsequently proposed the worst-case communication delay analysis. In this work, we modify the existing analysis, so as to reduce its computational complexity, and go one step beyond by proposing a three-stage heuristics-based method to map hard real-time applications on NoCs using L M M.

O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O