Analysis of Approximation Algorithms for k-Set Cover Using Factor-Revealing Linear Programs We present new combinatorial approximation algorithms for the k-set cover problem. Previous approaches are based on extending the greedy algorithm by efficiently handling small sets. The new algorithms further extend these approaches by utilizing the natural idea of computing large packings of elements into sets of large size. Our results improve the previously best approximation bounds for the kset cover problem for all values of k ≥ 6. The analysis technique used could be of independent interest; the upper bound on the approximation factor is obtained by bounding the objective value of a factor-revealing linear program. Set cover is a fundamental combinatorial optimization problem with many applications. Instances of the problem consist of a set of elements V and a collection S of subsets of V and the objective is to select a subset of S of minimum cardinality so that every element is covered, i.e., it is contained in at least one of the selected sets.. The natural greedy algorithm starts with an empty solution and augments it until all elements are covered by selecting a set that contains the maximum number of elements that are not contained in any of the previously selected sets. Denoting by n the number of elements, it is known by the seminal papers of Johnson [10] , Lovasz [13] , and Chvátal [1] that the greedy algorithm has approximation ratio H n . The tighter analysis of Slavík [14] improves the upper bound on the approximation ratio to ln n − ln ln n + O (1) . Asymptotically, these bounds are tight due to a famous inapproximability result of Feige [3] which states that, for any constant > 0, there is no (1 − ) ln n-approximation algorithm for set cover assuming that not all problems in NP have algorithms running in subexponential time n O(log log n) .. An interesting variant is k-set cover where every set of S has size at most k. Without loss of generality, we may assume that S is closed under subsets. In this case, the greedy algorithm can be equivalently expressed as follows:. Greedy phases: For i = k down to 1 do:. Choose a maximal collection of disjoint i-sets.. An i-set is a set that contains exactly i previously uncovered elements and a collection T of disjoint i-sets is called maximal if any other i-set intersects some of the sets in T .. A tight bound of H k on the approximation ratio of the greedy algorithm is well known in this case [10, 13] . Since the problem has many applications for particular values of k and due to its interest from a complexity-theoretic viewpoint, designing algorithms with improved second order terms in their approximation ratio has received much attention. Currently, there are algorithms with approximation ratio H k − c where c is a positive constant. Goldschmidt et al. [4] were the first to present a modified greedy algorithm with c = 1/6. This value was improved to 1/3 by Halldórsson [6] and to 1/2 by Duh and Fürer [2] . Recently, Levin [12] further improved the constant to 98/195 ≈ 0.5026 for k ≥ 4. On the negative side, Trevisan [15] has shown that, unless subexponential-time deterministic algorithms for NP exist, no polynomial-time algorithm has an approximation ratio of ln k − Ω(ln ln k).. The main idea that has been used in order to improve the performance of the greedy algorithm is to efficiently handle small sets. The algorithm of Goldschmidt et al. [4] uses a matching computation to accommodate as many elements as possible in sets of size 2 when no set of size at least 3 contains new elements. The algorithms of Halldórsson [5, 6] and Duh and Fürer [2] handle efficiently sets of size 3. The algorithm of [2] is based on a semi-local optimization technique. Levin's improvement [12] extends the algorithm of [2] by efficiently handling sets of size 4.. A natural but completely different idea is to replace the phases of the greedy algorithm associated with large sets with set-packing phases that also aim to maximize the number of new elements covered by large maximal sets. The approximation factor will not get worse (due to the maximality condition) but it has been left as an open problem in [12] whether this leads to any improvement in the approximation bound. This is the aim of the current paper: we show that by substituting the greedy phases in the algorithms of Duh and Fürer with packing phases, we obtain improved approximation bounds for every k ≥ 6 which approach H k − 0.5902 for large values of k.. In particular, we will use algorithms for the k-set packing problem which is defined as follows. An instance of k-set packing consists of a set of elements V and a collection S of subsets of V each containing exactly k elements. The objective is to select as many as possible disjoint sets from S. When k = 2, the problem is equivalent to maximum matching in graphs and, hence, it is solvable in polynomial time. For k ≥ 3, the problem is APX-hard [11] ; the best known inapproximability bound for large k states that it is not possible to approximate k set-packing within Ω( log k k ) unless P = NP [7] . Note that any maximal collection of disjoint subsets yields a 1/kapproximate solution. The best known algorithms have approximation ratio 2− k for any > 0 [8] and are based on local search; these are the algorithms used by the packing phases of our algorithms.. Our analysis is based on the concept of factor-revealing LPs which has been introduced in a different context in [9] for the analysis of approximation algorithms for facility location. We show that the approximation factor is upper-bounded by the maximum objective value of a factor-revealing linear program. Hence, no explicit reasoning about the structure of the solution computed by the algorithms is required. Instead, the performance guarantees of the several phases are used as black boxes in the definition of the constraints of the LP.. The rest of the paper is structured as follows. We present the algorithms of Duh and Fürer [2] as well as our modifications in Sect. 2. The analysis technique is discussed in Sect. 3 where we present the factor-revealing LP lemmas. Then, in Sects. 4 and 5, we present the proofs of our main results. We conclude in Sect. 6.

O O B I 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 B I 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 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 O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O 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


Bias-free hypothesis evaluation in multirelational domains In propositional domains, using a separate test set via random sampling or cross validation is generally considered to be an unbiased estimator of true error. In multirelational domains, previous work has already noted that linkage of objects may cause these procedures to be biased, and has proposed corrected sampling procedures. However, as we show in this paper, the existing procedures only address one particular case of bias introduced by linkage. We recall that in the propositional case cross validation measures offtraining set (OTS) error and not true error and illustrate the difference with a small experiment. In the multirelational case, we show that the distinction between training and test set needs to be carefully extended based on a graph of potentially linked objects, and on their assumed probabilities of reoccurrence. We demonstrate that the bias due to linkage to known objects varies with the chosen proportion of the training/test split and present an algorithm, generalized subgraph sampling, that is guaranteed to avoid bias in the test set for more generalized cases. In machine learning one typically assumes that the true classification of an object depends only on the object itself and given the object, is independent of the classification of other objects. In this case, setting aside a sufficiently large and randomly chosen part of the training data as a test set, the observed sample error on the test set is an unbiased estimator of true error. A number of error measures have been proposed for the propositional domain including off-training set error (OTS) [12] , which emphasizes error estimation on unobserved instances. However, in many application settings, those mainstream approaches to model evaluation might be inappropriate. As pointed out by [3] , among many others, whenever there is autocorrelation, i.e., whenever the target value of one object depends not only on the object itself, but also on other objects' classifications or information that is shared between objects, observed error on a randomly chosen test set may not be an unbiased estimator anymore. Subgraph sampling as proposed by [3] eliminates this effect but assumes that information shared in the training set does not reoccur with future instances of the domain. We introduce generalized subgraph sampling which prevents a bias due to an increased or reduced proportion of linked objects in the test set and which includes subgraph sampling as a special case.. The paper is organized as follows. Section 2 gives an overview of commonly used methods for error estimation on propositional data and shows by a simple experiment the different behavior of true error and OTS error. Section 3 addresses the bias introduced by linked objects in multirelational data. We show the importance of reflecting a realistic proportion of linked objects in the test set and consequently present an adapted sampling algorithm in Section 4. Section 5 discusses related work. The paper concludes with an example of hierarchical relationships in traffic data and poses further challenges for error estimation on multirelational data. In multirelational domains it is well known that linkage introduced by shared objects and autocorrelation causes a bias in test procedures. We demonstrated that the bias varies with the training/test split of a given sample and showed that the test set should reflect the known neighbor probability as encountered on future instances. We presented a sampling procedure, generalized subgraph sampling, which guarantees to partition a sample such that the test set re-flects a given known neighbor probability and thus avoids a bias in the error estimate.. While this work concentrated on problem identification of hypothesis evaluation in relational domains and proposed and a first sampling procedure, future studies will include an experimental or theoretical evaluation of the proposed technique. Other interesting research topics identified during our work concern the question whether it is possible to estimate the known neighbor probability from the data sample under certain conditions. Further, the exploration of corrected sampling procedures applicable to cross validation seem very valuable to us. This paper is motivated by work on traffic data. Traffic data provides information about the number of vehicles and pedestrians that pass along a street during a fixed time interval. The instance space hereby consists of street segments, which denote the part of a street between two intersections. Each segment can be characterized by numerous attributes, e.g. the street name and type, its spatial coordinates and nearby points of interest. As the traffic frequencies within one street are very similar, instances belonging to the same street are subject to autocorrelation. Likewise the expected number of vehicles traveling on a street in a capital city like Berlin is much higher than in some small village. Thus, a hierarchical structure of linkage is imposed on the domain, which is depicted in Figure 4 . In future research we will therefore investigate the behavior of linkage and autocorrelation in hierarchical and graph structured data and try to deduce corrected sampling procedures for those domains. Recent work has examined numerous techniques which can exploit the relationship between neighboring objects in relational data. Among those are Probabilistic Relational Models (PRMs) [2] , Relational Markov Networks [9] and Relational Density Networks [7] , which have developed from Bayesian Networks, Markov Networks and Dependency Networks respectively. Each model captures special types of dependencies inherent to the data.. If a model is able to represent dependencies between class labels of related objects, algorithms for collective inference can be applied [4] . More specifically, collective classification is the simultaneous decision on the class labels of all instances exploiting correlation between the labels of related instances [4, 9] . For example, a simple Relational Neighbor (RN) classifier, which estimates class probabilities solely based on labels of related objects, has been proposed by [5] . Yet, collective classification involves not only predictions based on known labels, but also includes strategies to exploit labels that can be inferred. Several approaches, including [5, 8] , conduct information propagation by iteratively labeling instances. Studies on classifiers applying collective inference have shown that those techniques significantly reduce classification error [5, 10] . Each of these models has a particular way of dealing with a possible bias introduced by linked objects. It is a topic of future work to investigate the precise relationship between those approaches and generalized subgraph sampling as advocated in this paper.

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 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 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 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 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 B 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 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 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 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 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 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 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 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 B O O O O O


A graph-based recommender system for digital library Research shows that recommendations comprise a valuable service for users of a digital library [11] . While most existing recommender systems rely either on a content-based approach or a collaborative approach to make recommendations, there is potential to improve recommendation quality by using a combination of both approaches (a hybrid approach). In this paper, we report how we tested the idea of using a graph-based recommender system that naturally combines the content-based and collaborative approaches. Due to the similarity between our problem and a concept retrieval task, a Hopfield net algorithm was used to exploit high-degree book-book, useruser and book-user associations. Sample hold-out testing and preliminary subject testing were conducted to evaluate the system, by which it was found that the system gained improvement with respect to both precision and recall by combining content-based and collaborative approaches. However, no significant improvement was observed by exploiting high-degree associations. The over abundance of document information in digital libraries has created much inconvenience to users seeking documents online. Users with diverse backgrounds and interests are all provided the same information in response to the same query terms. Individual histories of library usage are not used in suggesting books to users. To retrieve relevant documents upon a keyword search, existing digital libraries exclusively rely on document content information to make recommendation. Consequently, although digital libraries contain rich information of users' usage history, demographic and book content information, much of it is not used to provide value-added services to users. A similar situation appears in the commercial world, where the over abundance of product information provided by online stores prevents customers from searching products efficiently. Too much product information is provided and much of this information is not relevant to a specific customer. Some online stores employ various approaches and information sources to suggest relevant products to customers. Among them the best known example is Amazon.com, which makes personalized recommendations to its customers using combination of collaborative recommendation based on purchase history and customer ratings, manual recommendations and customer text comments [22] . As a new category of software [20] , recommender systems can be also applied to digital libraries. In this paper, we developed a graph-based model that combines content-based and collaborative recommendation approaches and implemented the system in the context of an online Chinese bookstore. In order to process Chinese text, Chinese phrase extraction with Mutual Information algorithm is one of the core components in the system. The online bookstore records the book content information, customers' demographic information and their purchase histories, which are similar to document content information, users' personal attributes and their usage history, respectively, in a digital library environment. In this paper we have described a two-layer graph model in the context of book recommendation that is generic to content-based, collaborative or hybrid recommendation approaches. Using our model a recommendation becomes a graph search activity, and different graph search approaches can be applied. In our preliminary experiment, we compared low-degree association and high-degree association graph search approaches. Hopfield net spreading activation was used for the high-degree association graph search. A holdout test and a pilot subject test were performed to evaluate the performance of different combinations of recommendation approaches.. Based on the hold-out test results, hybrid approaches worked consistently better than either pure content-based or pure collaborative approaches but no significant improvement was observed by exploiting high-degree association. Based on the results from pilot subject test, content-based approach outperformed collaborative and hybrid approach but no significant benefit of exploiting high-degree association was observed.. Extending the pilot subject test to a complete user study with real book selling experts will be part of our future work in this research. Other aspects of future works include finetuning the weighing schemes in the graph formation stage, and altering the parameter values in the Hopfield net algorithm. In addition, other graph search algorithms or recommendation methods can be applied to compare with our model.. In this study, we have tested the idea of using recommender systems for digital libraries in the context of online bookstore. We expect that our system can be applied in multilingual digital libraries to generate book recommendations based on book content and users' usage history. The evaluation of these applications will further test the usefulness of our model and system.

O O B I O O O B O O O O O O O O B 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 B B O O O O O O O O B 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 B O O O O O B B B O B I I 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 B I O O O O O B 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 B O O O O O O O O O B I O O O O O O O O B O O B I O O O O B 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 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 B O O O O O B I O O B O O O B I 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 B I I 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 B O O O O O O O O O O O O O O B O O O O O B O O O O O O B O O O O O O O B B O O O O O B O O B O O O O B O O O O O O O O O O O O B O O B B O O O O O O O O O O O B B O O O B O O O O B O O O O O O O O O O B O O O O O B O B 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 B O O O O O B O O O O O O O O B O O O O O O B O O O B 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 B O O O O O O O O O B I I O O O B O O O B O O O O O O O O O O O O O O O O O O O O B 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 B O O O B O O O O O B O O O O O O O


Extending Removed Sets Revision to partially preordered belief bases Most of belief revision operations have been proposed for totally preordrered information. However, in case of partial ignorance, pieces of information are partially preordered and few effective approaches of revision have been proposed. The paper presents a new framework for revising partially preordered information, called Partially Preordered Removed Sets Revision (PPRSR). The notion of removed set, initially defined in the context of the revision of non ordered or totally preordered information is extended to partial preorders. The removed sets are efficiently computed thanks to a suitable encoding of the revision problem into logic programming with answer set semantics. This framework captures the possibilistic revision of partially preordered information and allows for implementing it with ASP. Finally, it shows how PPRSR can be applied to a real application of the VENUS european project. Belief revision has been extensively studied in the domain of knowledge representation for artificial intelligence, mainly for totally preordered information. A characterization of belief revision has been provided by Alchourron, Gärdenfors, Makinson (AGM) with a set of postulates that any revision operation should satisfy [22] . Katsuno and Mendelzon (KM) reformulated AGM's postulates and provided a representation theorem that characterizes revision operations based on total preorders [30] . Belief revision has been discussed within different frameworks (probabillity theory, Sphon's conditional functions, Grove's system of spheres, . . .) and several revision operations have been proposed like the possibilistic revision [20, 21] or adjustment revision [46] , the linear-based revision [38] , the natural revision [12] , the lexicographic-based revision [1, 37, 34] , the revision with memory [2, 40] , and more recently several works on iterared revision [10, 28, 11, 19] . As pointed out by Delgrande et al. [18] , the different approaches proposed in the literature can be classified according to three different points of view. Given a plausibility ordering on interpretations describing the background knowledge and a new piece of information, belief revision as defeasible inference (BRDI) amounts to find the most plausible interpretation satisfying the input information, belief revision as incorporation of evidence (BRIE), amounts to change the plausibility ordering in presence of a new piece of information and belief revision of background knowledge (BRBK) means revising the background knowledge by a generic information.. In order to provide effective revision operations, strategies have to be chosen. When a new piece of information is inconsistent with the initial beliefs, the revision problem is related to the problem of consistency restoration. This problem has been addressed according to three main families of approaches: construction of preferred consistent (or maximal consistent) subsets of formulae [42, 1, 15] , forgetting some variables responsible of the inconsistency [36, 33, 9] , inconsistency minimization [41, 14, 25, 48] .. Some approaches have been implemented [47, 17] , among them, Removed Sets Revision which has been initially proposed in [48] for revising a set of propositional formulae. Contrary to consistency maximization, this approach stems from removing a minimal number of formulae, called removed set, to restore consistency. The Removed Sets Revision (RSR) and then a prioritized form of Removed Sets Revision, called Prioritized Removed Sets Revision (PRSR) [8] have been encoded into answer set programming and allowed for solving a practical revision problem coming from a real application in the framework of geographical information system. However in some applications, an agent has not always a total preorder between situations at his disposal, but is only able to define a partial preorder between situations, particularly in case of partial ignorance and incomplete information. In such cases, an epistemic state can be represented by either a partial preorder on interpretations or a partially preordered belief base.. The revision of partially preordered information has been less investigated in the literature, however Lagrue and coworkers [6] pointed out that the KM's postulates are not appropriate for partial preorders and proposed a suitable definition of faithful assignment, called P-faithful assignment, a new set of postulates and a representation theorem. Some revision operations initially defined for total preorders, such as revision with memory and possibilistic revision have been successfully extended to partial preorders [4] . This paper proposes a new framework for revising partially preordered information and provides an efficient implementation thanks to answer set programming. The main contributions of this paper are the following:. It extends the Removed Sets Revision to partially preordered information, called Partially Preordered Removed Sets Revision (PPRSR). The paper shows how the notion of removed set, roughly speaking, the subsets of formulae to remove to restore consistency, initially defined in the context of non ordered [48] or totally ordered [8] information is extended to the case of the revision of partially preordered information. It provides an implementation of PPRSR with ASP. The revision problem is translated into a logic program with answer set semantics and a one-to-one correspondence between removed sets and preferred answer sets is shown. The computation of answer sets is performed with any ASP solver. It shows that the possibilistic revision of partially preordered information can be captured within the PPRSR framework allowing for an efficient implementation with ASP.. The rest of this paper is organized as follows. Section 2 fixes the notations and gives a refresher on the Removed Sets Revision (RSR), on answer set programming and on partial preorders. Section 3 presents the Partially Preordered Removed Set Revision (PPRSR) and shows how it captures the possibilistic revision. Section 4 details the encoding of PPRSR into logic programming with answer set semantics and the computation of answer sets thanks to ASP solvers. It then shows the one-toone correspondence between removed sets and preferred answer sets. Section 5 illustrates how PPRSR can be applied in the context of the VENUS project before concluding. This paper presents a new framework for revising partially preordered information called Partially Preordered Removed Sets Revision (PPRSR) which extends the Removed Sets approach to partial preorders. The paper shows that PPRSR can be successfully encoded into answer set programming and proposes an implementation stemming from ASP solvers. It shows that the extension of the possibilistic revision to partial preorders can be captured within the PPRSR framework allowing for an efficient implementation with ASP. It illustrates how PPRSR can be applied within the context of the VE-NUS european project dealing with archaeological information. An experimental study has now to be conducted in the context of the VENUS project in order to provide a more accurate evaluation of the performance of PPRSR. We have to deeper investigate the use of ASP solver statements in order to directly define a partial preorder between answer sets. A future work will investigate the use of the lexicographic comparator for defining revision operations within the framework of PPRSR.. Appendix A. proofs Proposition 1. Let W be an epistemic state and " C W be a partial preorder on W associated to W. Then, " C W is a P-faithful assignment.. Proof. Let R be a set of formulae. The preorder on the interpretations is defined as follows: 8x; x 0 2 W, x". . We want to show that " C W is a P-faithful assignment. W is an epistemic state, represented by (R, " R ). So there exists x such that xBel(W) and F R (x) = ;. We have. Let W be an epistemic state and let " C W be the associated partial preorder on the interpretations. If W = U then 8x; x 0 2 W; x". Proof (Possibilistic equivalence). We can distinguish three cases:. 1. We want to show that:. If x 2 ModðlÞ and x 0 2 ModðlÞ then x". We have:. Since x 2 Mod(l) and x. According to the Definition 8 of Ew ; 8w; / 2 R : w" RE w l / iff w " R / Thus:. Moreover, since x 2 Mod(l) and. 2. We want to show that:. If x R ModðlÞ and x 0 R ModðlÞ then x¼. We have x R Mod(l) and x 0 R Mod(l) then x and x 0 falsify the formula l so l 2 F RE w l ðxÞ and l 2 F RE w l ðx 0 Þ. According to the definition of the partial preorder " RE w l , we have: 8/ 2 F RE w l ðxÞ; 9u 2 F RE w l ðx 0 Þ (in this case l) such that u" RE w l / and thus x" We . / w R which contradicts the fact that R is a removed set. Therefore x 2 minðModðlÞ; " . is a removed set. We show that: Let S be an answer set of P R[{l} . We have I S ¼ faja 2 Sg [ f:aja 0 2 Sg that is to say if a 2 S then a 2 I S and if a 0 2 S then :a 2 I S .. We first show that I S is an interpretation of V 14 -We show too that false R S and contradiction R S. Suppose that false 2 S, there are two cases:. * Let contradiction R S. the rule contradiction false,not contradiction is applied and contradiction 2 CNðP S R[flg Þ, yet S is an answer set of P R[{l} thus S ¼ CNðP S R[flg Þ thus contradiction 2 S which contradicts the initial hypothesis. * Let contradiction 2 S. The only rule allowing to deduce contradiction is contradiction false,not contradiction. In order to have contradiction true, it is necessary that false is true and contradiction is false thus contradiction R S which contradicts the hypothesis. 2. Then, we show that, if I S is an interpretation of V + which satisfies RnF O (R + \ S) [ {l} then S is an answer set of P R[{l} . From I S , we build a set S such that S ¼ faja 2 I S g [ fa 0 j:a 2 I S g that is to say if a 2 I S then a 2 S and if :a 2 I S then a 0 2 S. We then add rule atoms and intermediary atoms. We show that S ¼ CNðP -We first show that CN P. There are two cases: . Let R be a finite set of partially preordered formulae and l be a formula such that R [ {l} is inconsistent. X is a removed set of R [ {l} iff there exists a preferred answer set S of P R[{l} such that F O (R + \ S) = X.. To proof this proposition, we use the following intermediary results which are a consequence of the Proposition 5:. [ {l} is consistent then there exists a set of atoms S such that S is an answer set of P R[{l} and. Proof. Let R # R be such that (RnR) [ {l} be consistent. We show that there exists a set of atoms S such that S is an answer set of P R[{l} and F O (R + \ S) # R.. (RnR) [ {l} is consistent, then there exists an interpretation I R which satisfies (RnR) [ {l}. From this interpretation I R , we can build a set of atoms S such that S ¼ faja 2 I R g [ fa 0 j:a 2 I R g [ fqjI R F O ðqÞg and S is an answer set of P R[{l} . R contains all the formulae falsified by the interpretation I R . But R may also contain formulae satisfied by I R . There is no one-to-one correspondence between answer sets and potential removed sets. An answer set may corresponds to several potential removed sets. h Therefore, S 2 S w (P R[{l} ). h

O O O B O B I I I 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 B 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 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 B 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 B 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 B 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 B 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 B O O O O B O O O O B O O O O B O O O O B O O O O O B 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 B 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 B 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 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 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 B O O O O O O O O O B O O O O B 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 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 B O O O O O O O O B 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 B 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 B 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 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 B 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 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 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 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 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 O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


On the capacity of BICM with QAM constellations In this tutorial paper we analyze the capacity of bit-interleaved coded modulation (BICM) with quadrature amplitude modulation (QAM) constellations, and we pay special attention to different bit-to-symbol labeling strategies. The relation between the BICM capacity and the capacity of other CM schemes such as trellis coded modulation (TCM) and multilevel codes (MLC) is analyzed. Motivated by the fact that for BICM with some particular labelings, the same E b /N0 maps to more than one BICM capacity value, we study the relation between the capacity and E b /N0. In particular, we present some analytical results on this relation, and we also give an intuitive explanation for the somehow contradictory behavior of these curves. The problem of reliable transmission of binary information through a noisy channel dates back to Shannon's work in 1948 [1] . After he introduced the famous capacity formula for the AWGN channel, the problem of designing a system that operates close to that limit has been one of the most important and challenging problems in information/communication theory. Probably, one of the simplest ways of approaching capacity is by using binary signaling (e.g., BPSK) and a binary channel encoder of rate 0 ≤ Rc ≤ 1 that corrects errors caused by the channel. In this case, by changing the rate of the encoder, the bit rate can be modified at expense of a higher/lower error correction ca- * Research supported by the Swedish Research Council, Sweden (under research grant #2006-5599).. Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. pability. In such a system the maximum number of bits per channel symbol is bounded by one, and therefore, it is not spectrally efficient for good channel conditions. One straightforward answer to the question of how to efficiently transmit more than 1 bit per symbol is a coded modulation (CM) scheme, where the channel encoder is connected to a modulator where several bits are associated to one channel symbol. What is not straightforward is how to construct such a system, that operates close to the capacity limit, with a reasonably low complexity.. In 1974 Massey proposed the idea of jointly design the channel encoder and modulator [2] , which inspired Ungerboeck's trellis coded modulation (TCM) [3] , and Imai and Hirakawa's multilevel coding (MLC) [4] . Since both TCM and MLC aim to maximize a Euclidean distance measure, they perform very well over the AWGN channel. However, their performance in fading channels was rather poor.. In 1992 Zehavi introduced the so-called bit-interleaved coded modulation (BICM) [5] , which is simply a serial concatenation of a channel encoder, a bit-level interleaver, and a memoryless mapper. BICM aims to increase the code diversity-the key performance measure in fading channelsand therefore, outperforms previous CM schemes in this scenario. When compared to TCM, BICM decreases the minimum Euclidean distance, and consequently, it is suboptimal for the AWGN channel. Nevertheless, since this decrease is only marginal [6] , BICM is very robust to variations of the channel characteristics. BICM is very attractive from an implementation point view because of its flexibility, i.e., the channel encoder and the modulator can be selected independently, somehow breaking Massey's joint design paradigm. BICM is nowadays a de facto standard, and it is used in most of the existing wireless systems, e.g., HSDPA, IEEE 802.11a/g, IEEE 802.16, DVB-S2, etc.. In this paper we analyze the BICM capacity, its relation with the capacity of TCM and MLC, and we pay special attention to to different bit-to-symbol labeling strategies. We also analyze the BICM capacity vs. E b /N0, and we show that for some particular labelings, this relation is not a function, i.e., the same E b /N0 maps to more than one capacity value. Since at a first glance the intuition usually fails when trying to understand these figures, we give some analytical and intuitive explanations for their behavior.. The paper is organized as follows. In Sec. 2 we introduce the notation, some definitions, and the system model. In Sec. 3 we analyze the capacity of BICM and its relation with TCM and MLC, and in Sec. 4 we analyze the BICM capacity vs. E b /N0. In Sec. 5 the conclusions are drawn. In this paper we presented an overview of BICM and we analyzed its relationship with other CM schemes such as TCM and MLC. Curves of the BICM capacity vs. the E b /N0 were presented and analyzed for QAM schemes and some selected binary labelings. We have showed that when plotting the BICM capacity curves vs. E b /N0, counterintuitive results can be obtained, and therefore, we believe that it is more convenient to plot the capacity curves as a function of Es/N0.. It is worth mentioning that one of the most interesting open research problems in this field is to determine the optimum capacity maximizing labeling for BICM, for any constellation size, and any Es/N0.

O O O O B O O O O O O O O O O O O O B I B O B I I 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 B I B O O O B O O O O O O O O B 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 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 B I B O O O O O O O O B O O O O B 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 B I B 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 B B 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 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 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 B O O O O O O O B O B 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 B O O O O B O B 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 B O O O O O O O O O O O B O B 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 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 B O O O O O O O


Increasing processor performance by implementing deeper pipelines Abstract Determining the target frequency of the processor is one of the fundamental decisions facing a microprocessor architect. While historical debate of pushing frequency or IPC to improve performance continues, many argue that modern processors have pushed pipelines beyond their optimal depth. With the fundamental debate raging, most agree that the engineering complexity and effort increases substantially with deeper pipelines. Focusing on single stream performance, and using the Pentium® 4 processor as a baseline architecture, this paper will conclude that pipelines can be further lengthened beyond the Pentium® 4 processor's 20 stages to improve performance. We assert that architectural advances will enable even deeper pipelines, although engineering effort and other considerations may be the real limiter. We will propose a model to predict performance as a function of pipeline depth and cache size. First, we will determine the sensitivity of IPC to the depth of important pipelines. Then, we will describe how a cycle can be thought of as the sum of "useful time" and "overhead time", and that the frequency can be increased by reducing the amount of "useful time" per cycle. We will then show that deeper pipelines can increase the frequency to more than offset the decrease in IPC. We will then describe how execution time can be thought of as the sum of "core time" and "memory time" and show how "memory time" can be reduced with larger caches. Finally, we will show how the combination of deeper pipelines and larger caches can increase performance significantly.

O B B 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 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 B O O O O O B O O O B O B 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 B 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 B O O O O O O O O O O O O B O O B O


General Solutions to functional and kinematic Redundancy Abstract-A systematic and general approach to represent functional redundancy is presented. It is shown how this approach allows the freedom provided by functional redundancy to be integrated into the inverse geometric problem for real-time applications and how it can be utilised to improve performance. A set of new iterative solutions to the inverse geometric problem, well suited for kinematically redundant manipulators, is also presented. This paper addresses functional and kinematic redundancy. Both types of redundancy provide a freedom that should be utilised in order to improve the performance of the manipulator. Two separate optimisation problems are formulated; (a) if functional redundancy is present, choose the desired (optimal) end-effector configuration; and (b) if kinematic redundancy is present, find the joint positions from the end-effector position/orientation that optimises a given cost function.. In general, motion control is performed in operational space or joint space [1] . Operational space control has the advantage that the end-effector position and orientation are given in the Cartesian space. For operational space control, the transformation from operational to joint space is obtained by the inverse kinematic problem, which finds the joint velocities from the desired end-effector velocities. The operational space control has many advantages and is fast to compute. A drawback is that it is very dependent of the inverse Jacobian and that the transformation from operational to joint space is performed inside the feedback loop so that the time-step of the controller strongly depends of the complexity of this transformation [2] .. For joint space control, the transformation from operational space to joint space is obtained by the inverse geometric problem, i.e. to find the joint positions from the desired end-effector position/orientation. Then some joint space control scheme, independent of the task, can be designed. The disadvantage of this approach is that the inverse geometrics is a time-consuming problem to solve. The advantage is that the transformation from operational to joint space is moved outside the control loop. When kinematic redundancy is present, the inverse geometric approach also allows for optimising a general secondary criteria, and is not dependent of finding a suitable inverse of the Jacobian, such as the Moore-Penrose generalised inverse, as for the inverse kinematic problem.. Functional redundancy comes from a freedom in the specifications of the end-effector configuration and is hence task dependent. One example of functional redundancy is the pointing task where only the direction of the end-effector is specified. A systematic and general approach to represent functional redundancy is presented. The freedom due to the pointing task is represented by a continuous set of orientations, called a quaternion volume, and the optimal orientation is chosen among these. It is shown that if an orientation error is allowed, this can also be represented by a quaternion volume. It is also shown that performance is improved in both cases.. When path planning is to be integrated into the inverse geometric problem, this can be done by methods based on global or local path information. Most of the solutions presented in literature are local [1] , [2] , [3] . Optimal global solutions are far more complex and for the time being not suitable for real-time applications. One approach to solve the path-planning problem globally is to find a sub-optimal solution of a general minimisation problem. The problem is then to formulate some cost function, representing both global and local objectives. To illustrate the advantages of the general representation of the freedom provided by the functional redundancy, a sub-optimal approach based on complete path information which does not increase the computation time notably is presented. This approach can be integrated into any inverse geometric/kinematic algorithm and is suitable for real-time applications.. Closed-form solutions to the inverse geometric problem are only known for certain types of robotic manipulators, so numerical approaches are widely studied and in many cases, such as for most redundant manipulators, represent the only solution to the problem. Numerical solutions are in general more time-consuming than closed-form solutions and are hence more suitable for off-line path planning. In this paper, the inverse geometric problem is treated as a pure optimisation problem which allows the programmer to include a secondary objective [3] , [4] , [5] . When redundancy is present, the redundant degrees of freedom are used to optimise this objective.. The novelty of the method presented is that the minimum of the cost function with respect to each joint is found analytically and this is exploited to develop a set of computationally efficient algorithms. The solution is shown for a cost function representing the position and orientation error of the end effector but can be expanded to include a general class of cost functions representing both global and local objectives.. Five algorithms are presented. The first three use coordinate descent which looks at one joint at the time. It is well known that the convergence of coordinate descent is slower than steepest descent and Newton's method. The advantage is that the analytic solution presented is a lot faster to solve than search algorithms in general. The last two methods can be looked upon as approximations of steepest descent where the gradient is estimated. It is argued that the step size can be set as a constant. Hence, an analytic and computationally efficient alternative to the steepest descent is presented.

O O O O O O B O O O O O O O O B 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 B 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 B 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 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 B 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 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 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 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


A new approach for energy and delay trade-off intra-clustering routing in WSNs In this article, we present a routing protocol through intra-clustering. Most hierarchical protocols use direct intra-cluster routing, so that all the cluster member nodes forward their data to the cluster head node directly. Considered parameters are cluster lifetime and end to end delay between cluster member nodes and cluster head node. Also, rules related to queue theory have been used to determine end to end delay. At last, simulation results show the efficiency of the proposed protocol. There has been an exponentially growing interest in wireless sensor networks in recent years since they are very useful in any situation. Wireless sensor networks are first divided into different clusters [1] . Each cluster comprises a set of wireless sensor nodes. There are two types of nodes in each cluster: cluster member nodes and cluster head node. Member nodes collect data from the environment and send it to the cluster head node. Then, the head node sends the received data to the sink after fusion. There are two basic parts in this type of protocol: intra-cluster routing and inter-cluster routing [2] .. Intra-cluster routing is carried out using direct transmission in many applications because of its ease [3] . In these methods, member nodes send their data to the head node directly. Direct transmission can be efficiently used with clusters having a limited geographical zone, but if the geographical zone is bigger that a certain threshold its efficiency will be reduced [4] . This threshold can be calculated using the characteristics of the wireless sensor network. The present article uses linear equations to calculate appropriate threshold.. Calculating the threshold has major influence on direct transmission efficiency. If the cluster has a limited geographical zone smaller than the determined threshold, direct transmission can be used efficiently. Otherwise, it is not possible to determine the efficiency of direct transmission compared to other methods without considering new conditions. The present article first determines this threshold and then the efficiency of direct transmission method versus greedy indirect transmission method will be determined using a cost function. The important parameters of the proposed cost function include energy consumption and end to end delay between member nodes and head node.. By the characteristics of the direct transmission and greedy indirect transmission methods, it is expected that direct method consumes more energy, but it has a lower end to end delay. The main purpose of our cost function is to help us choose one of the two methods for data transfer based on the problem conditions.. Determining the parameters of the cost function is very important. The values of the parameters are determined based on the application of the wireless sensor network. When end to end delay has importance for the application, then the weight of the end to end delay will be increased in the cost function.. There are different methods for inter-cluster routing [5] . The objective of inter-cluster routing is to deliver head node data to the sink node. The same methods are used for intra-cluster routing (direct and indirect). Usually, head nodes collect the data and send it to the next hop based on the type of routing protocol. This level of routing only contains cluster head nodes and member nodes are not involved.. A great deal of research has been carried out on data delivery delay for sensor networks. Limited sources in sensor network nodes such as computing power, bandwidth, memory and energy supply make data forwarding as a challenge [6] . The capacity bounds on how much real time data a sensor network can transfer by the imposed deadlines is studied in [7] . In [8] , the authors presented several reasonable assumptions on mobile ad hoc networks and introduced a discrete-time Markov chain (DTMC) model called ad hoc-{di}model. In [9] , a Markov model of a sensor network whose nodes may enter a sleep mode was proposed and used to investigate system performance in terms of energy consumption, network capacity, and data delivery delay.. The routing protocols based on cluster such as LEACH [10] and TEEN [11] , have attracted attention in wireless sensor networks. All the hierarchical routing protocols consist of two parts: intra-cluster and inter-cluster routing. Most of them such as PEGASIS [12] do not consider intra-cluster routing. In other words, they use direct forwarding to send data in clusters. Many works such as [13] [14] [15] considers only intra-cluster routing.. This article contains the following sections. Section 2 discusses the proposed cost function. A comparative analysis of the two methods of direct and indirect transmission and simulation results will be presented in Section 3. Finally, Section 4 concludes the article. In this paper, a new intra-cluster routing scheme is proposed. Most of hierarchical routing protocols in wireless sensor networks use direct routing for intra-cluster routing. Obviously, direct routing is not efficient in all situations. We have defined a new cost function intra-cluster routing selection. The end to end delay and energy consumption are our decision making parameters. Every routing protocol can pass its environmental status and QoS requirements to the proposed cost function; on the other hand, cost function selects one of direct routing or multi-hop routing.

O O O O O O O O O O O O O O O O O O O O O O O O O O O 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 I O O O O O O O O O O O O B I O O O O O B I 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 B I 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 B I 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 B I I I O O O O O O O O O O B I 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 B I 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


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


Locally geometric semantic crossover: a study on the roles of semantics and homology in recombination operators Abstract This study presents an extensive account of Locally Geometric Semantic Crossover (LGX), a semantically-aware recombination operator for genetic programming (GP).LGX is designed to exploit the semantic properties of programs and subprograms, in particular the geometry of semantic space that results from distance-based fitness functions used predominantly in GP. When applied to a pair of parents, LGX picks in them at random a structurally common (homologous) locus, calculates the semantics of subprograms located at that locus, finds a procedure that is semantically medial with respect to these subprograms, and replaces them with that procedure. The library of procedures is prepared prior to the evolutionary run and indexed by a multidimensional structure (kd-tree) allowing for efficient search. The paper presents the rationale for LGX design and an extensive computational experiment concerning performance, computational cost, impact on program size, and capability of generalization.LGX is compared with six other operators, including conventional tree-swapping crossover, semantic-aware operators proposed in previous studies, and control methods designed to verify the importance of homology and geometry of the semantic space. The overall conclusion is that LGX, thanks to combination of the semantically medial operation with homology, improves the efficiency of evolutionary search, lowers the variance of performance, and tends to be more resistant to overfitting. Computer programs are symbolic structures that are designed to attain a desired operational effect, i.e., produce certain output given input data. That output is a combined effect of the instructions a program is composed of, or, more precisely, of their semantics. Semantics is the knowledge that provides 'grounding' for the symbols used at the syntax level (instruction opcodes). Formally, it can be expressed in a lower-level notation (operational semantics) or by defining the constraints that bind instruction's output to input (denotational semantics).. Though it is semantics that determines what a program actually does, most of genetic programming (GP) algorithms ignore that knowledge and manipulate programs only with syntax in mind. Focusing on syntax alone allows them to rely on simple, generic search operators. But this comes at a cost: very little, if anything, can be said about the anticipated impact of program modification on the output it produces as that is inherently semantic property. Even a minimal change on the syntactic level (genotype) can have profound and hard to predict impact on the overall semantic (phenotype) of program, and thus on its outcome and fitness. In other words, the genotype-phenotype mapping in GP is usually highly contextual (epistatic), with effects of particular instructions strongly influencing each other. This causes GP fitness landscapes to be complex [16] , which in turn limits scalability of search algorithms.. Rugged and epistatic fitness landscapes are obviously not unique to GP, and occur also in more traditional learning and optimization tasks. In such problems however, solutions (individuals) are represented as fixed-length vectors of variables, and epistasis boils down to interdependencies between them. Also, the role a variable plays in a solution is determined by its position in the vector, and is common for all solutions. This eases designing effective recombination operators. Even the simple one-point crossover is tailored to exploit the 'linkage' between variables by swapping groups of them between parent solutions. When such generic operators do not perform well enough, problem-specific ones can be designed based on domain knowledge that often indicates which variables are likely to be interdependent. Also, methods exist that autonomously detect and exploit interdependencies, like competent GAs [9] or estimation of distribution algorithms [36] .. In broader terms, recombination operators are intended to exploit modularity of problems [43] , where modules are some entities comprising solution components. Variables are specific form of such components. In GP however, there is no clear counterpart of the concept of variable, and it is typically assumed that program fragments (procedures, subprograms) play the role of modules and their components. Following this assumption, typical recombination operators swap code pieces between parent programs. In doing so however, they do not care about the semantics of transferred fragments, their presumed roles within the programs they are part of, whether such roles correspond to each other in any meaningful way, and the possible impact of such a change on program output.. The main motivation for this work is our conviction that such an approach is overly simplistic, and that search operators can be designed that exploit the semantic properties of programs and program fragments. We provide an extensive account of locally geometric semantic crossover (LGX), a recombination operator we introduced in [20] .. LGX has controlled impact on program semantics and aims at making the offspring programs semantically more similar to each other than the parent programs. To attains this, LGX inserts into parents a procedure (program) that is semantically medial with respect to the code fragments being replaced. This modification takes place at the same locus (position in program code) in both parents, and is intended to impose and exploit semantic correspondence of homologous program fragments. This design, motivated in Sect. 3, causes LGX to perform better than the standard GP tree-swapping crossover and other control operators, including semantic-aware operators proposed in other studies (Sect. 5).. The paper is organized as follows. Section 2 defines the notion of program semantics we adopt for this study. Section 3 briefly describes the motivations for LGX's design, the algorithm itself, and the library of procedures it relies on. Section 4 reviews the related work and the state of the art on semantics in GP. Section 5 reports the outcomes of an extensive experimental analysis. Sections 6 and 7 discuss the results and summarize the conclusions. The overall conclusion of this study is that crossover operators that use a library of semantically unique procedures as a source of genetic material improve the efficiency of evolutionary search when compared to other crossover operators (including some semantic-aware ones). Locally geometric semantic crossover (LGX), the operator that uses such a library and is both homologous and semantically medial is the best option among the library-equipped operators considered here, causing the evolved programs to generalize better. The extra computational overhead it involves can be canceled out by its semantically-aware character if the library is not too big. Finally, LGX is not very sensitive to initial conditions (low variance of fitness and test-set performance), which can help avoiding running it multiple times.. LGX and the related concepts have been demonstrated here for programs represented as trees, and verified on symbolic regression benchmarks. However, homologous and semantically medial crossover can be easily generalized. Homology can be meaningfully defined for many program representations (see Sect. 5.3 in [39] for review). Concerning semantic mediality, any domain for which (i) semantics is computable, (ii) semantic metric is available, and (iii) semantic 'blending' can be expressed, can be subjected to this approach. Concerning requirement (i), defining program semantics as a vector of outputs is now widely accepted in GP [44, 34] and technically convenient. Meeting the second requirement is often easy, as fitness function usually is a metric, or is based on such. Concerning (iii), although for some semantic spaces (e.g., Hamming space), Eq. (4) cannot be used to explicitly and uniquely determine the midpoint between semantics of parents' subprograms, semantic blending can be expressed in alternative ways, for instance based on triangle inequality or divergence from equidistance, which we studied in [18] .. Apart from moving to other problem domains, our future work on this topic will focus on verifying some of the hypotheses formulated in Sect. 6, particularly the supposed binding of semantic subproblems to different loci in program trees. Designing other search operators with the help of the concepts introduced here is yet another interesting research direction. Ongoing preliminary research suggests that an indexed library can serve as a useful source of genetic material for a semantically-aware mutation operator. Next, for the sake of LGX's simplicity, we decided here to populate its library in a very straightforward way. More sophisticated sampling procedures may be considered, e.g., such that provide a more uniform distribution of procedures in the semantic space. The most evident conclusion that can be drawn from the presented experimental evidence is that an important factor that determines the performance of considered operators is the library of procedures. In Fig. 4 , the library-equipped operators (LGX, RX, NHX) outrank many other methods, while never being outranked themselves. The likely reason for this is the elimination of semantic duplicates that takes place during library preparation (Sect. 3.3). As it is known from past research (see, e.g., [24] , ch. 7), the distribution of semantics of randomly generated trees is very uneven. Elimination of semantic duplicates flattens that distribution and causes all the available semantics of procedures of height up to h to be used equally frequently. Thus, LGX, RX, and NHX are more likely to paste a semantically 'rare' procedure than an operator that would generate an equally big procedure in a purely syntactic way (e.g., using the ramped half-and-half method). This in turn increases the likelihood for the offspring programs to reach previously unexplored semantics, and may help obtaining better fitness. Nevertheless, LGX outranks more methods than NHX and RX in Fig. 4 , and shows some inclination to beat them in Table 5 , which suggests that there are some other important factors that shape our results. To identify them, let us reflect on the overall effect of LGX on an evolving population. LGX inserts the same procedure into both of parent programs, making them syntactically and semantically identical at the selected locus and all the loci in the subtree rooted at that locus. Thus, over multiple generations, by acting on randomly selected common loci in various pairs of parent solutions, LGX drives the individuals in population to become more and more similar in the syntactic sense and, implicitly, also semantically. In practice however, this never leads to a population-wide convergence. Firstly, LGX chooses one of the k = 8 closest semantic neighbors from the library at random, so it can produce a different offspring even when applied twice to the same pair of parents. Secondly, a single act of crossover affects only a pair of individuals, so it may take a long time for all individuals in population to converge at a particular locus.. The extent to which individuals in a population evolving under LGX become syntactically similar is however of secondary importance. What matters is that this similarity has certain 'semantic grounding', resulting from the fact that every application of LGX inserts a procedure with semantics that is 'medial' with respect to semantics of the parents' subtrees (Eq. 4). As the experiments demonstrate, this grounding is essential. If it was not, LGX would not prove superior to RX on most benchmarks (Figs. 2, 3 ). Like LGX, RX is 'convergent' in the sense that it pastes the same procedure at a common locus in both parents. Compared to LGX, it does even more intense exploration as it draws a procedure from the entire library, while LGX chooses one of only k = 8 semantically most similar procedures. Yet RX clearly converges more slowly, and in most cases attains worse fitness at the end of run. Thus, making offspring semantically identical at a homologous locus is only a part of LGX's success. What matters as well is the semantic relationship between the pasted procedure and the subtrees replaced in parents.. LGX performs better because it makes the subprograms at the affected locus not only identical, but also semantically medial with respect to parents' subprograms (Eq. 4). This change propagates to the outputs of the offspring programs, with certain likelihood causing them to become semantically more similar to each other (see the discussion on monotonicity in Sect. 3.1). Proving this hypothesis is beyond the scope of this paper; however, in [18] , we demonstrated experimentally, for linear programs, that crossover operators that are semantically medial at the level of subprograms tend to produce offspring that are more medial than the offspring built using the standard code-swapping crossovers. That, in turn, causes them perform better. In this way LGX, while explicitly considering only semantic properties of subprograms (i.e., locally), has some features of semantically geometric crossover [30, 32] .. The above observations allow us to link these results to the issue of problem decomposition. The convergence of homologously located subprograms towards a common semantics can be viewed as if such subprograms aimed at solving a subproblem of the original problem (cf. Sect. 3.1). In other words, LGX enables evolution to bind a subproblem to a specific locus in the genotype, and work semiindependently on the parts of programs delegated to solving particular subproblems. In this sense, LGX facilitates discovery of subproblems within the problem, which in turn could allow explicit problem decomposition.. Finally, it is interesting to note that, on the genotypic level, labeling LGX a crossover operator is questionable, as it does not explicitly exchange genetic material between the parent solutions. However, it 'blends' the parents on the semantic, phenotypic level. In this sense, LGX can be regarded as a memetic search operator, but driven by the semantic properties of programs rather than directly by the fitness function. There are several contributions in the past GP literature that share some common elements with the proposed LGX operator. They can be grouped along two main features of LGX: the use of a library, and the semantically-aware manipulation of programs.. With respect to the former, LGX can be likened to, e.g., run transferable libraries (RTL, [41] ), which are repositories of program fragments collected in separate GP runs, intended to be applied to different problem instances. However, contrary to LGX, RTL requires a series of preliminary GP runs, because fragment's inclusion in the library depends on its long-term frequency of occurrence in an evolving population. Also, the collected modules are then re-used at random, i.e., RTL does not involve any directed (e.g., semantic-driven) operator to pick the procedures. In [15] , we demonstrated the usefulness of a similar approach on a task of visual learning. Rosca and Ballard [40] create an analogous library on-the-fly, during a single evolutionary run. To update the library at every generation, they use a sophisticated mechanism for assessing subroutine utility, and employ entropy to make decision when a subroutine should be created. However, as in RTL, the subroutines are used in an undirected way, without considering their semantic properties. Haynes [10] integrated a distributed search of genetic programmingbased systems with collective memory, however he utilizes a library only for detection of redundancy of GP search agents that operate in parallel. Galvan Lopez et al. [8] reused code using a special encapsulation terminal, causing code fragments to be stored implicitly as fragments of individuals in population (in contrast to LGX, where the library is fixed and explicit). Other approaches involving some form of library include reuse of assemblies of parts within the same individual [11] , identifying and re-using code fragments based on the frequency of occurrences in the population [12] , and explicit expert-driven task decomposition using layered learning [1, 13] .. Considering the semantic aspects, we review here the approaches that rely on the understanding of program semantics introduced in Sect. 2, even if some of them do not explicitly refer to the idea of semantics. McPhee et al. [28] were probably the first to study the impact of crossover on program semantics and so-called semantic building blocks. They defined, for Boolean problems, the semantic properties of components that form offspring in tree-swapping crossover, i.e., subtrees and contexts (partial trees with a hanging branch), and observed how they change with evolution time. Beadle and Johnson [3] used program semantics to increase diversity of programs, proposing a method that produces initial populations of semantically unique programs, and confronted it with standard population initialization techniques (which typically produce many semantically identical solutions). This idea was further explored by Jackson [14] . Subsequently, Beadle and Johnson applied a similar idea the mutation operator [2] and crossover [4] , forbidding creation of offspring that was semantically identical to parents. The proposed methods proved superior to standard GP in terms of the number of fully successful programs evolved.. The approaches cited above used semantics primarily to detect differences in program outcomes. Measuring semantic similarity was a natural further step in exploitation of semantic information. Semantically-aware crossover (SAC, [35] ) and semantic similarity-based crossover (SSC, [45] ) proposed by Nguyen et al. employ semantic similarity to make decision whether a pair of subtrees in parent solutions should be swapped. In the cited work, SAC and SSC have been reported to outperform the standard tree-swapping crossover. These operators serve as reference methods in the experimental part of this paper and will be detailed there.. Yet another step in development of semantically-aware methods involves explicit exploitation of selected properties of semantic space. Such properties have been studied by Moraglio [33, 30] and resulted in the idea of geometric offspring as presented in Sect. 3.1. In [19] , Krawiec and Lichocki proposed using a trial-anderror approach (essentially a form of brood selection) to design a crossover operator that is approximately geometric. In [32] , Moraglio et al. considered properties of semantic spaces for different metrics and proposed a syntax-based technique for designing exact semantically geometric crossovers.. In the context of these contributions, LGX remains unique in combining the three elements: selection of procedures w.r.t. their semantic properties, homologous character of crossover, and the use of a library of procedures.

O O O O O O O O O O B 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 B 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 B 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 B 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 B O O O O O O O O O O O O B 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 O O O O O O O O O O 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 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 B 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 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 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 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 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 B 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 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 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 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 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 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 B 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 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 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 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 B 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 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 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 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 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 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 B 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 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 B 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 B 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 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 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 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 B O O