Whitney Estimates for Convex Domains with Applications to Multivariate Piecewise Polynomial Approximation Abstract. We prove the following Whitney estimate. Given 0 < p ≤ ∞, r ∈ N, and d ≥ 1, there exists a constant C (d, r, p), depending only on the three parameters, such that for every bounded convex domain ⊂ R d , and each function f ∈ L p ( ),where E r −1 ( f, ) p is the degree of approximation by polynomials of total degree, r − 1, and ω r ( f, ·) p is the modulus of smoothness of order r . Estimates like this can be found in the literature but with constants that depend in an essential way on the geometry of the domain, in particular, the domain is assumed to be a Lipschitz domain and the above constant C depends on the minimal head-angle of the cones associated with the boundary. The estimates we obtain allow us to extend to the multivariate case, the results on bivariate Skinny B-spaces of Karaivanov and Petrushev on characterizing nonlinear approximation from nested triangulations. In a sense, our results were anticipated by Karaivanov and Petrushev. We begin by recalling classical smoothness measures over multivariate domains. Here and throughout the paper we assume that domains ⊂ R d are bounded with a nonempty interior. Let W r p ( ), 1 ≤ p ≤ ∞, r ∈ N, denote the Sobolev spaces, namely, the spaces of functions g ∈ L p ( ) which have all their distributional derivatives of order up to r ,. The kth seminorm, 0 ≤ k ≤ r , is given by |g| k, p := |α|=k D α g L p ( ) < ∞ and, in particular, the r th seminorm may be regarded as a measure of the smoothness of order r of the function, provided it is in the appropriate Sobolev space. The K-functional of order r of f ∈ L p ( ), 1 ≤ p ≤ ∞, (see, e.g., [8] , [9] ) is defined by We denote. For f ∈ L p ( ), 0 < p ≤ ∞, h ∈ R d , and r ∈ N we recall the r th-order difference operator where [x, y] denotes the line segment connecting any two points x, y ∈ R d . The modulus of smoothness of order r (see, e.g., [8] , [9] ) is defined by. where for h ∈ R d , |h| denotes the norm of h. As above we also denote. It is known that, for 1 ≤ p ≤ ∞, the above two notions of smoothness, (1.1) and (1.3), are sometimes equivalent. In particular, it is shown in [14] that if ⊂ R d has the uniform cone property (see Definition 2.1 below), then for 1 ≤ p ≤ ∞ and r ∈ N, there exist C 1 > 0 and C 2 such that, for any f ∈ L p ( ) and t > 0,. However, while it is easy to show that C 2 in (1.5) depends only on r , the constant C 1 may further depend on the geometry of (see [14] ). Also, it is important to note that the K-functional is unsuitable as a measure of smoothness if 0 < p < 1 (see [11] ).. Let r −1 := r −1 (R d ) denote the multivariate polynomials of total degree r − 1 (order r ) in d variables. Given ⊂ R d , our initial goal is to estimate the degree of approximation of a function f ∈ L p ( ), 0 < p ≤ ∞,. using either one of the above notions of smoothness. One of the classical results in this direction is the Bramble-Hilbert lemma [3] . To introduce it we require the following definitions.. A domain is star-shaped with respect to a ball if for each point x ∈ , the closed convex hull of {x} ∪ B is contained in . Let ρ max = max{ρ | is star-shaped with respect to a ball B ⊆ of radius ρ}. The chunkiness parameter of is defined by . The Bramble-Hilbert lemma implies that for , a star-shaped domain with respect to some ball B, and f ∈ L p ( ), 1 ≤ p ≤ ∞, we have. ( 1.8) By (1.5) if we further assume that the domain has the uniform cone property, then the equivalence 9) holds for 1 ≤ p ≤ ∞ with constants that depend on the shape of the domain . When d ≥ 2, the main drawback of (1.7) and (1.8) is that the constant depends on the chunkiness parameter (1.6) which "blows-up," for example, in the case of a sequence of triangles of equivalent diameter that become thinner and thinner. Also (1.9) may further depend on the geometry of the domain. This dependence is too restrictive to be applied in estimates in nonlinear approximation by piecewise polynomials (see [8] for a survey on nonlinear approximation). For instance, a problem that is motivated by image compression applications is trying to characterize the degree of nonlinear approximation (see [15] , [16] and [7] ), 10) where. In order to apply (1.9), we would need to assume that all of the simplices { k } have some sort of uniform geometric properties. In the finite-elements community [4] , one says that the mesh { k } is required to be "quasi-uniform." This limitation is in contradiction to the main idea behind piecewise polynomial approximation which is to adaptively place the simplices { k } over subdomains where the function is smooth. These subdomains could be long and narrow and thus, under the constraint of a "quasi-uniform" mesh, it may take many simplices to cover them.. In [6] we have proved the following variant of the Bramble-Hilbert lemma:. Then there exists a polynomial P ∈ r −1 for which. A direct consequence of Proposition 1.2 is the following ( [6] ):. where K r ( f, ) p is defined in (1.2) and the constants of equivalency depend only on d and r .. Our main result which we prove in Section 2 is the following Whitney-type theorem that generalizes a result by Karaivanov and Petrushev [15] for triangles in the plane and a result by Storozhenko and Oswald [19] for multivariate boxes (see also [5] for the case of continuous functions). 13) and for 0 < p < 1, we have the equivalence 14) where the constants of equivalency depend only on d, r , and p. In Section 3 we show how these equivalences can be used in the analysis of piecewise polynomial approximation where arbitrarily long and thin simplices are allowed in (1.10). We prove, in the multivariate case, the results anticipated by Karaivanov and Petrushev [15] , who introduced bivariate smoothness spaces, the so-called bivariate skinny B-spaces, for the purpose of characterizing the approximation spaces corresponding to nonlinear n-term piecewise polynomials over nested triangulations (see also [16] for a survey on such spaces).

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


Eigenvectors of tensors and algorithms for Waring decomposition Abstract. A Waring decomposition of a (homogeneous) polynomial f is a minimal sum of powers of linear forms expressing f . Under certain conditions, such a decomposition is unique. We discuss some algorithms to compute the Waring decomposition, which are linked to the equations of certain secant varieties and to eigenvectors of tensors. In particular we explicitly decompose a cubic polynomial in three variables as the sum of five cubes (Sylvester Pentahedral Theorem). In this article we shall be concerned with the following general problem: given a polynomial, what is its minimal decomposition as a sum of powers of linear forms?. Let V be a complex vector space of dimension n + 1 and let S d V denote the space of d th -order symmetric tensors. A choice of basis {x 0 , . . . , x n } for V induces a natural choice of basis for S d V and allows one to express f ∈ S d V as a polynomial in the variables x i . Because of our interest in tensor decomposition, we often do not make a distinction between a symmetric tensor and a polynomial, and often use the terms interchangeably.. Let f ∈ S d V . In this paper, our focus is on the symmetric tensor decomposition. where v i ∈ V have degree 1 and c i ∈ C. For historical reasons, we will refer to this as a Waring decomposition or simply a decomposition of f . The minimum number of summands occurring in such a decomposition is called the (symmetric) rank of f .. Remark 1.1. Note that when working over C, the constants c i in (1) may be assumed to be equal to 1, however this ambiguity will become important in our algorithms as initially we will only find the classes of the linear forms [v i ] ∈ PV (the projective space of lines in V ) and we will have to solve an easy linear system to find appropriate c i to resolve this indeterminacy in order to complete our decomposition algorithms.. Because of the vast amount of work done in this area by several authors in diverse areas of science, the Waring decomposition is also known by many other names such as canonical decomposition (CANDECOMP/PARAFAC (CP)), rank-1 decomposition, sum of powers decomposition, and so on.. We start with an example that illustrates the main results of this paper, which are Algorithm 4 and Thm. 4.7. A classical result, attributed to Hilbert, Richmond and Palatini, states that a general 1 form f ∈ S 5 C 3 can be decomposed in unique way as the sum of seven fifth powers. For reference, see [RS00] or [CS11b] and the references therein.. Set for the moment V = C 3 . In the formula (1) with r = 7, d = 5, we want to find an efficient algorithm to find the v i ∈ C 3 and c i ∈ C which give the decomposition of f . To f we associate a linear map. where Hom(S 2 V, V ) is the space of linear maps from S 2 V to V . Note that the target space is the dual of the source one. If f = v 5 then the definition of P v 5 is the following. where M ∈ Hom(S 2 V, V ) and w ∈ V . In general, if f is any element of S 5 V , the definition of P f is extended by linearity (which can always be done because S d V has a basis consisting of powers of linear forms).. To see the map P f explicitly as a matrix, consider the monomial basis {x i x j } 0≤i≤j≤2 of S 2 V . It turns out that with an appropriate ordering of the basis, P f is represented by the following 18 × 18 block matrix, where the nine depicted blocks have size 6 × 6 (3). and C f i is the matrix whose entries labeled by ((j, k), (p, q)) (for 0 ≤ j ≤ k ≤ 2, 0 ≤ p ≤ q ≤ 2) are given by the fifth derivative f ikjpq . If f has rank 1, we may choose coordinates such that f = x 5 0 . In this case rank C f 0 = δ 0i and the matrix P x 5 0 has rank 2. By the linearity of P f in the argument f and the sub-additivity of matrix rank, if f has rank r, P f must have rank ≤ 2r. In fact, we will see that in addition to giving this bound on rank, P f will also be the key to an efficient way to decompose f . Now we have the following result (see Lemma 3.3): P v 5 (M) = 0 if and only if there exists λ such that M(v 2 ) = λv. Such v is called an eigenvector of the tensor M (or simply eigenvector of M, when the context is clear), where the homomorphism M : S 2 V → V is viewed as a tensor in S 2 V * ⊗ V .. 1 see Remark 2.1 for a discussion of the term general. Eigenvectors of tensors were introduced and studied in [Lim05, Qi05] . Recently, Cartwright and Sturmfels [CS11a] have found a formula computing the number of eigenvectors of a tensor M ∈ Hom(S m C n , C n ). (In Section 6 we review their formula and propose a geometric interpretation of this formula that leads to an alternative proof which generalizes to other cases.) The Cartwright-Sturmfels formula says that there are exactly seven eigenvectors {v 1 , . . . , v 7 } of a general tensor in Hom(S 2 C 3 , C 3 ). Later we will see that general elements of the kernel ker P f share the same eigenvectors. These seven eigenvectors appear exactly in the decomposition (1). This is the basic novelty of this paper with respect to [LO11] , where the same example was considered. Our methods also provide a solution to the pentahedral example (see Section 3.2), which was left open in [LO11] .. In our case, choose a basis {y 0 , y 1 , y 2 } of V and its dual basis {x 0 , x 1 , x 2 } of V * . Any M ∈ S 2 V * ⊗ V can be written as 2 i=0 y i q i (x) where q i is a quadratic polynomial. Recall that v is an eigenvector of M ∈ S 2 V * ⊗ V if M(v 2 ) ∧ v = 0, so the coordinates of the seven eigenvectors can be found by the vanishing of the 2 × 2 minors of the matrix (4). x 0 x 1 x 2 q 0 q 1 q 2 .. Now we summarize the steps to compute the decomposition of general plane quintics, f ∈ S 5 C 3 :. Algorithm 1. Input: f ∈ S 5 C 3 . (1) Construct the matrix P f : Hom(S 2 C 3 , C 3 ) → Hom(C 3 , S 2 C 3 ) as in (3). (2) Compute ker P f . Choose a general M ∈ ker P f and write M = In this article, our approach to Waring decomposition uses algebraic geometry, starting with the classical Sylvester algorithm and the notion of eigenvectors of tensors. With the aid of recent progress [LO11] , on equations of secant varieties using vector bundle techniques, we are able to go further. In fact, this paper can be seen as a constructive version for the symmetric case, of the techniques developed in [LO11] . The main result of this paper is a new algorithm for efficient Waring decomposition of symmetric tensors, stated in general in Algorithm 4. This algorithm is a consequence of the geometric facts contained inProp. 4.1 and Thm. 4.7.. Of course our algorithm will not always succeed to produce the Waring decomposition of symmetric tensors unless the rank is sufficiently small and the tensor is general. On the other hand, we can give precise bounds for the maximum rank of a symmetric tensor which can be decomposed via our algorithm. In Thm. 2.4, we give an improvement to the Iarrobino-Kanev bound on the applicability of the catalecticant method for Waring decomposition. Going further, we state in Theorems 3.5 and 5.4 sufficient conditions for the success of our algorithm in the cases of symmetric tensors on 3 or more variables, respectively. We give a further discussion of what happens in the case that our algorithm fails in Remarks 4.6, 4.8. In particular there is at least one case where our algorithm fails to decompose a tensor, but, as a side effect, brings to light a new way to express a rational quartic curve through 7 (given) general points, see Remark 5.5.. In addition to finding a new algorithm for Waring decomposition, and bounds for its success, we find a new proof of a result of Cartwright-Sturmfels (Proposition 6.1) on the number of generalized eigenvectors that uses Chern classes and generalizes to other types of generalized eigenvectors (seeProp. 6.2), that we call simply eigenvectors of tensors.. The use of tensors is widespread throughout science and appears in areas such as Algebraic Statistics, Chemistry, Computer Science, Electrical Engineering, Neuroscience, Physics and Psychometrics. A common theme at the 2010 conference on Tensor Decomposition and Applications in Monopoli, Italy was the need for efficient and reliable algorithms to perform tensor decomposition. Indeed, we are certainly not the first to consider this problem. For a sample of related recent progress on tensor decomposition, see [BCMT10, CM96, BB11, BGI11, BB10]. Our aim is to use algebraic geometry as a basis for algorithms that can be used (either in place of or in combination with the previous algorithms) to improve efficiency and robustness. We make some comparison with our methods and those of [BCMT10] in Remark 3.10.. Kolda and Mayo [KM10] have recently studied an efficient way of computing eigenvectors of tensors, analogous to the usual iterative procedure to compute usual eigenvectors of matrices. Further work has been done by Ballard, Kolda and Plantenga [BKP11] to implement this method and they have achieved significant speed-ups utilizing a GPU when eigenvectors of many small tensors are to be computed. Since our tensor decomposition methods use eigenvectors of tensors, this indicates that these methods could be combined with our algorithms to improve efficiency.. Another aspect of using tensor eigenvectors in our algorithms is that it may be reasonable to try (in the tensor setting) to mimic a method to approximate a matrix by one of lower rank via eliminating the eigenspaces corresponding to small eigenvalues. We hope that this article can serve as a starting point for such a study. For more issues regarding low-rank approximation of tensors, and the well-posedness of this problem, see [dSL08] .. We have structured this article for two diverse audiences; algebraic geometers and researchers from a variety of applied fields studying tensors. With algebraic geometers in mind, our goal is to show how well-known techniques in algebraic geometry can be used to solve problems in applied areas. Most of our constructions are better explained with the geometric language of vector bundles. However, we did our best to first state the main results by using explicit matrices, without the language of vector bundles. For this reason, we defer the main proofs until Section 4, in the sense that almost all our results are particular cases of a general result (Thm. 4.7), which is stated with the language of vector bundles. Keeping in mind researchers studying applied tensor problems, in Section 2 we describe the history and state of the art of algebraic geometry concerning tensor decomposition from a practical point of view. Because in their original versions the statements may not have been so accessible for applications, we have restated results from algebraic geometry, hopefully in a more transparent language, concerning generic rank (see Thm. 2.2) and uniqueness of tensor decomposition (see Thm. 2.3). In Section 3, we go on to illustrate our new techniques that use Koszul matrices to compute Waring decomposition. As mentioned above, in Section 4 we give the generalization of our techniques. Finally, in Section 7 we describe our Macaulay2 implementation of our algorithms, and we hope that this will serve as a starting point for further implementations of these methods.. 2. Classical methods for tensor decomposition: Sylvester's catalecticant method 2.1. General results on the symmetric rank.. Remark 2.1. We use the term "general element" in the sense of algebraic geometry to indicate that the element is chosen to avoid a (Zariski) closed set. So when we say that the general element in a variety X has a property, this means that X contains a dense subset X 0 such that every element in X 0 satisfies that property. We call a property "generic" if it holds for general elements. We consider the "general" assumption a mild assumption because in practice, most tensors we encounter in nature will actually be general. It is no loss to replace "generic" with "almost always" and "general" with "randomly chosen," or "up to certain non-degeneracy conditions.". Regarding ranks of tensors, the following capstone theorem answers the question completely for general symmetric tensors.

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


Artificial Intelligence approaches for the generation and assessment of believable human-like behaviour in virtual characters Having artificial agents to autonomously produce human-like behaviour is one of the most ambitious original goals of Artificial Intelligence (AI) and remains an open problem nowadays. The imitation game originally proposed by Turing constitute a very effective method to prove the indistinguishability of an artificial agent. The behaviour of an agent is said to be indistinguishable from that of a human when observers (the so-called judges in the Turing test) can not tell apart humans and non-human agents. Different environments, testing protocols, scopes and problem domains can be established to develop limited versions or variants of the original Turing test. In this paper we use a specific version of the Turing test, based on the international BotPrize competition, built in a First-Person Shooter video game, where both human players and non-player characters interact in complex virtual environments. Based on our past experience both in the BotPrize competition and other robotics and computer game AI applications we have developed three new more advanced controllers for believable agents: two based on a combina- * Corresponding author. Tel.: 93581 4090Email addresses: fireball787b@gmail.com (Joan Marc Llargues Asensio), jperalta@cvc.aub.es (Juan Peralta), raul@conscious-robots.com (Raul Arrabales), mgbedia@unizar.es (Manuel Gonzalez Bedia), pcortez@dsi.uminho.pt (Paulo Cortez), antonio@cvc.uab.es (Antonio Lopez Peña)May 22, 2014 tion of the CERA-CRANIUM and SOAR cognitive architectures and other based on ADANN, a system for the automatic evolution and adaptation of artificial neural networks. These two new agents have been put to the test jointly with CCBot3, the winner of BotPrize 2010 competition [1] , and have showed a significant improvement in the humanness ratio. Additionally, we have confronted all these bots to both First-person believability assessment (BotPrize original judging protocol) and Third-person believability assessment, demonstrating that the active involvement of the judge has a great impact in the recognition of human-like behaviour. The design and implementation of believable artificial agents, truly indistinguishable from humans, remains an open problem. This challenge has been typically addressed from two interrelated perspectives within cognitive science. On one hand, psychological models of human cognition try to explain how human behaviour is produced. On the other hand, computational models implemented in artificial agents try to replicate to some extent human-like behaviour. In this work, we focus exclusively in the sensorimotor behavioural dimension, setting aside any concerns related to the physical appearance of the artificial agents or their verbal report capabilities.. The imitation game proposed by Turing is the paradigmatic test for believability. However, current state of the art in cognitive and computer sciences has not reached the degree of development in which this test could be considered truly achievable. Therefore, a number of different variations of the original Turing test have been proposed, usually limited Turing tests with relaxed constraints and more specific problem domains. In this paper, we focus in a specific limited version of the Turing test designed for virtual characters and based in a First-Person Shooter (FPS) video game.. From the point of view of the scientific research on human cognition, video game characters are an interesting case of artificial agents because they are easy to implement using the video game industry state of the art tools and their virtual environments can become quite complex, simulating a great variety of contexts and ambient conditions. Furthermore, interaction with real world and with human players is also seamlessly integrated in real-time, as video games are designed to facilitate the prompt interaction between human players and non-player characters (NPC).. While old game character implementations (for instance, Pac-Man ghosts or Space Invaders alien spacecrafts) were based on really simple pre-programmed and scripted behaviours, modern AAA video games are developed to simulate real complex environments and they require engaging, realistic and believable human-like behaviour for their NPCs. Although scripted behaviours might still be acceptable for some specific scenarios, AAA game consumers expect to find synthetic characters at the same level of behavioural realism and unpredictability as evoked by the visual experience of the game.. Generally, human-like behaviour is difficult to both define and test. In fact, the Turing test paradigm stills apply to this problem because no better alternatives have been found to characterize human behaviour. In the realm of computer games, this elusive characterization might, in principle, be seen easier to define. For instance, human players usually consider disappointing the behaviour of artificial characters for two main reasons [2] : they are either too intelligent, rational and accurate to be human, or on the contrary, they are too silly. Therefore, the challenge is to find that blurred medium level that characterizes human player behaviour.. From the point of view of cognitive science, human-level intelligence and human-like behaviour can be considered as produced by several interrelated psychological processes, ranging from basic activation processes like primary motivations to complex high level cognitive processes such as set shifting and imitation learning. The current knowledge we have about these processes can be used to inspire the design of artificial cognitive architectures. In this paper, we present three different approaches to this sort of inspiration and put them to the test in an adapted version of the Turing test based in a video game [3] . Additionally, we assess the believability (or "humanness") of these bots using two different assessing methods: First-person and Third-person judges.. The remainder of this paper is structured as follows. In the next section we discuss the problems of assessing believability and describe the testing protocols we have used in this research. In Section 3 we present the different approaches to the design of believable agents, followed in Section 4 by a description of the implementations that we have developed for the believability experiments. Finally, experimental results are presented in section 5 and discussed in Section 7. As introduced in this paper, the automatic generation of human-like behavior is an enormous challenge, even when addressed in the constrained domain of a video game without verbal interaction. We have explored the application of different control architectures and also new ways to address the problem of assessment. The results obtained clearly indicate that the third-person approach to assessment is much more demanding in this context. Therefore, we plan to perform more extensive testing using this approach. As explained in the paper, when we design cognitive architectures we model different cognitive processes and try to integrate them effectively so the resulting synergies translate into a more human-like behavior. We believe that the results obtained in the experimentation are consistent with the implementation and integration of the cognitive processes we have focused on: attention, memory and the activation processes like emotion.. Although good results have been obtained, for example, by ADANN, still the training and testing process are still separated. Due to this, although a good NPC is obtained during the training process, once this bot is taken from the training sandbox to the testing one, it will not learn more while it is playing. Then, a possible future work would be to make use of Nonsupervised learning process and ANN so there would be only one sandbox, being it used for training and testing at the same time. On the other hand, every time the bot is taken to a new game, it would be able to keep on learning from new players.. In order to achieve better humanness results we plan to integrate higher level cognitive processes, mainly learning mechanisms such as reinforcement learning. In fact, as we have seen, CCBotSOAR clearly surpasses CCBot thanks to this feature. As we have shown, three different approaches were designed and compared using two different measurements methods. We can observe that although ANN approach obtains better results in First-person experimentation, in general, cognitive approach CCBotSOAR is the best option. In Fig. 8 we compare the results of the two assessment methods for the three bots. Consistently the First-person method offers a higher humanness ratio for all bots. Applying the Student's T-test for the paired samples corresponding to the two assessment methods we obtain a P = 0,038 <0,05, thus confirming that we cannot consider the First-person and Third-person methods as equivalent. While the bot solely based in the CERA-CRANIUM architecture lacks any learning or long-term adaptation mechanism, the two bots with better results implement different mechanism of adaptation. We believe the reason why these two bots have similar performance in terms of believability lies in the learning/adaptation mechanisms.. CCBotSOAR implements a reinforcement learning mechanism as described in Section 4.2. (see "long time memory" subsection), which makes it more adaptable to the dynamics of the interaction with other players. Similarly, ADANN also adapts well to the dynamics of the interaction with other players, however, in this case the mechanism used is not an explicit learning algorithm, but a genetic algorithm optimization. It can be argued that the fitness function in the genetic algorithm in ADANNBot is equivalent in terms of adaptation results to the reinforcement learning algorithm implemented in CCBotSOAR.. The believability assessment methods applied in this work are indeed fully behavioural tests, as they are inspired by the Turing Test. Pure behavioural approaches are pragmatic as they do not take into account the internal states or mechanisms of the agents. In other words, Stimulus-Response (S-R) models are the references to understand and evaluate the subjects being tested. When we confront artificial agents to a full Turing Test this should not be a problem, as we assume human-like internal processes exists (even though we do not study them directly) and the resulting behaviour is the result of the interaction between the stimuli and these internal psychological processes. However, when we are dealing with limited versions of the Turing Test, where some behaviours might well be pre-programmed, we might want to also inspect the inner workings of the agents. By inspecting and analysing the inner processes of the agents we are adopting a Stimulus-Organism-Response (S-O-R) stance. Additionally, by "looking inside" the agents we are making sure no deceiving strategies have been implemented in order to fool the judges.. Human judges are usually influenced by the personification effect [1] and they tend to assign psychological states, personality and intentions to simple behaviours that may be just simple pre-programmed routines. Although this issue is not a main concern in the present work, as we exclusively focus on the perceived humanness, more comprehensive S-O-R oriented tests might be developed based on machine consciousness testing approaches like the ConsScale cognitive development measure [4] .

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


Globally Reliable Variation-Aware Sizing of Analog Integrated Circuits via Response Surfaces and Structural Homotopy Abstract-This paper presents SANGRIA, a tool for automated globally reliable variation-aware sizing of analog integrated circuits. Its keys to efficient search are adaptive response surface modeling, and a new concept, structural homotopy. Structural homotopy embeds homotopy-style objective function tightening into the search state's structure, not dynamics. Searches at several different levels are conducted simultaneously: The loosest level does nominal dc simulation, and tighter levels add more analyses and {process, environmental} corners. New randomly generated designs are continually fed into the lowest (cheapest) level, always trying new regions to avoid premature convergence. For further efficiency, SANGRIA adaptively constructs response surface models, from which new candidate designs are optimally chosen according to both yield optimality on model and model prediction uncertainty. The stochastic gradient boosting models support arbitrary nonlinearities, and have linear scaling with input dimension and sample size. SANGRIA uses SPICE in the loop, supports accurate/complex statistical SPICE models, and does not make assumptions about the convexity or differentiability of the objective function. SANGRIA is demonstrated on four different analog circuits having from 10 to 50 devices and up to 444 design/process/environmental variables. U NCONTROLLABLE factors in semiconductor manufacturing-process variations-have always existed. Up until recently, the effects would cancel out across the billions or more atoms in a given transistor. However, transistors have shrunk so much that even a single atom out of place can affect a transistor's behavior, leading to worsened circuit behavior and even circuit failure. The variation is already large, and will continue to get worse with future process technologies [1] . Such variation is particularly problematic for analog circuits, which do not have the abstraction of binary digits to hide small variations. Process variations are not the only problem.. Layout parasitics, aging/reliability, electromagnetic compatibility, proximity, and other phenomena can affect circuit behavior. However, because of their direct short-term impact on circuit yields, addressing process variations is the most urgent.. Design of robustly behaving analog circuits is difficult and time consuming. This has caused the analog portion of chips to become the design bottleneck [1] . Yet, we cannot ignore or bypass analog circuits, since they are crucial for digital circuits to interface with the real world. As of 2006, 70% of systems on chips or systems in packages have some analog functionality, up from 50% in 2005 and 10% in 1999 [2] . We need a means to design analog circuits which meet performance goals, have high yield, with low area, all designed fast enough to succeed in tight time-to-market schedules [3] .. One option for designing robust analog circuits is to simply design with worst-case corners. However, this can give unacceptable performance margins or area increase, even if bestpractice layout techniques are used. Automated variation-aware sizing is a promising alternative, and there has accordingly been much recent research on the topic [4] - [12] .. An industrially useful optimization tool must possess several characteristics. 1) It must be SPICE accurate, support accurate/complex statistical models such as [13] , and reflect these within its objective function. 2) It should be globally reliable-the user should not need to worry about whether the algorithm is stuck at a local optimum (and there is a difference between a nominal optimum and a statistical optimum, as Section II-B discusses). 3) Because the true objective function mapping is not known, the tool should not make assumptions about the convexity or continuity of the mapping. 4) Finally, it should be able to scale to handle dozens of devices, dozens of design variables, and hundreds of process variables. 1 Using a cluster for parallel computing is acceptable.. As Table I summarizes, none of the existing approaches to yield optimization possesses all of these characteristics (Section III has details). A new approach is needed, which is the focus of this paper. The novel contributions of this paper are the following.. 1) An analog yield optimization approach that, unlike other approaches, has the characteristics of: a) accurate variation model; b) escapes local yield/Cpk optima; c) handles nonconvex/discontinuous mappings; and d) scales well. 2) An enabling aspect of the algorithm is a novel homotopy [14] approach called structural homotopy which continually explores new regions of design space with loose evaluation, refines promising designs with successively more evaluation, and fully evaluates the most promising designs. It searches these different levels in the exploration-exploitation spectrum simultaneously. Since fresh regions are continually explored and refined, the algorithm does not prematurely converge to local optima. 3) A second enabling aspect of the algorithm is modelbuilding optimization (MBO) with several novel aspects. It uses stochastic gradient boosting (SGB) [15] for models. SGB has linear scaling with input dimension and sample size [15] , yet can handle nonconvex and discontinuous mappings. To our knowledge, this is the first time that SGB has been used for MBO, in analog sizing, or otherwise. Unlike other MBO approaches in the literature, model uncertainty is computed with ensembles of SGB models, and employed within a Pareto-aware multiobjective optimization [16] to find candidate designs that tradeoff optimality (on the model) with model uncertainty. The approach is called SANGRIA: Statistical, accurate, and globally reliable sizing algorithm.. The rest of this paper is organized as follows. Section II describes the yield optimization problem. Section III reviews past approaches to yield optimization. Sections IV and V describe homotopy and response-surface-based optimization, respectively. Section VI describes the SANGRIA algorithm. Section VII gives experimental results for SANGRIA on a suite of optimization problems, on circuits having hundreds of variables. Section VIII concludes this paper.

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


The impact of electronic medication administration records in a residential aged care home This study aimed to compare between electronic medication administration records and paper-based records in the nursing time spent on various activities in a medication round and the medicationadministration processes followed by nurses in an Australian residential aged care home. It also aimedto identify the benefits and unintended adverse consequences of using the electronic medication admin-istration records.Methods: Time-motion observation, taking of field notes, informal conversation and document reviewwere used to collect data in two units of a residential aged care home. Each unit had one nurse admin-ister medication. Seven nurses were observed over 12 morning shifts. Unit 1 used electronic medicationadministration records and Unit 2 used paper-based records.Results: No significant difference between the two units was found in the nursing time spent on variousactivities in a medication round, including documentation, verbal communication, medication adminis-tration, infection control and transit.Comparison of the medication administration processes between the electronic and paper-basedmedication administration records identified a procedural problem which violated the organization'sdocumentation requirement. This problem was documenting before providing medication to a residentwhen using the paper-based records. It was not observed with the electronic medication administrationrecords.Benefits of introducing the electronic medication administration records included improving nurses'compliance with documentation requirements, freedom from the error of signing twice, reducing thepossibility of forgetting to medicate a resident, facilitating nurses to record the time of medicationadministration to a resident and increasing documentation space. Unintended adverse consequencesof introducing the electronic medication administration records included inadequate information aboutresidents, late addition of a new resident's medication profile in the records and nurses' forgetting tomedicate a resident due to power outage of the portable device.Conclusions: The electronic medication administration records may not change nursing time spent onvarious activities in a medication round or substantially alter the medication administration processes,but can generate both benefits and unintended adverse consequences. Future research may investigatewhether and how the adverse consequences can be prevented. Managing medication for the frail elderly is challenging [1] . Research has found that residents living in residential aged care homes (RACHs) were prescribed significantly more medications than those living independently [2] . International studies found that residents in. RACHs were prescribed an average of seven to nine medications [3] [4] [5] . As various healthcare workers such as doctors, pharmacists and nursing staff collaboratively work in the medication management process [6] , and each needs to make specific decisions and actions, this process can be error-prone [7] .. It is believed that electronic medication administration records (eMAR) can reduce medication errors and improve efficiency [8, 9] . This expectation has driven some RACHs to implement eMAR. However, there is a paucity of empirical evidence to suggest whether and how eMAR can meet the stated expectations.. Vogelsmeier et al. [10] used multiple methods including observation, process mapping, key informant interviews and field notes to explore workarounds to eMAR in five RACHs. The eMAR were used on a portable device with a touchscreen. The study found that there were some workflow blocks intentionally designed in the eMAR to improve resident safety, for example documenting after preparing medication and documenting again after providing medication. However, staff overrode these blocks because they felt that they were cumbersome or time consuming. The study also found some unintentional adverse blocks (e.g.. limited fax capacity). The staff had to work around these blocks in order to complete tasks.. The study conducted by Vogelsmeier et al. was part of a larger study summarized by ScottCawiezell et al. [1] . Scott-Cawiezell et al. reported that implementation of the eMAR was guided by the medication safety team of each RACH. Use of the eMAR created some benefits such as shortened medication order entry process, improved clarity of the medication administration records and provision of real-time data to the healthcare provider. However the use of the eMAR could not solve the workaround issue in isolation. An effective mechanism needed to be developed by the medication safety teams, in consideration of the functionality of the eMAR to maximize its benefits and minimize or eliminate the adverse consequences [1] .. The findings from these studies suggest that the actual way that eMAR are used by the staff on the floor may limit the effectiveness of eMAR and prevent realization of the expected benefits. More evidence about how eMAR can be used effectively to improve resident safety and documentation efficiency is needed. This will direct management in designing relevant, targeted intervention mechanisms to improve the effectiveness of eMAR.. The study reported here aimed to investigate the impact of eMAR in an Australian RACH. It addressed the following three questions: 1) Compared with paper-based records, do eMAR impact nursing time spent on various activities in a medication round? 2) What are the processes that a nurse might follow in use of eMAR or paper-based records to medicate a resident? 3) What are the benefits and unintended adverse consequences of introducing eMAR?. In Australia, RACHs provide aged care services to older people who can no longer live by themselves at home. Residential aged care services are provided at two levels: low care and high care. Low-care homes, also known as hostels, provide accommodation, laundry, meals, cleaning services and personal care (e.g. showering, dressing and toileting). High-care homes, also known as nursing homes, provide 24-hour nursing care (e.g. medication administration) in addition to low-care services. Residential aged care homes which allow low-care residents to remain in the same place instead of transferring to a high-care home as their dependency increases are called aging-in-place RACHs. This study was conducted in an aging-in-place RACH. The eMAR did not necessarily change the time nurses spent on various activities such as medication administration, verbal communication and documentation. The medication administration processes followed by nurses were similar between the use of the eMAR and the paper-based records, but the use of the eMAR has the potential to improve nurses' documentation compliance and workflow.. In addition, the eMAR can help to prevent the error of signing a medication twice, reduce the possibility of nurses' forgetting to medicate a resident, facilitate the recording of medication administration time and increase documentation space. Unintended adverse consequences of the eMAR included inadequate information about residents in the eMAR, late addition of a new resident's medication profile and nurses' forgetting to medicate a resident when there was power outage of the portable device.. To maximize the benefits of introducing eMAR, managers need to be able to predict and plan for the unintended adverse consequences before purchasing and implementing the system.. They need to consider, for example, whether the system meets daily documentation needs, how the staff on the floor will actually use the system and whether specific work processes should be adjusted to support efficient work rather than hindering efficiency or providing In this study, direct observations were conducted of how nurses used eMAR in two high-care units in an Australian RACH. It measured and compared how nurses used the eMAR in the two units. It also highlighted the potential qualitative value of introducing the eMAR. This study used multiple methods, including time-motion based observation, informal conversation with medication staff, field notes and document review, to collect both quantitative and qualitative data in morning shifts in the aging-in-place RACH.

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


Dominant critical gate identification for power and yield optimization in logic circuits With increasing process variations, low-VT swapping is an effective technique that can be used to improve timing yield without having to modify a design following placement and routing. Gate criticality, defined as the probability that a gate lies on a critical path, forms the basis for existing low-V T swapping techniques. This paper presents a simulation-based study that challenges the effectiveness of low-V T swapping based on the conventional definition of gate criticality, especially as random process variations increase with technology scaling. We introduce dominant gate criticality to address the drawbacks of the conventional definition of gate criticality, and formulate dominant critical gate ranking in the presence of process variations as an optimization problem. Simulation results for 12 benchmark circuits from the ISCAS and OpenSPARC suites to achieve timing yields of 95% and 98% indicate that low-V T swapping based on dominant gate criticality reduces leakage power overhead by 61% and 42% for independent and correlated process variations, respectively, over low-V T swapping based on conventional gate criticality. Process variations cause significant degradation in the yield of manufactured chips [1] , and these effects are expected to worsen with technology scaling. Process variations consist of a correlated component arising from wafer-to-wafer, die-to-die, and spatially correlated within-die variations, and an independent component arising from random variations. As random variations increase with technology scaling [2] , guard-banding approaches to improve timing yield result in pessimistic designs. Since leakage power is also an important factor in determining the yield [1] , improving timing yield with minimal impact on leakage power is a significant challenge for the future.. Statistical optimization techniques to improve timing yield by optimizing circuit parameters such as gate size, V T, and VDD early in the design cycle have been proposed in literature (see [3] ). However, since the impact of process variations can be predicted more accurately after place-and-route, engineering change order (ECO) techniques based on logic restructuring, buffer insertion, gate resizing, and low-V T swapping have been proposed to improve yield by fine-tuning the design [4, 5] . Since leakage power is also strongly This research was supported by NSF CAREER Award CCF-0746850.. 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. GLSVLSI '10, May 16-18, 2010 influenced by process variations, these techniques try to enhance timing yield with minimum impact on leakage power.. Low-V T swapping is a preferred ECO technique for improving timing yield since it can be applied without modifying a design following placement and routing. Several optimization-based low-V T swapping techniques to improve yield have been proposed in literature [6] [7] [8] . The dynamic programming approach in [6] stores the best low-V T swapping choices, but becomes computationally expensive for circuits with a large number of reconvergent fanout paths. Techniques based on solving a continuous-V T optimization problem, followed by heuristic techniques to discretize the V T assignments [7, 8] , either do not produce good V T assignments or become computationally demanding as more complex discretization strategies are used. Given these limitations, practical techniques for low-V T swapping based on the concept of gate criticality have been proposed [5, 9] . Gate criticality is defined as the probability that a gate lies on a critical path and several techniques for gate criticality computation have been proposed [10] [11] [12] [13] .. Conventional techniques for low-V T swapping use metrics that combine gate criticality with leakage to rank and process candidates for timing yield enhancement. However, the effectiveness of such rank-and-swap techniques diminishes with each swap since the criticality of all the gates in the design changes after every swap. This is because the distribution of critical paths, and hence critical gates, changes after every low-V T swap. Although it is possible to repeat criticality computation after every swap or set of swaps, the need to run a statistical timing and yield analyzer for criticality computation makes this approach computationally exorbitant.. To address these shortcomings, we propose the concept of dominant critical gate ranking in this paper. Dominant critical gate ranking ensures that the set of top ranked gates is a critical set of gates, i.e., it ensures that the set of gates is highly effective in improving the timing yield of the circuit. We formulate dominant critical gate ranking in the presence of process variations as an optimization problem. This optimization problem has to be solved only once to determine a ranking of the critical gates that can be effectively used to improve the timing yield of a circuit. The effectiveness of dominant critical gate ranking is illustrated by considering low-V T swapping of the top ranked gates to improve the timing yield to 95% and 98%. For 12 benchmarks from the ISCAS and OpenSPARC suites, the results indicate that low-V T swapping based on dominant critical gate ranking requires 57% and 32% fewer swaps than conventional gate criticality for independent and correlated process variations, respectively. The reduced number of low-V T swaps translates to 61% and 42% reduction in leakage power overhead for achieving the same timing yield in for independent and correlated process variations, respectively. This paper is organized as follows. Section 2 motivates dominant gate criticality. Section 3 describes optimization for dominant critical gate ranking for independent process variations. Sec. 4 extends dominant critical gate ranking to correlated process variations. Sec. 5 presents results for yield improvement and power reduction using low-V T swapping. Sec. 6 is a conclusion. In this section, we present and compare results for yield improvement using low-V T swapping based on gate criticality ranking obtained using algorithm DCG and the conventional definition of gate criticality. The effectiveness of each criticality ranking will be assessed based on the number of low-V T swaps and leakage power overhead required to achieve a target yield. The comparison will demonstrate the effectiveness of algorithm DCG in identifying small sets of dominant critical gates to achieve the same timing yield with a lower leakage power overhead as compared to ranking them using conventional gate criticality.. The techniques are compared using 12 benchmark circuits from the ISCAS benchmark suites and modules from the OpenSPARC T1 processor. The simulation setup used for comparison was described in Sec. 2. On average over various gates in the library, low-V T gate cells improve the delay by 20% and increase the leakage power dissipation of a gate by 11X. Tables 1 and 2 present results for independent and correlated process variations, respectively. The name and number of gates for each benchmark circuit is reported in the first two columns of the tables. The critical probabilities of the gates is obtained using 100K Monte Carlo runs for each benchmark circuit. The gates are then ranked in decreasing order of critical probability for performing yield improvement based on low-V T swapping. The results for this technique are reported in the column MC in the tables for target yield of 95% and 98%. Results for yield improvement based on dominant critical gate ranking obtained from algorithm DCG for the same target yields are reported in the column DCG. The number of low-V T swaps and the leakage power overhead over the base design (without any low-V T swaps) are reported in the columns "No. swaps" and "Leakage ovh.", respectively, for each technique and yield combination. The runtime for each technique in seconds is indicated under "Runtime".. Results indicate that timing yield improvement using low-V T swapping of gates based on algorithm DCG requires 57% and 32% fewer swaps than the conventional metric of gate critical probability for In this section, we present results and observations for low-VT swapping based on the conventional definition of gate criticality to motivate the problem addressed in this paper. Whereas we use Monte Carlo simulations to compute the criticality of each gate in the circuit in the presence of process variations, techniques such as [10] [11] [12] [13] can also be used.

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


Knowledge reuse in genetic programming applied to visual learning We propose a method of knowledge reuse for an ensemble of genetic programming-based learners solving a visual learning task. First, we introduce a visual learning method that uses genetic programming individuals to represent hypotheses. Individuals-hypotheses process image representation composed of visual primitives derived from the training images that contain objects to be recognized. The process of recognition is generative, i.e., an individual is supposed to restore the shape of the processed object by drawing its reproduction on a separate canvas. This canonical method is extended with a knowledge reuse mechanism that allows a learner to import genetic material from hypotheses that evolved for the other decision classes (object classes). We compare the performance of the extended approach to the basic method on a real-world tasks of handwritten character recognition, and conclude that knowledge reuse leads to significant convergence speedup and, more importantly, significantly reduces the risk of overfitting. Despite several decades of intense research, machine learning (ML) is still a limited imitation of basic human skills. One of the reasons for that deficiency is the lack of ability to identify and reuse knowledge fragments across different learning tasks. Standard ML algorithms do not accumulate knowledge when faced with consecutive learning tasks, and work with fixed learning biases. Though such approaches perform well in many scenarios, as demonstrated by successful ML applications in many areas, an ability to detect and reuse the universal background knowledge (a.k.a. commonPermission 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. GECCO'07, July 7-11, 2007 , London, England, United Kingdom. Copyright 2007 ACM 978-1-59593-697-4/07/0007 ...$5.00. sense knowledge), or more specific domain-related knowledge, or even more specific task-related knowledge, would be definitely a virtue for a learning system. In particular, such an ability would, among others, improve the convergence speed of the learning process, reduce the risk of overfitting, and keep down the number of training examples required to learn the concept. Some of these profits resulting from knowledge reuse have been already demonstrated in related studies on, e.g., multitask learning [2] . However, apart from scarce studies, the last decade did not see a breakthrough in this topic, and knowledge reuse has been recently listed by Tom Mitchell [21] among the most important and challenging issues in ML.. There are several reasons for the inability of most of standard ML systems to identify and reuse knowledge fragments. Firstly, in the most popular paradigm of inductive learning from attributed examples, it is difficult to identify universal, or even domain-specific knowledge (often identified with inductive bias in inductive learning). Secondly, knowledge encoded in representations that are predominantly used in machine learning is difficult to modularize or transfer. For instance, there is little chance for a fragment of a neural network to be useful at another location of the same network, or a different network delegated to solve another learning task. This is also due to the fact that, in most ML problems, attributes that describe examples are highly task-specific, which reduces chances of finding a similar/analogous attribute in another learning task.. Inspired by these limitations, in this paper we exploit the paradigm of genetic programming (GP, [9] ) as a vehicle for knowledge reuse. GP offers an excellent platform for knowledge transfer, due to symbolic representation of solutions and the ability of abstraction from a specific context. This property, together with a built-in mechanisms of propagation of evolutionary material through crossover, enable advanced and effective knowledge manipulation. Thus, the major contribution of this paper is a novel method of knowledge reuse in GP that operates between a group of learners that work in parallel. In particular, we demonstrate that a relatively simple mechanism of knowledge reuse introduced between related visual learning tasks improves dramatically the convergence of the learning process and, in consequence, prevents overfitting. We demonstrated the possibility of obtaining substantial performance increments by introducing knowledge reuse (GPKR) in a variant of genetic programing designed to process visual information and recognize objects. The proposed mechanism of knowledge reuse is straightforward and may be implemented by a relatively simple extension of the canonical scheme of evolutionary algorithm and introduction of an off-shelf GP crossover operator for crossbreeding. The method does not increase the computational effort of the learning process, and provides statistically significant performance improvement at the same computational expense as the basic method (GP). At the current stage, it is difficult to conclude if the results obtained here generalize to other variants of GP-based learning. The conservative answer should be probably negative: many other GP-based learning methods would benefit less from this form of knowledge reuse. For instance, GP expressions operating in the space of attributes in conventional learning from examples, would probably be not beneficiary of GPKR, for the reasons stated earlier in Introduction (low probability of simultaneous usefulness of GP subexpressions in other learning tasks).. However, this tentative conclusion should not restrain us from further investigation of the topic. Quite on the contrary, it may be a useful hint for building GP representations that are susceptible to knowledge reuse. In other words, it would be interesting to pose an inverse problem: instead of trying to devise a knowledge reuse method for a particular knowledge representation, try to define a knowledge representation that makes the knowledge reuse possible.. The positive results obtained in this study suggest a successful match between the abstraction level of knowledge representation and the level at which GPKR operates. Supposedly, our operators that group and select visual primitives are well suited for identifying common learning subtasks (GP code fragments) and their reuse. In particular, we hypothesize that, among the reused code fragments, the most useful are those ones that help the evolving individuals to detect specific parts of recognized objects; these are most probably image features that are important for reconstruc-tion and repeat across object classes: junctions and ends of pen strokes. However, this supposition needs more in-depth analysis of results and will be subject of another study. In Fig. 5 , we show the fitness graphs of the best-of-generation individuals averaged over all 33 evolutionary runs, plotted with 0.95 confidence intervals. Continuous lines plot results for GP, while dashed and dotted ones for GPKR-100 and GPKR-200, respectively. For GPKR, only secondary runs are shown, as the plots for the primary runs overlap with the results for GP (primary run of GPKR is equivalent to GP stopped after m generations).. The first general observation is that, despite the reduced number of available generations (300 for GPKR-100 and 200 for GPKR-200), the secondary runs of GPKR converge to solutions that are not worse than GP. Moreover, for character tasks A, E, and W, GPKR ends up with significantly better fitness values. This difference is especially prominent for the task E, where it amounts to approximately a quarter of the fitness value attained by GP. On the other hand, for character class Z, the virtual lack of difference in performance between GP and GPKR, together with the relatively quick GP's convergence to good solutions suggest that GPKR cannot help much if the task at hand may be successfully solved without knowledge reuse. Table 1 shows the final results, i.e., fitness values of the evolved best-of-run individuals averaged over 33 evolutionary runs, for GP and for the two separate GPKR experiments that use different lengths of the primary run: GPKR-100 (m = 100) and GPKR-200 (m = 200). Table 2 shows an analogous information for the testing set, which is a separate collection of 6×68 = 408 hand-drawn characters created analogously to the testing set. In should be emphasized that the testing set contains also characters written by different people than the training set. Values printed in bold indicate GPKR's superiority to GP with respect to the paired two-sided t-Student test at 0.05 significance level. Each fitness column is accompanied by an extra column containing the p-value of the corresponding t-Student test. Again, GPKR never performs worse than GP; quite on the contrary, it is superior to GP on the training set in six out of twelve cases, and in five out of twelve cases on the testing set. This last observation is especially appealing, as it clearly suggests that GPKR successfully prevents overfitting. Note also that, apart from these conclusive cases, there are a few other characters for which the p-values are reasonably small (e.g., character W for GPKR-200), suggesting possible positive impact of knowledge reuse. The results shown so far refer to fitness values only; in the following, we describe the performance in terms of machine learning. To this aim, for each set of GP or GPKR results, we combine the six best-of-run individuals into one recognition system. The system performs recognition of an example t by computing fitnesses (responses) of all six individuals for t and indicating the class associated with the fittest individual. Such procedure is motivated by an obvious observation, that a learner is taught to perform well on images from one class and its raw (minimized) fitness should be near 0 only for images of this class. For example, it is unlikely that an individual that successfully learned to restore the shape of (recognize) character E could equally well restore the shape of letter W; for such negative examples, it will thus produce a large (i.e., worse) fitness value. Table 3 presents the average confusion matrix of the complete, six-class recognition systems built from the best-ofrun individuals evolved using the GP approach according to the procedure described at the end of section 5.1. To demonstrate the average expected behavior of an evolved recognition system, this matrix has been computed by averaging the 33 confusion matrices obtained from 33 independent recognition systems applied to the test set. Tables 4 and 5 show analogous results for GPKR-100 and GPKR-200, respectively. In all these tables, rows correspond to actual class assignments of an example, while columns correspond to the decisions of the recognition system. To improve readability, the matrices do not show absolute numbers of examples but are normalized row-wise; for instance, the value 1.83 at the intersection of row A and column E in Table 3 means that, on the average, 1.83% of examples of character A have been mistakenly classified as E by the GP recognition system. Figure 6 : Visualization of the process of shape restoration.. All the evolved recognition systems perform well, exceeding 90% accuracy of classification on the average. For all three recognition systems, most of misclassifications occur between character classes X and Y, which may be due to the visual similarity of the shapes of these letters. However, both GPKR-100 and GPKR-200 perform better than GP, attaining overall classification accuracy of 93.07% and 93.82%, respectively, versus 91.96% for GP.. The presented confusion matrices reflect the expected performance of a recognition system that has been obtained at a relatively low computational expense. Given more evolutionary runs, these results may be further boosted by employing more voters per each decision class, as opposed to one voter per class in the above scheme. Such an approach is especially appealing in the context of evolutionary computation, as each evolutionary run usually produces a unique best-of-run individual, so their fusion may result in synergy. For instance, a compound recognition system composed of five voters per class (i.e., 5 × 6 = 30 voters in total) yields 98.77% accuracy of classification for GPKR-100, 98.28% for GPKR-200, whereas only 93.87% for GP.. In Fig. 6 , we illustrate the process of generative shape restoration performed by the well-performing individuals for selected character classes. Thin dotted lines mark the shapes drawn by a human, whereas thick continuous lines depict drawing actions performed by the individual. It may be easily observed that, in most cases, the evolved individuals successfully reproduce the overall shape of the recognized object. Reproduction seems to be robust despite various forms of imperfectness of the hand-drawn characters. Though knowledge reuse is definitely an important issue in computational intelligence, it has so far attracted relatively little attention. Reported research concerns mostly knowl-edge reuse within a single learning task, with the exception of limited work on multitask learning [2] , which predominantly uses neural nets for knowledge representation. In the context of GP, knowledge reuse is often connected with knowledge encapsulation [11, 25, 3, 5] , which is however not used in the approach presented here. Among reported research, the work done by Louis et al. most resembles our contribution [18, 16, 17] . In particular, in Case Injected Genetic Algorithms (CIGAR) described in [17] , the experience of the system is stored in a form of solutions to problems solved earlier ('cases'). When confronted with a new problem, CIGAR evolves a new population of individuals and injects it periodically with such remembered cases. Experiments demonstrated CIGAR's superiority to standard GA in terms of search convergence. However, CIGAR injects complete solutions only, works in a strictly sequential way, and does not involve GP. These (and also some other) features make it different from our approach.. The work presented here is also partially related to visual learning. As image interpretation is an inherently complex task, it is difficult to devise a learning method that solves such a task as a whole. Rather than that, most methods proposed so far introduce some learning or adaptation at a particular stage of image processing and analysis, which enables easy interfacing with the remaining components of the recognition system. For instance, using a machine learning classifier to learn and reason from some predefined and fixed image features computed from the input image is a typical example of such an approach. In this paper, we propose a learning method that spans the entire processing chain, from the input image to the final decision making, and produces a complete recognition system. Former research on such systems is rather scant [26, 24, 20, 14, 4] . In [1, 14] we proposed a methodology that evolved feature extraction procedures encoded either as genetic programming or linear genetic programming individuals. The idea of GP-based processing of attributed visual primitives was explored for the first time in [13] , and was further developed in [12, 6, 27, 8] . In [7] , we demonstrate the possibility of cross-task knowledge sharing between learners that explicitly share some GP code. Here, we come up with a method of knowledge sharing that benefits from code fragments imported from other learners.. The approach presented in this paper may be considered as a variant of generative pattern recognition. In a typical paper on that topic [23] , Revow et al. used a predefined set of deformable models encoded as B-splines and an elastic matching algorithm based on expectation maximization for the task of handwritten character recognition. In [15] , an analogous approach has been proved useful for recognition of hand-drawn shapes. However, the approach presented here goes significantly further, as it does not require a priori database of object models. And, last but not least, the recognition (restoration) algorithm has to restore the input image using multiple drawing actions, which implies the ability to decompose the analyzed shape into elementary components.

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