Towards Controllable Distributed Real-Time Systems with Feasible Utilization Control Abstract-Feedback control techniques have recently been applied to a variety of real-time systems. However, a fundamental issue that was left out is guaranteeing system controllability and the feasibility of applying feedback control to such systems. No control algorithms can effectively control a system which itself is uncontrollable or infeasible. In this paper, we use the multiprocessor utilization control problem as a representative example to study the controllability and feasibility of distributed real-time systems. We prove that controllability and feasibility of a system depend crucially on end-to-end task allocations. We then present algorithms for deploying end-to-end tasks to ensure that the system is controllable and utilization control is feasible for the system. Furthermore, we develop runtime algorithms to maintain controllability and feasibility by reallocating tasks dynamically in response to workload variations, such as task terminations and migrations caused by processor failures. We implement our algorithms in a robust real-time middleware system and report empirical results on an experimental test-bed. We also evaluate the performance of our approach in large systems using numerical experiments. Our results demonstrate that the proposed task allocation algorithms improve the robustness of feedback control in distributed real-time systems. In this paper, we have shown that both controllability and feasibility are fundamental properties of DRE systems, and so, are crucial to the success of feedback control in such systems. Using end-to-end utilization control as an example, we found that uncontrollable or infeasible DRE systems often cause processor overload, deadline misses, or undesired low task rates. We then proved that controllability and feasibility depend on end-to-end task allocations. We presented both offline and online task allocation algorithms to ensure system controllability and feasibility both at deployment time and at runtime even when the system is experiencing dynamic workload variations. As a result, a DRE system is guaranteed to meet the end-to-end deadlines of all tasks in the system while being able to run all tasks at the highest possible rates. The resultant high task rates can significantly increase the system value compared to the naive solution of simply keeping processor utilizations under their bounds. Furthermore, we integrated our task allocation algorithms in the FC-ORB middleware. The efficacy of our algorithms has been demonstrated through both empirical results on a physical test bed and numerical evaluations in large systems. A survey of feedback performance control in computing systems is presented in [1] . Many projects that applied control theory to real-time scheduling and utilization control are closely related to this paper. Steere et al. and Goel et al. developed feedback-based schedulers [34] , [14] that guarantee desired progress rates for real-time applications. Abeni et al. presented control analysis of a reservation-based feedback scheduler [3] , [2] . Lu et al. developed a middleware service which adopts feedback control scheduling algorithms to control CPU utilization and deadline miss ratio [27] . Feedback control has also been successfully applied to power control [31] , [21] and digital control applications [10] . For systems requiring discrete control adaptation strategies, hybrid control theory has been adopted to control state transitions among different system configurations [20] .. Stankovic et al. [33] and Lin and Manimaran [23] proposed feedback control scheduling algorithms for distributed realtime systems with independent tasks. These algorithms do not address the interactions between processors caused by end-to-end tasks in DRE systems. Diao et al. developed a Multi-Input-Multi-Output (MIMO) control algorithm for load balancing in data servers [11] . However, their algorithm cannot handle actuation constraints which are also common in DRE systems. In contrast, our previous work EUCON [28] and DEUCON [37] are specially designed to handle the constrained MIMO utilization control problem for multiple processors that are coupled due to end-to-end tasks.. Both controllability and feasibility are important system properties wherever MIMO control is necessary. This paper presents the first study on the controllability and feasibility of DRE systems. Recently, Karamanolis et al. raised the problem of designing controllable systems [19] . However, their paper focused only on some practical issues regarding how to get better control performance for Single-InputSingle-Output (SISO) systems. In contrast, our work investigates the fundamental issues defined in control theory, such as whether it is possible to control a DRE system and how to make an uncontrollable system controllable. Feasibility is another important issue. While the feasibility of scheduling tasks [5] has been addressed before in the real-time community, in this paper, we focus on the feasibility of controlling DRE systems.. We formulate the controllability and feasibility problem as a task allocation problem in DRE systems. Task allocation is a classical problem which has been discussed by many existing projects (e.g., [17] , [13] , [4] ). The difference between our work and those related projects is that we are trying to guarantee system controllability and feasibility, instead of minimizing communication cost or ensuring load balancing. In this section, we present the results of two sets of experiments. First, we present empirical results based on the extended FC-ORB middleware system to demonstrate the effectiveness of the online algorithms. Second, we evaluate the offline subtask allocation algorithms using numerical experiments, which allow us to use a large number of randomly generated workloads to stress test the algorithms in large systems. We perform our experiments on a test bed of six PCs. All applications and the ORB service run on four Pentium-IV PCs (P 1 -P 4 ) and one Celeron PC (P 5 ). P 1 and P 4 are 2.80 GHz while P 2 and P 3 are 2.53 GHz. P 1 -P 4 all are equipped with 512 KB cache and 512 MB RAM. P 5 is 1.80 GHz and has 128 KB cache and 512 MB RAM. All application PCs run RedHat Linux 2.4.22. The controller is located on another Pentium-IV 2 GHz PC with 512 KB cache and 256 MB RAM. The controller PC runs Windows XP Professional with MATLAB 6.0. P 1 -P 4 are connected via an internal switch and communicate with P 5 and the controller PC through the departmental 100 Mbps LAN.. Our experiments run a medium-sized workload that initially comprises seven end-to-end tasks (T 1 -T 7 ), with a total of 18 subtasks. Fig. 6a shows how the seven tasks are distributed on the five application processors. The detailed workload parameters are shown in Table 2 . For example, task T 4 has two subtasks T 4;1 and T 4;2 running on processors P 2 and P 1 with an estimated execution time of 25 and 24 ms, respectively. Three new tasks (T 8 -T 10 ) are admitted in an experiment to the system to test system feasibility. The subtasks on each processor are scheduled by the RMS algorithm [24] . Each task's end-to-end deadline is d i ¼ m i =r i ðkÞ, where m i is the number of subtasks in task T i , and r i ðkÞ is the current rate of T i . Each end-to-end deadline is evenly divided into subdeadlines for its subtasks. The resultant subdeadline of each subtask T ij equals its period, 1=r i ðkÞ. The utilization set point of every processor is set as 0.7 because 1) 0.7 is the RMS schedulable utilization bound with 25 subtasks [24] , and hence, can ensure that the processors have no deadline miss due to fact that they always have fewer than 25 subtasks; and 2) we let all processors have the same set point so that it is easier to observe whether their utilizations can converge to the set point when we present the results of all processors in the same figure later. All (sub)tasks meet their (sub)deadlines if the desired utilization on every processor is enforced. The sampling period of the utilization control service is T s ¼ 5 seconds.

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


A Map-Reduce-enabled SOLAP cube for large-scale remotely sensed data aggregation Spatial On-Line Analytical Processing (SOLAP) is a powerful decision support systems tool for exploring the multidimensional perspective of spatial data. In recent years, remotely sensed data have been integrated into SOLAP cubes, and this improvement has advantages in spatio-temporal analysis for environment monitoring. However, the performance of aggregations in SOLAP still faces a considerable challenge from the large-scale dataset generated by Earth observation. From the perspective of data parallelism, a tile-based SOLAP cube model, the so-called Tile Cube, is presented in this paper. The novel model implements Roll-Up/Drill-Across operations in the SOLAP environment based on Map-Reduce, a popular data-intensive computing paradigm, and improves the throughput and scalability of raster aggregation. Therefore, the long time-series, wide-range and multi-view analysis of remotely sensed data can be processed in a short time. The Tile Cube prototype was built on Hadoop/Hbase, and drought monitoring is used as an example to illustrate the aggregations in the model. The performance testing indicated the model can be scaled along with both the data growth and node growth. It is applicable and natural to integrate the SOLAP cube with Map-Reduce. Factors that influence the performance are also discussed, and the balance of them will be considered in future works to make full use of data locality for model optimisation. Fields describes physical phenomena that changes continuously in time and/or space (Vaisman and Zimányi, 2009 ). Raster is the most popular field data model, and other examples include Voronoi diagrams and Triangulated Irregular Network (TIN). As the typical data structure of remotely sensed data, raster divides the world into a regular grid of cells and assigns attributes to the cells (Longley et al., 2001) . In recent years, some efforts have been made to integrate field data into spatial On-Line Analytical Processing (OLAP) models, a paradigm aimed at exploring spatial data by drilling on maps, in the same way as OLAP operates over tables and charts (Bédard et al., 2007; Ahmed and Miquel, 2005; Bimonte et al., 2010a; Gómez et al., 2010a) . Those works regard the discrete field data as measures and employ Map Algebra (MA) /Multidimensional Map Algebra (MMA) to achieve the spatio-temporal aggregations. MA (Tomlin, 1991 ) is a powerful language tool for spatial modelling and can be classified as Local, Focal and Zonal functions. MMA extends the conventional map algebra and enables it to handle spatio-temporal situations (Mennis et al., 2005) . Mennis also indicates that large-scale data puts heavy pressure on the efficiency of MMA. The aggregations are the basic computation of SOLAP (Spatial OLAP) when performing multidimensional analysis (Zhang, 2006; Lopez et al., 2005) , and thus, aggregation performance directly affects the efficiency of SOLAP.. On the other hand, the incorporation of the latest-generation sensors for Earth observation has produced the data-intensiveness problems (Lee et al., 2011 ) that exert heavy pressure on the efficiency of SOLAP, especially for spatio-temporal aggregation. Apart from optimised MA/MMA algorithms (Mennis, 2010) , using the technologies of distributed/parallel/GPU-accelerated computing to improve MA/MMA is also a potential way to accelerate the aggregation (Shrestha et al., 2006; Zhang et al., 2010; Xie et al., 2012) . However, the scalability and fault tolerance of the computing paradigm these works are based on still face challenges in regard to large-scale data.. Map-Reduce (M-R), proposed by Google, is a data-intensive computing paradigm that combines the ideas of data locality and data parallelism (Dean and Ghemawat, 2004) for massive data. The systems based on this paradigm can be scaled to thousands of commodity machines (White, 2009) . Considering the advantages of M-R, combining OLAP and this paradigm has led to a new research topic for big data analysis (Nandi et al., 2011; Abelló et al., 2011) . To benefit from the M-R computing paradigm also in the context of SOLAP for raster, a tile-based SOLAP cube model, the so-called Tile Cube, is proposed in this paper. The main contribution of Tile Cube is an M-R approach to perform Roll-Up/DrillAcross operations in the SOLAP environment to improve the throughput and scalability of raster aggregation. The model is implemented on top of Hadoop (http://hadoop.apache.org) and HBase (http://hbase.apache.org), and the complexity of the distribution is encapsulated by the elegant and simple interfaces.. The reminder of this paper is organised as follows. Section 2 recalls the fundamentals of raster SOLAP and M-R. Our model concept and different aggregations in the model are proposed in Section 3. Section 4 presents the Tile Cube implementation in the Hadoop/HBase environment and Section 5 describes the performance testing. Then, related works are presented in Section 6. Finally, Section 7 concludes with a discussion of on-going research. SOLAP is considered a useful approach for exploiting long-time spatial information. However, the remotely sensed data aggregation in SOLAP faces large data challenges, which limits the usage of this technology. Data-intensive scientific computing, which is considered as a "fourth paradigm" (Hey et al., 2009) , has great potential to address such challenges using distributed computing paradigm, such as Map-Reduce. This research combines the analysis ability of SOLAP and the computing power of Map-Reduce, and thus, the long timeseries, wide-range and multi-view queries on remotely sensed data can be responded to in a short time. The model has been used in the Water Information Centre, Ministry of Water Resources, China, for drought monitoring.. To make full use of M-R in SOLAP, several influencing factors, such as network traffic patterns and computational complexity, should be considered in a balanced way for the specific aggregation. In addition, the implementation of the Multi-Dimensional Expressions (MDX) query language based on the Tile Cube is also listed in our future work to support more SOLAP operations and simple data mining. Within the past few years, M-R-based systems have been adopted for large-scale, interactive data querying (e.g., OLAP). In 2009, the Apache Hive is proposed for providing data summarisation, query, and analysis as a typical data warehouse built on top of Hadoop (Hive, 2013) . Instead of building a generic data warehouse as Hive does, Cheetah is designed to allow various custom features and optimisations ranging from schema design and query language (Chen, 2010) . In order to reduce the interactive query latency by Hadoop, some practitioners have begun to build low-latency OLAP with HBase (Lehene, 2012; HBase-Lattice, 2014 ). Abelló has also explored the possibility of using Bigtable to store historical data and M-R as an agile mechanism to deploy cubes in ad-hoc Data Marts (Abelló et al., 2011) . Moreover, a few researchers have begun to address the efficient issues on M-R approaches of cube aggregation. For example, Lee proposed an M-R-based algorithm for top-down OLAP cube computation, which reduces the number of data scans by pipelining the processing (Lee et al., 2012) . In particular, Nandi addressed the parallelism problem of holistic measures of cube materialisation over M-R (Nandi et al., 2011) . Unfortunately, these works were not designed for spatial OLAP, and thus, the spatial dimension, spatial measure and map algebra functions are not supported.. The aggregations in field/raster SOLAP are usually implemented by MA/MMA. In recent years, some high-performance computing technologies have been used to extend MA/MMA for improving the throughput and efficiency. For example, Shrestha has implemented parallel temporal map algebra using MatlabMPI for vegetation index composition (Shrestha et al., 2006 ). The GeoRaster model in the Oracle Database is being presently extended by map algebra in a parallel model (Xie et al., 2012) . The parallel raster database Rasdaman has provided SQL-liked operations but based on array algebra (Rasdaman database, 2013). However, the scalability and fault tolerance of these methods have been limited by the traditional high-performance computing paradigm in regard to large-scale data. Raster has natural data parallelism and lots of researchers aimed at employing M-R to accelerate remotely sensed data handling. A 1D ray-tracing algorithm was extended by M-R, which effectively decreases computational effort and improves accuracy (Mohammadzaheri et al., 2013) . The real-time gridding of AIRS data implemented over M-R shows its considerable efficiency (Golpayegani and Halem, 2009) . Nevertheless, the literature on M-R-enabled MA/MMA available in the form of academic publications is limited. Given the above, our work takes full advantage of the power of both M-R and SOLAP to improve the throughput and scalability of remotely sensed data aggregation.

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


Unidentifiable Divergence Times in Rates-across-Sites Models The rates-across-sites assumption in phylogenetic inference posits that the rate matrix governing the Markovian evolution of a character on an edge of the putative phylogenetic tree is the product of a character-specific scale factor and a rate matrix that is particular to that edge. Thus, evolution follows basically the same process for all characters, except that it occurs faster for some characters than others. To allow estimation of tree topologies and edge lengths for such models, it is commonly assumed that the scale factors are not arbitrary unknown constants, but rather unobserved, independent, identically distributed draws from a member of some parametric family of distributions. A popular choice is the gamma family. We consider an example of a clock-like tree with three taxa, one unknown edge length, a known root state, and a parametric family of scale factor distributions that contains the gamma family. This model has the property that, for a generic choice of unknown edge length and scale factor distribution, there is another edge length and scale factor distribution which generates data with exactly the same distribution, so that even with infinitely many data it will be typically impossible to make correct inferences about the unknown edge length. BEGINNING with the germinal work [2] , statistically-based estimations of phylogenetic trees have become popular in molecular systematics, with Bayesian [7] and maximum likelihood methods [4] , [10] , [13] , [14] , [21] used with increasing frequency. Such statistically-based methods assume that the observed sequences are the result of a stochastic process that has operated on a tree and they make assumptions about the stochastic process (that is, model) that has produced the data.. A fundamental question about any statistical model is whether it is identifiable, that is, whether different parameter values lead to different probability distributions for the data, so that, in particular, there is some hope of estimating the parameters with increasing accuracy as the amount of data increases. These questions have been investigated extensively for certain models used in phylogenetic inference (see, for example, [1] , [20] ).. Many models used in phylogenetic inference combine a (typically parameter rich) model of individual site evolution with the assumption that the different sites evolve under a rates-acrosssites model, so that each site c has an associated rate of evolution r c which is constant across the tree. Thus, sites evolve under essentially the same evolutionary process and are just scaled up (or down) versions of each other. (Thus, the rates-across-sites assumption implies that if one site is expected to evolve twice as fast as another site on edge e, then it is expected to evolve twice as fast as the other site on every edge.) Such rates-across-sites models, in which each character has its own unknown scale factor, are discussed in [17] , but these models still pose difficult inferential problems. As remarked in [3, Chapter 13] :. As the number of sites increases, the number of parameters being estimated rises correspondingly. This is worrisome: in such "infinitely many parameters" cases maximum likelihood often misbehaves and fails to converge to the correct tree as the number of sites increases. Indeed, our own example below shows that relative edgelengths are, in general, unidentifiable for such models. (We discuss a situation in which the unknown scale parameters for the respective characters are unobserved, independent, identically distributed realizations of some distribution belonging to a particular family of distributions. However, if edge-lengths are not identifiable in our set-up, then they certainly will not be identifiable in the analogous set-up where the scale parameters are arbitrary.). A popular "fix" that has been proposed for this problem is to adopt a random effects approach and suppose that the successive scale factors r c are unobserved, independent random draws from a member of some parametric family of distributions. This reduces the dimensionality of the problem by replacing the deterministic sequence of r c parameters with the small number of parameters that describe the generating distribution (see, for example, [6] , [11] , [12] , [23] , [24] ).. A standard choice of distribution for the random scale factors is the two-parameter family of gamma distributions. This family has the mathematical advantage that likelihoods still have analytically tractable closed forms and it was shown for a wide class of substitution models in [16] that edge-lengths are identifiable in this setting. The choice of the gamma family is often supported by claims that it is sufficiently flexible to mimic the variation of rates between characters that is likely to be seen "in practice." There also appears to be a general sense among many practitioners that the choice of distributional family for the scale factors is primarily a matter of convenience and that, provided the family is rich enough, substantially correct inferences of relative edge-lengths will be possible with sufficient data. To our knowledge, there is no argument in any setting justifying why an assumption of an exact gamma distribution for the scale factors is biologically reasonable. As remarked in [3] :. There is nothing about the gamma distribution that makes it more biologically realistic than any other distribution, such as the lognormal. It is used because of its mathematical tractability.. It was shown in [19] that the use of random scale factors might not be completely without problems. In their paper, they gave an example of a specific choice of edge-lengths for each tree topology and a specific choice of discrete distribution for the scale factors (rather than a continuous distribution such as a gamma) such that the resulting distribution for the data under the Neyman two-state model is the same for all tree topologies.. In this paper, we go further, at least in some directions. We consider a rooted tree with three taxa and one unknown edgelength (with the remaining edge-lengths either known or fixed by the clock-like constraint that all lineages have the same total length) and a particular nine-parameter family F of scale factor distributions with a certain eight-parameter subfamily G of F . We show that for a generic choice of unknown edge-length and model in G 2 G, there is a choice of edge-length 6 ¼ and model in F 2 F with the property that data generated according to the Neyman two-state model with known ancestral state, scale factor distributed according to G, and edge-length , has the same distribution as data generated according to a Neyman two-state model with the same ancestral state, scale factor distributed according to F , and edgelength . Thus, even with infinitely many data, it would be impossible to decide whether the unknown edge-length is oreven if one somehow knew in advance that the distribution for the scale parameter was one of either F or G. Here, the term generic means that the set of exceptional models G and edge-lengths for which no corresponding F and exist is a lower dimensional subset of G Â IR þ . In particular, the set of G and that has corresponding F and is an everywhere dense open subset of G Â IR þ . Moreover, the family F consists of distributions with smooth, unimodal densities that possess moments of all orders. In this sense, each distribution in F is as "nice" as a gamma distribution. Of course, the two-parameter family of gamma distributions is simpler than the nine-parameter family F . However, the use of F is essentially a technical device in our analysis. We could have described our results by simply saying that for a generic unknown edge-length , there is a corresponding edge-length 6 ¼ and two scale parameter distributions G and F , such that data generated according to the Neyman two-state model with known ancestral state, scale factor distributed according to G, and edge-length has the same distribution as data generated according to a Neyman two-state model with the same ancestral state, scale factor distributed according to F , and edge-length . In particular, unidentifiability is not inherently a case of "over-parametrization": The effect can be produced when we have just a finite number of possible parameter values and is not produced by having a continuous space of possible parameter values with too high a dimension. We have included the mention of the families F and G in the description of our results to stress that the unidentifiability problem is, in some sense, generic.. The family G (and, hence, F ) contains all the gamma distributions as a subfamily. Any gamma distribution and any edge-length t will have a distribution G 2 G and arbitrarily close to them such that there is a corresponding F 2 F and 6 ¼ as above.. Our example applies not only to the Neyman model, but also to any model, such as the binary General Time-Reversible model, that contains the Neyman model as a submodel. Furthermore, our example applies to the General Time-Reversible on an arbitrary finite state-space because one can choose the substitution rate matrices for such a model to be sufficiently symmetric, so that a suitable many-to-one binary encoding of the model is Markovian and evolves according to the Neyman model.. We should point out that we construct our example using a perturbative technique. Consequently, the edge-lengths and that arise will be "close" to each other. However, our analysis does not rule out the possibility that a similar example could be produced with edge-lengths that are "far apart." In order to fully assess the practical implications of the phenomenon we have observed, further research is necessary to quantify just how distant two edge-lengths can be and still have corresponding scale parameter distributions that lead to identical distributions for the data. Moreover, this is not a purely mathematical question because the notions of "close" and "far apart" are dependent on the scientific question being investigated with a particular data set.. Also, we note that if we actually knew the distribution of the scale parameter in our three taxa example, then the unknown edge-length could be recovered uniquely from the distribution of the data, and this is so for an arbitrary scale parameter distribution, not just the ones we consider in this paper. Moreover, the functional that recovers the unknown edge-length is continuous in the scale parameter distribution when one equips the space of distributions with the usual topology of weak convergence. This suggests that if we somehow knew the scale parameter distribution up to some small error, then this would constrain the errors we could make in determining the edge-length. However, it is not clear how well one can identify the relevant features of the scale parameter distribution: The functional that recovers the unknown edge-length depends on the functional inverse of the Laplace transform of the scale parameter distribution and, hence, a priori, on the entirety of the distribution rather than some finite dimensional set of features, such as the first few moments, and so there is an apparent need to estimate the whole distribution quite well. Once again, this is not solely a theoretical matter and the extent to which this continuity observation is relevant will depend partly on context.. The rest of the paper is organized as follows: We begin with an introduction of the mathematical terms in Section 2 and we present our example in Section 3. We conclude with a discussion of the ramifications of this result and directions for future research in Section 4.

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


Fast tracking of near-duplicate keyframes in broadcast domain with transitivity propagation The identification of near-duplicate keyframe (NDK) pairs is a useful task for a variety of applications such as news story threading and content-based video search. In this paper, we propose a novel approach for the discovery and tracking of NDK pairs and threads in the broadcast domain. The detection of NDKs in a large data set is a challenging task due to the fact that when the data set increases linearly, the computational cost increases in a quadratic speed, and so does the number of false alarms. This paper explores the symmetric and transitive nature of near-duplicate for the effective detection and fast tracking of NDK pairs based upon the matching of local keypoints in frames. In the detection phase, we propose a robust measure, namely pattern entropy (PE), to measure the coherency of symmetric keypoint matching across the space of two keyframes. This measure is shown to be effective in discovering the NDK identity of a frame. In the tracking phase, the NDK pairs and threads are rapidly propagated and linked with transitivity without the need of detection. This step ends up with a significant boost in speed efficiency. We evaluate our proposed approach against a month of the TRECVID-2004 broadcast videos. The experimental results indicate that our approach outperforms other techniques in terms of recall and precision with a large margin. In addition, by considering the transitivity and the underlying distribution of NDK pairs along time span, a speed-up of 3 to 5 times is achieved when keeping the performance close enough to the optimal one obtained by exhaustive evaluation. Near-duplicate keyframes (NDKs) are a group of keyframes that are similar or nearly duplicate of each other, but appear differently due to variations introduced during acquisition time, lens setting, lighting condition and editing operation. Figure 1 shows four pairs of NDKs undergone various changes. Previous studies in [5, 15] have demonstrated the difficulty of NDK retrieval, where the use of simple and global features such as color histogram can lead to poor performance. In this paper, we investigate a more challenging problem: the automatic and fast discovery of NDK pairs and NDK threads without any prior knowledge of the underlying data set (except knowing the videos are from the broadcast domain). Figure 2 illustrates the difficulty of our task. Given a set of keyframes, our goal is to find the groups of NDK pairs which link up each other to form separate threads. In this figure, there are three threads of NDK groups (linked by blue, red and green arrows). To detect these threads, a straightforward approach is to exhaustively evaluate all pairs of available keyframes. Basically two keyframes with similar content are paired up, and subsequently the groups of NDK pairs are formed to become threads. However, finding a pair of NDKs is indeed a difficult task. Take a dataset of 7, 000 keyframes as an example. There are more than 24 millions of candidate pairs for comparison. Suppose among them 3, 000 pairs are near-duplicates. The chance of successfully drawing one NDK pair is only 1.22e −4 . Compared with NDK retrieval [5, 15] , the automatic discovery problem is challenging since there is no query to start with. Compared with keyframe clustering, the problem appears com-plicated since the number of non near-duplicate keyframes (outliers) is much more than the near-duplicate ones. With a large portion of data being outliers, clustering algorithms can become highly ineffective.. The findings of recent works in [5, 15] coincidentally conclude that local keypoints [6] , compared with color features, are robust for NDK retrieval. A reliable measure is to match keypoints across two frames, then count the number of matching point-pairs as the similarity [5] . The cost, however, is the time spent in keypoint matching. In a keyframe of resolution 352 × 264, the number of keypoints typically ranges from a few to several thousands. Comparing two keyframes each of 1, 000 keypoints involves up to half a million of keypoint matchings. As a consequence, the problem of NDK discovery becomes unaffordable in terms of time and difficulty, due to the large amount candidate pairs at both keyframe and keypoint levels.. In this paper, we propose a novel approach to solve the discovery problem. The symmetric and transitive properties of near-duplicate are explored for this purpose. At the keypoint level, NDK pairs are detected by a reliable keypoint matching algorithm. While at the keyframe level, the NDK threads are rapidly propagated along the time span without going through the detection phase. The novelty of our approach lies in the proposal of pattern entropy to depict keypoint matching for NDK detection, while transitivity propagation is incorporated for fast tracking of keyframes. The contributions of this paper are summarized as follows.. • Matching strategy. Based on the symmetric property of NDK, we propose a one-to-one symmetric (OOS) keypoint matching strategy to reliable match keypoints across frames. In addition, an index structure LIP-IS is proposed to support the fast filtering of keypoints under OOS matching. The effectiveness of keypoint matching has also been demonstrated for keyframe retrieval and high-level concept classification in our recent work [16] .. • Matching pattern. The matching patterns of NDK pairs formed by OOS keypoint mapping are investigated. Due to the nature of near-duplicate, the matched lines between keypoints often show patterns that are coherently matched in space. We explore this fact by evaluating the spatial coherence of patterns in both horizontal and vertical directions with a novel measure called pattern entropy (PE). The potential of PE is confirmed with our empirical evaluation on a month of TRECVID videos.. • Keyframe tracking. Exhaustive detection of NDK pairs is time consuming. By observing the transitivity property and the underlying distribution of NDK pairs, we propose to efficiently propagate NDK pairs and their threads without detailed investigation. The performance of propagation can be close to the optimal one obtained by the exhaustive approach.. The remaining of this paper is organized as follows. Section 2 describes the existing approaches in near-duplicate retrieval and detection. Section 3 gives an overview of our proposed framework and approach. Section 4 presents our proposed keypoint matching strategy and filtering algorithm. Section 5 proposes the measure of pattern entropy to evaluate the patterns formed by keypoint matching. Section 6 discusses the transitivity propagation of NDK. Section 7 describes the NDK retrieval experiments, while Section 8 presents the experimental results on the discovery of NDK pairs and threads with transitivity propagation. Finally, Section 9 concludes this paper. Recently, NDK identification has attracted numerous research attentions, mainly due to its unique role in news search [2] , topic detection and tracking (TDT) [14] and copyright infringement detection [5] . NDKs are commonly found in broadcast videos. In TDT, NDKs provide a strong cue to link and track topic-relevant news stories across sources, languages and times. The recent work in [2] has also demonstrated the usefulness of NDKs in boosting the performance of interactive multimedia search.. The issues of duplicate and near-duplicate detection have also been addressed in image fingerprinting literature [1, 7, 11, 12] . The ultimate aim is to identify the content (or specifically fingerprint) by the image itself based on its own low-level features for retrieving the suspicious pirated copies of the image for human inspection. Our proposed work is different from image fingerprinting in two aspects. First, we use locally salient features [4, 6] to depict a keyframe content, while others [1, 7, 11, 12] mostly employ the global or local statistics of features (e.g., color) and concatenate them into a vector for retrieval. The use of single feature vector, nevertheless, tends to generate many false positives and negatives. Local features based upon keypoints, in contrast, are tolerant to the perturbation of lighting, color and certain transformations, despite the fact that additional computational cost is incurred for the need of point set matching. Second, the problem nature is different for image fingerprinting and NDK detection in the broadcast domain. The former is to identify suspicious candidates for human inspection, while the latter is to identify keyframes that nearly duplicate each other but span across the time axis and various broadcast sources.. Representative works in NDK identification include [3, 5, 15] . In [3] , NDKs (or Candidate Repeating Keyframes) are detected by ordering and examining the N neighbors of a keyframe. A "jump" indicator is used to detect NDKs by investigating the first derivation of keyframe similarity. This approach is heuristic and sensitive to the setting of several empirical parameters. In [15] , a stochastic attributed relational graph (ARG) matching with part-based representation is proposed for NDK identification. Under this setting, ARG is a fully connected graph with SUSAN detected keypoints as vertices, and the matching of ARGs is constrained by the spatial relation imposed by keypoints. For speed reason, a distribution-based similarity model is learnt for NDK identification. Although interesting, the approach in [15] suffers from the limitations of slow matching speed and the requirement of heuristic parameters for learning.. In contrast to [15] , the PCA-SIFT descriptors of keypoints are utilized in [5] for direct point set matching without learning. To accelerate matching speed, an efficient index structure based on locality sensitive hashing (LSH) is further proposed. Nevertheless, LSH requires several user-defined parameters which have an effect on the distortion and granularity of the search.. In this paper, as in [5] , we adopt direct keypoint matching, and utilize an index structure LIP-IS, which is shown to be empirically more reliable than LSH, for fast filtering. For NDK detection, instead of basing on the number of matched keypoints [5] or a learned model [15] , we explore the pattern of keypoint matching with an entropy measure which is demonstrated to be highly effective without the need of learning.

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


Robot coordination using task-priority and sliding-mode techniques Gracia Calandin, LI.; Sala Piqueras, A.; Garelli, F. (2014) In this work, an approach based on task-priority redundancy resolution and sliding mode ideas is proposed for robot coordination. In particular, equality and inequality constraints representing the coordination of the multi-robot system are considered as mandatory (for instance, rigid-body manipulation constraints to distance between the end-effectors of several robot arms, or other inequality constraints guaranteeing safe operation of a robotic swarm or confining the robot's workspace to avoid collision and joint limits). Besides the mandatory constraints, other constraints with lower priority are considered for the tracking of the workspace reference and to achieve secondary goals. Thus, lower-priority constraints are satisfied only in the null space of the higher-priority ones. The fulfillment of the constraints is achieved using geometric invariance and sliding mode control theory. The validity and effectiveness of the proposed approach is substantiated by 2D and 3D simulation results using two 3R planar robots and two 6R PUMA-762 robots, respectively. Research topics for multi-robot systems (MRSs) [1] , also known as distributed [2] or cooperative [3] or multi-agent [4] robotic systems, have significantly increased in recent years: biological inspirations, robotic swarms, object transport and manipulation, reconfigurable robots, communication and architectures, reactivity and social deliberation, motion coordination, etc. In general, a team of robots provide redundancy and contribute cooperatively to solve the task for which they were conceived in a more reliable or faster way than what is possible with a single robot.. Coordination is an important issue in robotics and integrated manufacturing systems [5, 6, 7] . Typically, robot coordination [8] can be expressed in terms of equality and inequality constraints. These constraints could be attempted to be solved analytically, but in most cases a closed-form solution to the problem is not possible, specially if inequality constraints are present.. This work is focused on robot coordination within the context of MRSs. In order to fulfill equality and inequality constraints, or reaching such feasible regions in finite time if not initially in them, sliding-mode (SM) control theory has been used in literature [9, 10] , in particular geometric-invariance approaches [11] . Previous work by the authors discusses how sliding-mode geometric invariance can be used to solve some problems in single-robot systems [12, 13, 14] , while the third author has preliminarily evaluated its effectiveness for the coordination of single scalar realizable references commanding input-constrained dynamical systems [15, 16] . The objective of this work is generalizing the above ideas to deal with MRSs as well as incorporating constraint prioritization situations. Other ways to tackle constraint-satisfaction and coordination problems in robotic systems are artificial intelligence [17] , neural networks [18] , fuzzy logic [19] , genetic algorithms [20] , etc.. This paper proposes a solution to the coordination problem based on taskpriority redundancy resolution [21] and sliding mode (SM) control theory. The basic idea is to define mandatory constraints for the MRS in order to satisfy them via SM conditioning [22] . For this purpose, a coordination supervisor, which is aware of the configuration of each robot, generates the commanded joint accelerations to be sent to the joint controllers of the robots (which are controlled independently using their own control architecture) so that the constraints are fulfilled and that the reference tracking error is made as small as possible. The proposed method only requires a few program lines, has a short computation time and simplifies the user interface since the method directly deals with the fulfillment of the constraints specified by the robot end-user. However, since the proposed approach does not include high-level planning, other more sophisticated solutions in the literature for robot coordination [17, 18, 19] could lead to a better performance in certain cases, e.g., when facing trap situations [12] , at the expense, however, of a much higher computational cost.. The structure of the paper is as follows. Next section introduces some preliminaries and notation, while Section 3 states the main problem to be addressed. Next, Section 4 presents the basic theory used in this work. The proposed method for robot coordination is developed in Section 5, while some important remarks about the method are given in Section 6. The proposed approach is applied in Section 7 and Section 8 to the model of two threerevolute (3R) planar robots and two 6R PUMA-762 robots, respectively, in order to show its feasibility and effectiveness. Finally, some concluding remarks are given. We are interested in exploiting the task-priority based redundancy resolution and the geometric invariance setups described in the previous section to address the problem stated in Section 3.1.. It is important to remark that, in general, the number of priority levels and the constraints considered in each level can be freely chosen by the MRS end-user. In particular, three priority levels are considered in this section 4 , see Fig. 2 .. The first level includes the mandatory constraints whose violation would result in collisions, invasion of forbidden space, breaking a transported ob-ject, etc. The second priority level includes the constraints related with the tracking of a reference trajectory by the MRS: deviations from the planned trajectory are allowed if such deviations are needed to enforce the highpriority constraints. Finally, the third priority level, which is the one with the lowest priority, is considered to achieve a tertiary goal (for instance, minimizing joint speeds, as later proposed) using the remaining degrees of freedom of the MRS, if any. Following the notation in (9), we will assume constraints are suitably grouped into φ 1,i , φ 2,i , φ 3,i for each of the three levels.. In an abstract setting, the input to the the priority levels (Fig. 2) is the state {q,q} of the MRS and each level gives an acceleration equality A iqc = b i (12) whose square error must be minimized. These acceleration equalities are obtained using the geometric invariance theory presented Section 4.2, in order to fulfill the corresponding constraints. The commanded joint acceleration vectorq c is determined by the task-priority redundancy resolution block, where (13) is implemented, and serves as input to the joint controllers of the robots. An approach for robot coordination was developed using task-priority and sliding mode related concepts. In particular, the proposal is based on defining mandatory constraints representing the coordination of the multirobot system, non-mandatory reference tracking ones and third-level goals. Sliding mode conditioning was proposed to ensure the satisfaction of the constraints, at different levels, using joint acceleration (or jerk, if so wished) as control input. If the model is known, lower level constraints can be also satisfied via model inversion.. The pseudo-code of the proposed approach appears in the Appendix, which simplifies the robot user interface since the method directly deals with the fulfillment of the constraints. Although the method was illustrated for two particular multi-robot systems (two 3R planar robots and two 6R PUMA-762 robots), the conclusions drawn for the proposed approach also apply to other settings.

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


Image Retargeting Using Mesh Parametrization Abstract-Image retargeting aims to adapt images to displays of small sizes and different aspect ratios. Effective retargeting requires emphasizing the important content while retaining surrounding context with minimal visual distortion. In this paper, we present such an effective image retargeting method using saliency-based mesh parametrization. Our method first constructs a mesh image representation that is consistent with the underlying image structures. Such a mesh representation enables easy preservation of image structures during retargeting since it captures underlying image structures. Based on this mesh representation, we formulate the problem of retargeting an image to a desired size as a constrained image mesh parametrization problem that aims at finding a homomorphous target mesh with desired size. Specifically, to emphasize salient objects and minimize visual distortion, we associate image saliency into the image mesh and regard image structure as constraints for mesh parametrization. Through a stretch-based mesh parametrization process we obtain the homomorphous target mesh, which is then used to render the target image by texture mapping. The effectiveness of our algorithm is demonstrated by experiments. The problem of retargeting images to small screens has been considered by many researchers. Almost all image browsers on small-screen devices provide scaling functionality. A large image is uniformly downsampled to fit the target screens. Important objects in the image are often small and difficult to identify. To account for different aspect ratios, either the distortion caused by aspect ratio change is introduced or black letter box is used to fill in the blank space, thus wasting the precious space.. Many methods identify an important region in the image and crop this region to fit target screen. These methods usually rely on image analysis, such as attention model extraction and object detection, to identify the important region [3] , [7] - [9] , [17] . Eye-tracking systems can also be used to infer the important region [21] . After obtaining the important region, it is cropped out [3] , [21] , [25] . These cropping-based retargeting methods can effectively preserve important information of the original image, at the expense of losing valuable context information. Moreover, their performance is dependent on the accuracy of important region detection. Alternatively, when multiple important objects are identified, a tour on the image can be created by jumping through each object [10] , [16] . While this scheme is effective in some situations, it is infeasible when viewer must examine many images within limited time.. Recently, Liu and Gleicher [12] presented a fish-eye view warping scheme to achieve the goal of emphasizing the important region while retaining the surrounding context. This method can effectively achieve the focus+context view of the original image. However, it creates noticeable distortion, especially in the contextual region. Setlur et al. [24] proposed to segment the prominent objects and to re-compose them onto resized background. This method can achieve focus+context at the minimal distortion. However, the performance is subject to that of image segmentation. In [13] , Gal et al. presented a Laplacian editing based texturing method that allows any image to be warped in a feature-aware manner. One difference between their method and the proposed approach is that they employ regular grid to represent input image, while we use triangular meshes. Using irregular triangular meshes enables a better approximation of structured edges, thus facilitating the preservation of them, especially for slant edges. A similar quad grids-based method is given by Wang et al. [14] , which computes the optimal target grids by distributing warping scales nonuniformly among grid lines according to image content. An efficient formulation for the nonlinear optimization, which allows interactive image resizing, has also been developed. Most recently, Avidan and Shamir [2] proposed a nice "seam carving" method for resizing images. Their method iteratively carves unnoticeable seams to reduce the image size. However, it often breaks image structures since the carving procedure only relies on low-level saliency information and fails to consider image structures.. Retargeting videos has also been considered [5] , [11] , [15] , [20] , [27] , [29] . For example, Fan et al. [5] used a visual attention model to find important regions, and provided automatic, semi-automatic and manual modes for users to select and zoom into these important regions while browsing. Liu and Gleicher [15] utilized cinematography rules and designed a video retargeting system to automate pan and scan operation. Both Setlur et al. [23] and Cheng et al. [4] proposed context re-composition for preserving salient information. These methods first segment salient objects based on the detected saliency prior. Then they fill in the holes left after object segmentation. Finally, they compose salient objects back onto the resized background video frames based on a set of aesthetic criteria. Wolf et al. introduced an optimization algorithm for nonhomogeneous video retargeting [29] . Considering spatial-temporal constraints, a perpixel discrete transformation that shrinks less important pixels is utilized to resize video sequences.

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


Hyperspectral Imagery: Clutter Adaptation in Anomaly Detection Abstract-Hyperspectral sensors are passive sensors that simultaneously record images for hundreds of contiguous and narrowly spaced regions of the electromagnetic spectrum. Each image corresponds to the same ground scene, thus creating a cube of images that contain both spatial and spectral information about the objects and backgrounds in the scene. In this paper, we present an adaptive anomaly detector designed assuming that the background clutter in the hyperspectral imagery is a three-dimensional Gauss-Markov random field. This model leads to an efficient and effective algorithm for discriminating man-made objects (the anomalies) in real hyperspectral imagery. The major focus of the paper is on the adaptive stage of the detector, i.e., the estimation of the Gauss-Markov random field parameters. We develop three methods: maximum-likelihood; least squares; and approximate maximum-likelihood. We study these approaches along three directions: estimation error performance, computational cost, and detection performance. In terms of estimation error, we derive the Cramér-Rao bounds and carry out Monte Carlo simulation studies that show that the three estimation procedures have similar performance when the fields are highly correlated, as is often the case with real hyperspectral imagery. The approximate maximum-likelihood method has a clear advantage from the computational point of view. Finally, we test extensively with real hyperspectral imagery the adaptive anomaly detector incorporating either the least squares or the approximate maximum-likelihood estimators. Its performance compares very favorably with that of the RX algorithm, an alternative detector commonly used with multispectral data, while reducing by up to an order of magnitude the associated computational cost.Index Terms-Anomaly detection, Cramér-Rao bounds, GaussMarkov random field, hyperspectral imagery, least squares, maximum likelihood, multispectral imagery, ultraspectral imagery.

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


System simulation of mixed-signal multi-domain microsystems with piecewise linear models Abstract-We present a component-based multi-level mixed-signal design and simulation environment for microsystems spanning the domains of electronics, mechanics, and optics. The environment provides a solution to the problem of accurate modeling and simulation of multi-domain devices at the system level. This is achieved by partitioning the system into components that are modeled by analytic expressions. These expressions are reduced via linearization into regions of operation for each element of the component and solved with modified nodal analysis in the frequency domain, which guarantees convergence. Feedback among components is managed by a discrete event simulator sending composite signals between components. For electrical, and mechanical components, interaction is via physical connectivity while optical signals are modeled using complex scalar wavefronts, providing the accuracy necessary to model micro-optical components. Simulation speed vs. simulation accuracy can be tuned by controlling the granularity of the regions of operation of the devices, sample density of the optical wavefronts, or the time steps of the discrete event simulator. The methodology is specifically optimized for loosely coupled systems of complex components such as are found in multi-domain microsystems.Index Terms-Behavioral modeling, microelectromechanical (MEM) simulation, mixed-signal multi-domain (MSMD) simulation, modified nodal analysis (MNA), piecewise-linear (PWL) simulation, system simulation of microsystems. T HE development of an integrated design environment for mixed-signal multi-domain (MSMD) microsystems is motivated by a convergence of new integration techniques for optical, mechanical, and electronic devices and by consumer demand for system applications that require new functionality, higher performance, and lower cost. Next generation systems will combine digital very large scale integration (VLSI) technologies with sensors, actuators, communication, and control devices incorporating analog electronics, optics, and mechanics into a single system design. Current examples of commercial MSMD microsystems include automotive air-bag controls, digital projectors, and optical network switches.. Design tools that work in a single domain such as digital CMOS have traditionally relied on abstraction to manage scale and complexity. However, in this abstraction methodology there is an underlying assumption of domain expertise on the part of the designer. In MSMD systems, there are few designers with expert-level knowledge across domains as varied as optics, mechanics, and electronics. Thus, MSMD design tools must both abstract detail and provide a consistent cross-domain modeling methodology that can be accessible to a designer with limited knowledge of a specific domain.. The creation of simulation tools for MSMD systems is also difficult because these systems span the physical domains of electronics, photonics, and mechanics, as well as multiple orders of magnitude in both time and length scales. The difficulties are compounded by the fact that computational performance and accuracy are directly related to the level of detail in the underlying models.. Two commercial tools for mixed-signal design and development are from Coventor [1] , based on Saber, and MEMSCAP [2] , based on the HDL-A language. Both of these tools provide simulation support for electrical and mechanical components with extensions for optical, RF, and fluidic devices. Coventor's CoventorWare software suite also provides physics-based FEM/BEM simulation of components for detailed analysis and extraction for some macro-component models.. However, creating a complete design flow for MSMD systems still presents numerous challenges. Simulators must use consistent modeling methodologies across domains and between abstraction levels and also must exhibit fast yet accurate simulation at the behavioral and system levels. Furthermore, design flows typically depend on extraction from the physical level to the behavioral level via multiple runs of finite element or boundary element solvers. There is also a scarcity of synthesis methods, typically based on simple library model composition. Finally, there is a critical lack of metrology and validation of device, component, and system models.. In this paper, we address the first two of these concerns: a consistent modeling methodology across domains and fast yet accurate behavioral simulation models that span multiple domains. We focus on the three domains of optics, electronics, and 0278-0070/03$17.00 © 2003 IEEE mechanics, with an understanding that this methodology could be extended to other domains. The results presented here have been implemented in an MSMD modeling and simulation environment described below.. We begin with a background of this environment with emphasis on system-level and behavioral-component models. We then present our piecewise linear (PWL) behavioral simulation methodology followed by a description of our modified nodal analysis-based (MNA) fast solver for electronic and mechanical models. Next, we describe our techniques for fast optical signal propagation. Finally, we present a system-level modeling example of a digital display that incorporates optical, mechanical, and electronic components and demonstrates the multi-domain integration of behavioral component models. We identify three levels of abstraction for an MSMD design environment: the system level, which is concerned with the ensemble performance of complete systems composed of black box parameterized components; the behavioral or component level, which captures the input/output transformations within multi-domain components with an abstract description; and the physical or device level, which models the same transformation as a result of the physical processes that underlie the operation of the device.

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


Skinning mesh animations We extend approaches for skinning characters to the general setting of skinning deformable mesh animations. We provide an automatic algorithm for generating progressive skinning approximations, that is particularly efficient for pseudo-articulated motions. Our contributions include the use of nonparametric mean shift clustering of high-dimensional mesh rotation sequences to automatically identify statistically relevant bones, and robust least squares methods to determine bone transformations, bone-vertex influence sets, and vertex weight values. We use a low-rank data reduction model defined in the undeformed mesh configuration to provide progressive convergence with a fixed number of bones. We show that the resulting skinned animations enable efficient hardware rendering, rest pose editing, and deformable collision detection. Finally, we present numerous examples where skins were automatically generated using a single set of parameter values. Animating articulated characters such as virtual humans is a fundamental operation in computer graphics and interactive applications. Techniques for rigging character skins by weighting vertices to an associated skeleton, or by interpolating example deformations, are widely used in video games and the computer animation industry. There are numerous reasons for their popularity: most skinning approaches are conceptually easy to understand and apply; they are capable of approximating interesting character shapes; and skinning can be hardware-accelerated on almost every commodity graphics card. However, the application of character skinning approaches has been almost entirely limited to objects with userdefined skeletons and rigid bones.. In this paper, we show that skinning techniques can also be used to automatically skin deformable mesh animations, without any need for specifying skeletons or bones. By estimating proxy bone transformations and vertex weights for deformable shape sequences, we produce skinned animations that approximate the original deformable animation. Note that we do not estimate a hierarchical kinematic skeleton, nor are there reconfigurable joint angles. Skinned meshes provide an approximate articulated mapping from undeformed to deformed geometry at all animation frames, and we further encode displacement corrections to provide progressive convergence. The resulting skinned animations support hardware-accelerated rendering on commodity graphics hardware. We present several examples of mesh animations that can be compiled to run on existing graphics hardware, including interactive examples involving millions of animated mesh triangles (see Figure 1) . In addition to fast hardware rendering, skinned mesh animations provide a deformable shape parameterization that can aid subsequent processing: displacement mapping the skin's reference mesh results in modifications to the entire animation; the animation skin can be used for straight-forward level-of-detail (LOD) generation; and the skinned models define local reference frames that can be used to orient bounding volume hierarchies for reducedcoordinate collision detection algorithms [James and Pai 2004] . In summary, we show that a simple animation skinning technique can provide a familiar hardware-accelerated rendering format for mesh animations, as well as enable efficient animation processing. We have presented an automatic method for constructing skinned mesh approximations to parametrically coherent mesh sequences.. Our experiments indicate that (a) mean shift clustering of triangle rotation sequences is a robust estimator of near-rigid mesh structure, and (b) nonrigid affine bone transformations combined with positive vertex weights (computed using nonnegative least squares (NNLS)) lead to accurate approximations for examples with sufficient near-rigid structure (e.g., η > 0.7). The resulting skinned models tend to avoid over-fitting, making their reconstructions stable under small displacement modifications introduced by progressive displacement corrections, SMA simplification, and rest pose editing. Finally, the method is well-suited to real-time hardware rendering of mesh animations of quasi-articulated phenomena, such as those shown in Figure 1 , and skinned animations can be used with output-sensitive collision detection methods for deformable models.. For completeness, we provide equations to estimate bone b's affine transform,T b = (F, v), for a given mesh sequence instance. We defineT as the transform that minimizes the triangle area-weighted sum over all core bone triangles, T b , of the squared position errors between transformed reference centroids,T bc , and the deformed centroids, c. Specifically, we minimize. where x, y = 1, 2, 3. Taking the derivatives of Φ w.r.t the 12 unknowns, F xy and v x , and setting each to zero, leads to 12 sparse equations in 12 unknowns, where z is summed over the three components. The (F, v) solution is the optimal flexible bone in an area-weighted least-squares sense. Results for our examples are summarized in Table 1 . Preprocess timings for are unoptimized, and were generated on an Intel PenExact Rank 0 NNLS Rank 1 NNLS tium 4 (2.0 GHz) processor with 1 GB RAM. Mean shift clustering clearly dominates all preprocess times, but is still under an hour in the worst case (ironically, the elephant example). Although the computational complexity of the approach is O(nSB) for n triangles, S frames, and B bones, the memory complexity is O(nS) for naïve in-core implementations, and can be inconvenient for large animations.. Animation compression is not our ultimate goal, however SMAs can provide compact approximations for quasi-articulated models. Results are shown in Figures 12 and 13 , and Table 1 .. Hardware implementation of SMAs is trivial given that any existing vertex program for matrix palette skinning can be used. Interactive performance can be achieved for very large scenes on an NVIDIA GeForce 6800 GT (see Figure 1) . Mesh levels of detail are produced using mesh simplification with additional vertex attributes [Garland and Heckbert 1998 ] for skinning weights, displacement corrections, PRT coefficients, etc. (see Figure 14) . Character skinning has a long history in graphics, and related techniques have been used extensively to provide intuitive animation controls. We refer the reader to the related work section of [Lewis et al. 2000 ] for a nice summary. Most closely related to our work are several "skinning by example" approaches, that use input character poses to generate approximate and/or progressive skinning approximations. A key difference is that our input mesh examples are not required to have any skeletons, nor associated bone transforms.. Pose space deformation [Lewis et al. 2000 ] comprises one such family of approaches wherein character shapes (or local frame corrections) are interpolated as a function of character pose (see also [Allen et al. 2002] ). For hardware rendering, EigenSkin is an approach for generating a compact pose space deformation model for complex shapes, such as a hand [Kry et al. 2002] . In that work, the reduced basis is generated by employing sensitivity analysis to move each joint in the hand independently, about a number of key hand poses, in order to infer the spatial structure of the hand displacement fields as a function of hand pose. A displacement correction model was then compressed in the rest pose to exploit redundancy. The resulting articulated reduced model included displacements and normals, and exhibited significant rank-reduction (much better than PCA on articulated data sets), but required a priori knowledge of joints and skinning weights. In comparison, our approach applies to general mesh animations as opposed to poseable articulated characters (see Figure 2 ). In contrast to pose space methods, simpler kinematic models, such as common linear blend skinning (c.f. single-weight enveloping (SWE), skeletal subspace deformation (SSD), etc.), can be fit to mesh examples, and do not require runtime data interpolation. Mohr and Gleicher [2003] estimated single-weight skins with rigid character bones, with provisions made for adding additional bones, and they also estimated vertex weights, but without nonnegativity constraints. Multi-weight enveloping (MWE) [Wang and Phillips 2002] provides better approximations than SWE, but at the cost of 12 weights/vertex/bone, instead of 1 weight/vertex/bone in SWE. Although we only use 1 weight/bone/vertex, our nonrigid affine bone transformations allow bones to squash and stretch to better approximate the mesh sequence. Like other approaches, MWE requires manual intervention to paint on bone influences, whereas our skin estimation approach is automatic.. Animation compression approaches have been explored in the last half decade [Lengyel 1999; Briceño et al. 2003; Guskov and Khodakovsky 2004] , including PCA compression of shapes [Sloan et al. 2001] , animations [Alexa and Müller 2000; Karni and Gotsman 2004] , and parameterized animation compression [Hakura et al. 2000] . The goal of our approach is not animation compression per se, but rather hardware-accelerated rendering using a very simple and common vertex shader technique called matrix palette skinning [Lindholm et al. 2001] . Our skinned mesh animations are intended to produce skinned approximations with a large number of bone transforms (to support efficient hardware rendering). Nevertheless, our approximations can be quite good (even without using our articulated data reduction), so that our animation compression is quite competitive. Nevertheless, incremental coding approaches, such as [Gupta et al. 2002; Ibarria and Rossignac 2003] , can be better suited to compression, and could be combined with our approach. Multi-resolution methods [Guskov and Khodakovsky 2004] provide powerful decorrelation tools, but involve multi-resolution mesh reparameterization that can be difficult for models with complex base domains, e.g., our high-genus bridge example.. Finally, special data structures exist for representing and displaying mesh animations [Shamir et al. 2000] , however for real-time rendering, the bottleneck is often data transfer to the graphics card. Our approach avoids this bottleneck by having a single-weighted mesh resident in graphics hardware, and only sending a few hundred floats of bone transforms to hardware each frame.

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