Routing in self-organizing nano-scale irregular networks The integration of novel nanotechnologies onto silicon platforms is likely to increase fabrication defects compared with traditional CMOS technologies. Furthermore, the number of nodes connected with these networks makes acquiring a global defect map impractical. As a result, on-chip networks will provide defect tolerance by self-organizing into irregular topologies. In this scenario, simple static routing algorithms based on regular physical topologies, such as meshes, will be inadequate. Additionally, previous routing approaches for irregular networks assume abundant resources and do not apply to this domain of resource-constrained self-organizing nano-scale networks. Consequently, routing algorithms that work in irregular networks with limited resources are needed.In this article, we explore routing for self-organizing nano-scale irregular networks in the context of a Self-Organizing SIMD Architecture (SOSA). Our approach trades configuration time and a small amount of storage for reduced communication latency. We augment an Euler path-based routing technique for trees to generate static shortest paths between certain pairs of nodes while remaining deadlock free. Simulations of several applications executing on SOSA show our proposed routing algorithm can reduce execution time by 8% to 30%. The trend toward increased functional capabilities on a single chip requires commensurate development of on-chip communication networks. These networks must provide reliable communication without requiring excessive resources. The incorporation of novel nanotechnologies (e.g., nanowires) emerges because the decreasing feature sizes may decrease control over the entire fabrication process (e.g., with self-assembly) and thus increase fabrication defects. As a result, it is increasingly difficult to reliably create interconnects and networks may become highly irregular.. Irregular networks present challenges for programming, system design (e.g., coherence protocols), and developing efficient routing algorithms, particularly for direct networks. It is difficult to map computation and data placement onto irregular topologies. One way to overcome this challenge is to overlay a more conventional regular topology (e.g., tree or ring) on the irregular network. Similarly, by providing the guarantees (e.g., ring ordering) of the overlay network, coherence protocol design can be simplified [Barroso and Dubois 1993; Marty and Hill 2006] .. Another challenge is to provide an efficient routing algorithm for a given irregular network. Previous approaches for routing on irregular networks assume the nodes are workstations or complete processors: an environment with abundant resources [Federico and Duato; Chi and Wu 2003 ]. As we move to the nano-scale domain, the resources dedicated to routing (e.g., routing tables) must be balanced against those required for computation (e.g., functional units, caches, etc.) [Bolotin et al. 2005 [Bolotin et al. , 2007 . In a nano-scale network consisting of thousands of nodes, each node has limited resources and many nodes must be grouped together to form a full computational unit. Great challenges are presented since the previous techniques may no longer apply in this environment (i.e., large routing tables are infeasible to simply connect one node to another).. In this article we explore routing for self-organizing nano-scale irregular networks. Our analysis is performed primarily in the context of SOSA [Patwardhan et al. 2006c ], a self-organizing nano-scale SIMD architecture, but is broadly applicable to any system that maps logical rings onto irregular networks. SOSA uses a one-time configuration process to organize the nano-scale irregular physical network into a regular physical network (a tree) by disabling certain links, and then maps a regular logical network (a ring) onto the regular physical network. The logical structure of the whole network is a large ring of processing elements and each processing element is a small ring of functional units, called nodes. There are two special nodes, head and tail, in each small ring where data packets enter or leave the processing element.. The head and tail nodes within a single processing element are logically adjacent but may be physically far apart. Operations that rely on the logical adjacency of the head and tail nodes in a ring (e.g., any operation requiring a round-trip of the ring) may incur significant latency due to the physical separation of the nodes. Therefore, we focus on reducing the physical path length between head and tail nodes.. Our approach trades configuration time and a little storage space to reduce communication latency. During the configuration process the shortest physical path between the pair of head and tail nodes in each processing element is discovered and appropriate information is stored within each node to inform routing decisions during execution. For the networks we examine, there is little difference in the head/tail shortest path on the irregular physical network (a graph) versus the regular physical network (a tree). Therefore, our routing optimizations augment existing Euler path routing techniques [Patwardhan et al. 2006c ] for trees. In essence, our approach provides express channels between pairs of nodes on an Euler path.. Simulation results show that our routing optimization can reduce overall execution time by 8% to 30% across a set of six benchmark applications. In general, these programs spend at least 20% of their time executing operations that require tail to head communication and obtain at least 8% improvement in execution time. We also provide a proof that our routing optimizations maintain the deadlock-free property of Euler path routing (see Appendix A).. The remainder of this article is as follows. Section 2 provides a brief introduction to SOSA. Section 3 presents statistics of instructions using the logical adjacency of head and tail nodes, and analysis of self-assembled nano-scale networks. Section 4 describes our proposed routing algorithm and Section 5 describes our implementation in detail. Section 6 presents simulation results and analyzes the performance of the proposed routing algorithm. Section 7 summarizes related work and Section 8 concludes. In this article, we propose a new routing algorithm for self-organizing nanoscale irregular networks. Our approach trades configuration time and a small amount of storage space to reduce communication latency. We augment the existing Euler path routing technique for trees to generate static shortest paths between specific pairs of nodes, while remaining deadlock free. Simulations of several applications executing on a nano-scale data parallel architecture show our proposed routing algorithm can reduce execution time by 8% to 30% compared with the original Euler path-based routing algorithm. Moreover, even if there are up to 30% defective nodes or transceivers in the networks, we can still obtain a similar reduction in total execution time. Although our analysis is specific to one system, we believe that the general approach of providing optimized routing between specific pairs of nodes is applicable to a broader set of systems, particularly those that implement logical hierarchical ring topologies on top of irregular physical topologies. In systems with more available resources per node than we have in our nano-scale networks, we could store more information at each node and potentially optimize routing between more pairs of nodes than just the PE tail/head. Routing in irregular networks has always been a challenging problem to solve. Several routing algorithms based on different network structures have been proposed to provide high throughput and low latency while at the same time avoiding deadlocks [Federico and Duato; Chi and Wu 2003] . These algorithms work well in irregular networks composed with single processors and workstations. However, as CMOS feature sizes decrease and nanotechnology develops in order to bypass the Red Brick Wall and we enter the field of nano-scale networks, it becomes more difficult to route in irregular networks because each component has less storage space and computation power.. People have proposed several routing algorithms for networks in which each component has fewer resources than processors and workstations but more resources than nano-scale devices. Some algorithms still use meshes [Kumar et al. 2002; Taylor et al. 2002; Wiklund and Liu 2003] , while some algorithms work on partially irregular networks using irregular meshes [Bolotin et al. 2005; Schafer et al. 2005] . There are also some algorithms [Palesi et al. 2006; Bolotin et al. 2007 ] focusing on compressing routing tables in regular meshlike networks. For nano-scale irregular networks, there is a tree-based routing algorithm using RPF and virtual channel cut-through [Patwardhan et al. 2006b [Patwardhan et al. , 2006c . The proposed routing algorithm is divided into two processes, configuration and routing, and implemented in the SOSA simulator. The SOSA simulator is an event-driven simulator. Each activity in a node is an event and its latency is a multiple of "time quantum," which is defined as the time taken to perform one part of the internode asynchronous communication handshake [Patwardhan et al. 2006c] . During the configuration process, the information about whether a node is on the optimized path is collected and stored in the node and the information about where to send the data is stored in the related transceivers of the node. During the routing process, each node decides whether to forward packets along the Euler path or the optimized path based on the combination of the data packet type and the virtual channel.

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


Assessment and pruning of hierarchical model based clustering The goal of clustering is to identify distinct groups in a dataset. The basic idea of model-based clustering is to approximate the data density by a mixture model, typically a mixture of Gaussians, and to estimate the parameters of the component densities, the mixing fractions, and the number of components from the data. The number of distinct groups in the data is then taken to be the number of mixture components, and the observations are partitioned into clusters (estimates of the groups) using Bayes' rule. If the groups are well separated and look Gaussian, then the resulting clusters will indeed tend to be "distinct" in the most common sense of the word -contiguous, densely populated areas of feature space, separated by contiguous, relatively empty regions. If the groups are not Gaussian, however, this correspondence may break down; an isolated group with a non-elliptical distribution, for example, may be modeled by not one, but several mixture components, and the corresponding clusters will no longer be well separated. We present methods for assessing the degree of separation between the components of a mixture model and between the corresponding clusters. We also propose a new clustering method that can be regarded as a hybrid between model-based and nonparametric clustering. The hybrid clustering algorithm prunes the cluster tree generated by hierarchical model-based clustering. Starting with the tree corresponding to the mixture model chosen by the Bayesian Information Criterion, it progressively merges clusters that do not appear to correspond to different modes of the data density. The basic premise of model-based clustering is that each group in the data corresponds to a single component of the estimated mixture density. If this premise holds, then the ability to estimate the number of mixture components (equal to the number of groups) is a major strength of model-based clustering compared to nonparametric clustering methods.. On the other hand, if the premise does not hold, the result of model-based clustering can be misleading, because several mixture components may model the same group. Consequently the number of mixture components will overestimate the number of groups, and the clusters corresponding to individual mixture components will no longer be well separated. It is therefore important to be able to decide whether or not the premise holds and, in case the premise does not hold, to determine which mixture components correspond to the same group.. We have introduced methods for assessing the degree of separation between the components of a mixture model, and between the corresponding clusters. We have also presented an algorithm for pruning the cluster tree generated by hierarchical model-based clustering. The algorithm starts with the tree corresponding to the mixture model chosen by the BIC. It then progressively merges clusters that do not appear to correspond to different modes of the data density.. We have applied model-based clustering to a simple synthetic example in which the premise was violated. In this case the method indeed exhibited the deficiencies that we had anticipated. We have also shown that our proposed diagnostic tools reveal the true structure of the data and lead to more accurate clustering. Application of our new techniques to a real-world example has also been encouraging. Our diagnostics have shown that most probably the premise of model-based clustering was violated in this case as well, and our Hybrid clustering method has significantly improved the quality of the clustering.

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


Placing Regenerators in Optical Networks to Satisfy Multiple Sets of Requests Abstract-The placement of regenerators in optical networks has become an active area of research during the last few years. Given a set of lightpaths in a network and a positive integer , regenerators must be placed in such a way that in any lightpath there are no more than hops without meeting a regenerator. The cost function we consider is given by the total number of regenerators placed at the nodes, which we believe to be a more accurate estimation of the real cost of the network than the number of locations considered in the work of Flammini et al.(IEEE/ACM Trans. Netw., vol. 19, no. 2, pp. 498-511, Apr. 2011). Furthermore, in our model we assume that we are given a finite set of possible traffic patterns (each given by a set of lightpaths), and our objective is to place the minimum number of regenerators at the nodes so that each of the traffic patterns is satisfied. While this problem can be easily solved when or , we prove that for any fixed , it does not admit a PTAS, even if has maximum degree at most 3 and the lightpaths have length . We complement this hardness result with a constant-factor approximation algorithm with ratio . We then study the case where is a path, proving that the problem is polynomial-time solvable for two particular families of instances. Finally, we generalize our model in two natural directions, which allows us to capture the model of Flammini et al. as a particular case, and we settle some questions that were left open therein.

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


Monotonic solution concepts in coevolution Assume a coevolutionary algorithm capable of storing and utilizing all phenotypes discovered during its operation, for as long as it operates on a problem; that is, assume an algorithm with a monotonically increasing knowledge of the search space. We ask: If such an algorithm were to periodically report, over the course of its operation, the best solution found so far, would the quality of the solution reported by the algorithm improve monotonically over time? To answer this question, we construct a simple preference relation to reason about the goodness of different individual and composite phenotypic behaviors. We then show that whether the solutions reported by the coevolutionary algorithm improve monotonically with respect to this preference relation depends upon the solution concept implemented by the algorithm. We show that the solution concept implemented by the conventional coevolutionary algorithm does not guarantee monotonic improvement; in contrast, the game-theoretic solution concept of Nash equilibrium does guarantee monotonic improvement. Thus, this paper considers 1) whether global and objective metrics of goodness can be applied to coevolutionary problem domains (possibly with open-ended search spaces), and 2) whether coevolutionary algorithms can, in principle, optimize with respect to such metrics and find solutions to games of strategy. Coevolutionary algorithms are stochastic search methods that are frequently used to find (or approximate) solutions to games of strategy. Nevertheless, whether coevolutionaryalgorithm dynamics are actually directional and inclined to converge onto global solutions (as opposed to performing mere local adaptation) is a contentious issue [7, 8, 14] . Further, some argue that an objective metric of goodness is an ill-conceived proposition for coevolution; for example, in [13] frequency-dependent fitness (usually found in coevolutionary algorithms) is equated with the lack of an "absolute goal.". In this paper, we investigate how a coevolutionary algorithm may behave if it never discards any information learned during its operation-all strategies discovered during search are retained and utilized. As a general principle, the expected quality of a solution returned by a search method should improve as the search method is given more computational resources in time and/or space. More desirable still, if we repeatedly query a search method (at appropriate points during its execution) on any single run, then the quality of the solution returned by the method should improve monotonically-that is, the quality of the solution at time t + 1 should be no worse than the quality at time t.. Given a coevolutionary algorithm that does not discard information during execution, can we expect it to meet the desideratum of monotonicity? On the one hand, we may expect that it must, since the algorithm's knowledge of the domain is ever increasing; the accumulation of strategies makes the evaluation process increasingly comprehensive and provides growing genetic diversity for the variation operators. On the other hand, we may remind ourselves that many of the problems associated with coevolution arise because evaluation is never fully comprehensive, and therefore can be misled when the domain contains intransitivities; new information may drastically shift our perspective. How, then, can we guarantee that the solution will improve monotonically with time (in some global, objective sense)?. This paper shows that, when information is not discarded, a coevolutionary algorithm may or may not behave monotonically, depending upon the solution concept used by the algorithm. We develop a formal framework to discuss solution concepts and monotonicity and show that certain solution concepts (e.g., Nash equilibrium) guarantee monotonicity and others (including that most commonly used in coevolution) do not. Clearly, real-world algorithms have finite capacity and must occasionally discard information; nevertheless, a monotonic improvement in solution quality over time can be approximated by a finite-memory system if the solution concept permits (see for example [10] , which uses the Nash-equilibrium solution concept).. We proceed as follows. Section 2 reviews foundational issues regarding solution concepts in general and how solutions are commonly expressed in coevolutionary algorithms. Section 3 introduces the basic notions of our formal framework. Section 4 defines and discusses a preference relation between candidate solutions that forms the basis of our reasoning about monotonic solution concepts. Section 5 examines two solution concepts from the perspective of monotonicity: the one conventionally implemented in coevolutionary algorithms and also Nash equilibrium. Sections 6-8 provide further discussion, examine the relevance of our results to open-ended domains, and offer concluding remarks. This paper reports work originally presented in [9] . In this paper, we consider the question of whether a coevolutionary algorithm, when applied to solve a game of strategy, can monotonically improve the solution it reports as it operates over time, assuming that the algorithm is able to incrementally accumulate knowledge of the search space. Our intuitions do not provide a clear answer to this question. The monotonic increase of knowledge we assume suggests an affirmative answer, yet our familiarity with problems caused by intransitive superiority structures (such as that in RockPaper-Scissors) suggests a negative answer.. Our approach to this question is to first develop a preference relation over the search space. This preference relation creates a global partial-ordering. To answer the above question in the affirmative, we require that the solution concept implemented by the coevolutionary search algorithm never cause the algorithm's estimations to appear in a sequence that contradicts the partial order. A solution concept that guarantees such operation is monotonic.. We show that the solution concept conventionally implemented in a coevolutionary algorithm is not monotonic; that is, it does not allow us to expect monotonically improving estimations to be produced by the algorithm, even with our assumption that knowledge is never discarded. In contrast, we also show that the solution concept of Nash equilibrium is monotonic; if the algorithm implements Nash equilibrium, then it does guarantee monotonic improvement. Interestingly, this guarantee holds even though we assume nothing about the space of game strategies that remains to be discovered. Consequently, our results apply immediately to open-ended domains. Our formalism can be applied easily to other solution concepts, such as Pareto optimality [9] .. Of course, our assumption that knowledge is never discarded is difficult to meet in the real-world. Nevertheless, our earlier work [10] demonstrates that a finite-memory system that heuristically discards knowledge can closely approximate monotonic improvement over time, if the solution concept allows. The preference relation we define in Section 4 can be instantiated by any solution concept; limited space permits analysis of only two instantiations in this paper. Another solution concept that is used in coevolutionary algorithms is Pareto optimality; we show in [9] that this concept is monotonic provided it is implemented in a specific way.. Throughout our analyses we assumed that strategies discovered by search are never thrown away. But, real-world algorithms have finite resources. Are our results relevant in this case? While infinite-memory assumptions simplify analysis, our earlier results on the Nash memory mechanism [10] show that monotonic improvement can be nicely approximated by a finite-memory system. Thus, initial data suggest that the benefits of monotonic concepts are robust.. The general notion of monotonic-improvement-over-time can, of course, be construed in different ways. An alternative view of monotonicity is given in studies of asymmetric zero-sum games between learners and tests [5, 6] . This work shows that a distance function to a global solution is monotonically decreased when a learner is discovered that solves a previously unsolved test (or combination of tests); that is, the minimal number of tests (or test combinations) that we know to be solvable increases monotonically. This alternative notion of monotonicity is subsumed by the one we present in this paper. Further, the guarantees offered by our notion of monotonicity extend beyond the known search-space into the unknown, as we discuss below.

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


On semi-supervised clustering via multiobjective optimization Semi-supervised classification uses aspects of both unsupervised and supervised learning to improve upon the performance of traditional classification methods. Semi-supervised clustering, in particular, explicitly integrates both information about the data distribution and about class memberships into the clustering process. In this paper, the potential of a multiobjective formulation of the semi-supervised clustering problem is explored, and two evolutionary multiobjective approaches to the problem are outlined. Experimental results demonstrate practical performance benefits of this methodology, including an improved classification performance and an increased robustness towards annotation errors. Existing machine learning algorithms differ along a number of different dimensions, one of the most fundamental of which is the distinction between unsupervised and supervised learning techniques. Supervised learning refers to learning in the presence of training examples-in classification, a set of data samples for which the correct classification is known. If a sufficient amount of such data is available, a classifier can be trained in order to learn and correctly predict the class memberships of these data items in the hope that the trained classifier subsequently generalizes to the classification of new unlabeled data. Supervised methods can be very powerful for the classification of complex data, but may suffer from problems related to overtraining, resulting in poor generalization capabilities.. In contrast to supervised learning, unsupervised learning Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. can be applied in the absence of any prior knowledge about the number of classes, or any correct training examples. It relies on the assumption that the main class structure of the data is reflected by the actual distribution of the data, that is, that clusters of homogeneous data items can be identified and that this grouping will lead to a meaningful classification. Evidently, unsupervised approaches are prone to fail if no distinct cluster structure is present in the data, and they are, in this sense, less powerful than supervised methods. However, their positive aspects include the facts that, in contrast to supervised approaches, they can be used for exploratory data analysis in scenarios where little prior information is given and that they are not affected by overtraining. All things considered, unsupervised and supervised learning approaches must be seen as complementary approaches to the task of data classification, whose respective success and applicability depends on the features of the problem domain. But a 'third' or 'middle way' also exists -semisupervised classification (described in detail in the next section), which is able to combine the advantages of its two older brothers in some cases. In this paper, we review the current state of semi-supervised classification and motivate a multiobjective approach to semi-supervised clustering. Section 3 goes on to describe two alternative implementations of the approach, and Section 4 describes the main research questions addressed in this work as well as the corresponding experimental setup. The results of our experiments are presented in Section 5 and, finally, Section 6 discusses the implications of our findings and concludes. The experiments presented in this paper indicate several advantages of a multiobjective approach to semi-supervised clustering, and, more generally, those of a semi-supervised approach to classification. We find, in particular, that the multiobjective approach shows a more consistent performance across different data sets, and is more robust to noise.. On the other hand, one limitation of our analysis has been the use of external knowledge to choose the best solution from the Pareto fronts in the case of the multiobjective approaches. Here, we were interested in the algorithms' performance at generating high quality solutions, and we believe an advantage has been shown for the multiobjective methods in this respect. However, in practice, the selection of the best solution from the Pareto front may pose difficulties, and the peak performance obtained in these experiments may therefore be difficult to reach in reality. Nonetheless, in our previous work on multiobjective clustering, we have successfully developed an automated and unsupervised scheme for the selection of good solutions from the Pareto front, and in future work we hope to develop similar approaches for the Pareto fronts obtained by multiobjective semi-supervised clustering.. It should also be noted that the MOEA used in our work is not necessarily able to genuinely explore all of the tradeoffs between unsupervised and supervised information. This is due to the encoding and the operators used, which (for the sake of efficiency) need to integrate domain knowledge and are, in particular, based on the assumption of coherence in data space. Solutions that strongly violate this assumption can, therefore, not necessarily be reached. While it may be theoretically interesting to explore the entire range of the Pareto front, we do not consider this limitation a disadvantage innate to our approach. In fact, all existing semi-supervised clustering algorithms are based on similar assumptions, and the use of this assumption seems perfectly justified: as mentioned previously, the idea of coherence (or consistency and complementarity between supervised and unsupervised information) is fundamental in semi-supervision and is the main ground for its potential advantages -consequently, semi-supervision makes little sense in the complete absence of coherence. Admittedly, a high degree of coherence may not be immediately present in many real data sets encountered in practical data-mining scenarios. However, this does not imply that an exploration of more extreme trade-offs would be useful, but rather that a transformation of the feature space will be necessary to obtain coherent data and find interpretable results. For this reason, the integration of semi-supervision with feature selection or with distance learning is an important area of research and will be a logical extension of the work presented in this paper. The results of our experiments (averages over 21 runs) are summarized in Table 1 to Table 4 .

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


Practical anisotropic geodesy The computation of intrinsic, geodesic distances and geodesic paths on surfaces is a fundamental low-level building block in countless Computer Graphics and Geometry Processing applications. This demand led to the development of numerous algorithms -- some for the exact, others for the approximative computation, some focussing on speed, others providing strict guarantees. Most of these methods are designed for computing distances according to the standard Riemannian metric induced by the surface's embedding in Euclidean space. Generalization to other, especially anisotropic, metrics -- which more recently gained interest in several application areas -- is not rarely hampered by fundamental problems. We explore and discuss possibilities for the generalization and extension of well-known methods to the anisotropic case, evaluate their relative performance in terms of accuracy and speed, and propose a novel algorithm, the Short-Term Vector Dijkstra. This algorithm is strikingly simple to implement and proves to provide practical accuracy at a higher speed than generalized previous methods. Measuring lengths or distances is one of the most fundamental operations in the analysis, processing, and synthesis of geometry. While this task can be as simple as applying the Pythagorean formula in free Euclidean space, it quickly gets more complex as we move to a non-Euclidean, intrinsic setting on manifolds, and even more if these measurements are to be taken with respect to a non-standard metric.. We consider a 2-manifold M (possibly with boundary) equipped with smoothly varying norms · gx on the tangent spaces TxM. As these norms allow us to infinitesimally measure distances on M, for a continuously differentiable curve ζ : [0, 1] → M we can define its total length through integration as (ζ) = R 1 0 ζ (t) g ζ(t) dt. With this we can define the intrinsic metric g measuring geodesic distances between two points p, q ∈ M as the infimum over the lengths of all curves ζ on M connecting p with q, i.e.. Note that in the special but common case that · gx is induced by some inner product · , · x on TxM for each x ∈ M, i.e. v gx = v, v x, g is a Riemannian metric. If M is further embedded in Euclidean space -as is the case in most geometry processing scenarios -the Euclidean dot product implies a natural inner product via its restriction to T xM. We call the corresponding norm standard norm, denoted · x, and the induced Riemannian metric standard metric.. Relative to the standard metric and norm we characterize a metric g and its underlying norm based on their quotient r(v, x) = v gx / v x (for v = 0) as follows:. • If r(v, x) ≡ r(x), i.e. it is independent of v, we call the metric g isotropic as there is no directional dependency.. • If r(v, x) ≡ r(x) ≡ 1, we call the metric g weighted by the weight field r(x).. • If r(v, x) ≡ r(x), i.e. there is some directional dependency, we call the metric g anisotropic.. The value γ(x) = max v r(v, x)/ minv r(v, x) defines the local degree of anisotropy or simply local anisotropy and γ = max x γ(x) is the maximum anisotropy.. While the standard norm realizes the intuitive notion of geodesic distance and is most common in applications, more general anisotropic norms that incorporate directional dependencies gained increasing interest in recent years. Applications range from Meshing [BPC08, CBK12] and Segmentation [BPC08, SJC09] , over Path Planning [RR90, LMS99] and Shape Matching [SJC09] , to (mainly in 3D) Medical Imaging [PWKB02, PWT05, BCLC09, BC11] . The anisotropy can be related to principal curvature directions, terrain steepness, surface vector fields, or MRI diffusion tensors, to name some examples (cf. Section 3).. Such applications typically operate in a discrete setting, e.g. on triangle meshes approximating manifolds. Numerous methods for approximate computation of (mainly isotropic) distances in such settings have been proposed. Their accuracy and efficiency typically depends on the quality of the triangulation: intuitively, the "rounder" the individual triangles, i.e. the closer to equilateral, the better. While working with rather nice triangulations is quite common in the digital geometry processing field (leveraged by powerful remeshing techniques), a problem emerges when anisotropic distances are dealt with: the notion of "roundness" is metric dependent! This means a perfectly round triangle which is equilateral in the standard metric can be a "cap" or "needle" far from round when viewed under another, anisotropic metric.. Unfortunately, when naïvely adapting traditional methods to non-standard metrics, they expect element roundness with respect to these metrics, while the meshes typically used in applications are optimized with respect to the standard metric -as often favored by the other processing steps. Hence, in practice anisotropic distance computations quickly arrive at inacceptably low accuracy with increasing degree of anisotropy, as illustrated in Figure 1 for γ = 20. We have explored and discussed numerous options for the computation of distance fields with respect to general anisotropic metrics, based on generic as well as specific adaptations of known algorithms. We compared all these in terms of their accuracy and runtime performance and enriched this zoo of methods with our Short-Term Vector Dijkstra. Despite its simplicity, this method proved to provide a very interesting novel option, allowing to quickly compute results with practical accuracy without the need for complex optimization or costly preprocessing.. In the future we would like to explore ways to enhance the smoothness of the results. Possibilities could be the use of averaging schemes during propagation [Sch13] or of a kind of "gradually fading memory" instead of a hard limit k. The use of a locally varying k (based on local feature size, anisotropy, mesh density) is another interesting direction. In the previous sections we have discussed the qualitative differences of the approaches that are available for the computation of anisotropic distances. In order to get a quantitative understanding for the accuracy and runtime performance of all these options, we implemented all variants and performed extensive experiments using various kinds of input meshes (cf. Figure 10 , 9K-183K triangles), metrics (vector field based as well as curvature tensor based), anisotropies (uniform as well as varying γ(x)), and algorithm parameters.. The reference solutions we compare against have been computed using the edge-subdivision method of Lanthier [Lan99] with 200 Steiner vertices per edge (and runtimes of up to several hours for a single distance field). In this setting for every single triangle there are more than 120,000 virtual edges crossing it, resulting in a highly accurate approximation of the true distances. We show the results using error-over-runtime plots in Figure 11 (and using error histograms in the supplemental material). Intuitively, the closer a method lies to the bottom left, the better -as this means that a low error (high accuracy) is achieved in a short time. These plots further allow to quickly see what other options apart from the "best one" are available, e.g. how much more accuracy can be achieved by spending how much more time.. Regarding our STVD algorithm, we see that it lies in the bottom left region across the different levels of anisotropy, i.e. it achieves good results in short time when compared to the other options -especially for higher anisotropies. Good standard values for k can also be read from these plots: from around 5 for low anisotropy to around 10 for anisotropy 50. Note that such high anisotropy is not only of theoretical interest, e.g. anisotropies of 30+ have been used in [CBK12] .. For lower anisotropies, the Fast Marching method applied to the intrinsic Delaunay triangulation of a subdivided version of the input mesh is very competitive. Note that this strategy requires several steps of preprocessing: 1) mesh subdivision, 2) discrete metric computation, 3) reestablishing triangle inequality fulfillment, and 4) iDT construction. This also implies the drawbacks discussed in Sections 4.1 and 4.2 and can take a considerable amount of (possibly When a higher level of accuracy is required and more time is available, the edge subdivision method of Lanthier [Lan99] proves to consistently provide a good option.. In isotropic scenarios the advantage of STVD over, e.g., Fast Marching or the Heat Method diminishes. However, we observed that it is typically still very significant when dealing with meshes with badly shaped elements. This is illustrated here on an example mesh (γ = 1), where the error

O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


Shape-Direction-Adaptive Lifting-Based Discrete Wavelet Transform for Arbitrarily Shaped Segments in Image Compression SUMMARY In this paper, a new lifting-based shape-direction-adapti discrete wavelet transform (SDA-DWT) which can be used for arbitraril shaped segments is proposed. The SDA-DWT contains three major techniques: the lifting-based DWT, the adaptive directional technique, and the concept of object-based compression in MPEG-4. With SDA-DWT, the number of transformed coefficients is equal to the number of pixels in the arbitrarily shaped segment image, and the spatial correlation across subbands is well preserved. SDA-DWT also can locally adapt its filtering directions according to the texture orientations to improve energy compaction for images containing non-horizontal or non-vertical edge textures. SDA-DWT can be applied to any application that is wavelet based and the lifting technique provides much flexibility for hardware implementation Experimental results show that, for still object images with rich orientation textures, SDA-DWT outperforms SA-DWT up to 5.88dB in PSNR under 2.15-bpp (bit/object pixel) condition, and reduces the bit-budget up to 28.5% for lossless compression. SDA-DWT also outperforms DA-DWT up to 5.44dB in PSNR under 3.28-bpp condition, and reduces the bit-budget up to 14.0%. The conventional separable 2-D DWT can be implemented by consecutively applying the 1-D DWT in horizontal and vertical directions, or vice versa. Hence, only these two directions of the high-pass filters have vanishing moments. For images containing large amount of edges which are not vertical or horizontal, the conventional DWT cannot provide efficient representations, since there are many large amplitude coefficients in the high frequency subbands of the transformed images. In order to solve this problem, we need to design a DWT whose directions are not fixed to vertical or horizontal. On the contrary, the new separable 2-D DWT will be capable of choosing the best directions for executing two 1-D DWTs. Such DWTs that can choose the optimal transform directions are usually called direction-adaptive DWTs. Recently, Ding et al. proposed the adaptive directional lifting-based wavelet transform (ADL-DWT) [1] for image compression, and they claimed that ADL-DWT can improve the compression performance of a texture-rich image up to 2.0dB. In [1] , they used the lifting scheme [3] , [4] and the sinc-interpolation [5] to design ADL-DWT. About the same time, Chang et al. also proposed a directionadaptive discrete wavelet transform (DA-DWT) [6] for image compression which was based on the lifting scheme, too. DA-DWT does not involve the sub-pixel interpolation of ADL-DWT, but they use the existing input samples for prediction and update. DA-DWT can attain a gain up to 2.5dB in PSNR over the traditional DWT for typical testing images. From [1] and [6] , we clearly know that DWT with direction-adaptive capability can improve the performance of the conventional DWT to a new level, but the extra cost is complicated computation and the side information processing, which contains the direction information, to be stored, coded, and transmitted. Besides the complexity and side information, ADL-DWT and DA-DWT are designed for compressing a rectangular image, and they cannot be used to object-based or arbitrary-shape image compression directly.. Both ADL-DWT and DA-DWT are based on the lifting-based DWT, since the lifting-based DWT is convenient for direction-adaptive functionality realization and hardware implementation. The convolution-based DWT or FIR (finite impulse response) bank structure DWT proposed by Mallat [7] is the traditional method to implement DWT. The convolution-based DWT suffers from the problems that it is complex and difficult for hardware implementation. Therefore, Daubechies and Sweldom proposed the lifting-based DWT [3] which is less complicated than the convolution-based DWT. The main concept of the lifting-based DWT is to break-up the low-pass and high-pass wavelet filters into a sequence of lower-triangular and uppertriangular matrices, and implement the filter by banded matrix multiplications. Because of low complexity, ease for hardware implementation, and the capability of lossless reconstruction, the lifting-based DWT was recommended by JPEG2000.. An important feature of MPEG-4 is the functionality that the compressed forms of visual objects are available, and this feature provides great flexibility for manipulating visual objects in multimedia applications. For this functionality of MPEG-4, many coding techniques for coding arbitrarily shaped visual object were developed, and the shapeadaptiVe discrete cosine transform (SA-DCT) [8] is the most popular one to code the texture of the intra frame of a visual object in video coding. Since SA-DCT divides the object to be compressed into many 8-by-8 blocks, the non-vertical and non-horizontal boundaries of objects can not be represented perfectly, i.e. some positions of the 8-by-8 boundary block are not in the object. In order to overcome the problems of SA-DCT, Li et al. proposed the shape-adaptive discrete wavelet transform (SA-DWT) [9] for coding the texture of an arbitrarily shaped visual object. SA-DWT uses DWT to replace DCT, and it can handle arbitrarily shaped 2-D objects and gets better performance by using the more complicated algorithm. Lu and Pearlman combined the shape-adaptive DWT and the set-partitioning embedded block coder (SPECK) [10] to propose the object-based SPECK algorithm [11] for coding the arbitrarily shaped objects of the intra frames in MPEG-4.. In this paper, we propose a shape-direction-adaptive lifting-based DWT (SDA-DWT). By using SDA-DWT, we can perform directional adaptive DWT on an arbitrarily shaped and partitioned visual object while the shape mask and partition of the object image are given. SDA-DWT can be directly applied to still image compression and objectbased visual compression in MPEG-4 with high efficiency. Experimental results show that SDA-DWT outperforms SA-DWT (a conventional-separable-2D-DWT based method) by 5.76dB in PSNR for the test image under 1-bpp condition, and reduces 28.5% bit-budget of the coded bit-stream. For our test image, SDA-DWT also outperforms DA-DWT (a lifting-based method) by 4.88dB under 1-bpp condition, and reduces the bit-budget of the coded bit-stream 14.0%. The remainder of this paper proceeds as follows. In Sect. 2, the proposed SDA-DWT is described in detail. The liftingbased DWT, the adaptive directional DWT, and the shapeadaptive DWT are also included in this section. Experimental results are given in Sect. 3, followed by the conclusions in Sect. 4.. 2. Shape-Direction-Adaptive Discrete Wavelet Transform (SDA-DWT). In this section, we present a new discrete wavelet transform, which is both shape-adaptive and direction-adaptive and named shape-direction-adaptive discrete wavelet transform (SDA-DWT). Besides the direction-adaptive capability like ADL-DWT or DA-DWT, SDA-DWT is capable of handling arbitrarily shaped segments. Some related topics such as the lifting structure of DWT, the direction-adaptive DWT, and the shape-adaptive DWT are introduced in this section, too. In this paper we propose SDA-DWT, which can be used for arbitrarily shaped image segments, and whose direction of prediction and update are adaptive. From the experimental results, SDA-DWT has superior performance than SA-DWT or DA-DWT does for visual objects with non-horizontal or non-vertical edge textures. SDA-DWT can be applied to any wavelet-based application, although, in this paper, we only give the examples of the intra frame compression of

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


An end-to-end approach to globally scalable programmable networking The three fundamental resources underlying Information Technology are bandwidth, storage, and computation. The goal of wide area infrastructure is to provision these resources to enable applications within a community.The end-to-end principles provide a scalable approach to the architecture of the shared services on which these applications depend. As a prime example, IP and the Internet resulted from the application of these principles to bandwidth resources. A similar application to storage resources produced the Internet Backplane Protocol and Logistical Networking, which implements a scalable approach to wide area network storage. In this paper, we discuss the use of this paradigm for the design of a scalable service for wide area computation, or programmable networking. While it has usually been assumed that providing computational services in the network will violate the end-to-end principles, we show that this assumption does not hold. We illustrate the point by describing Logistical Network Computing, an extension to Logistical Networking that supports limited computation at intermediate nodes. The mounting wave of enthusiasm for the idea of building a new "cyberinfrastructure" draws much of its inspiration from the manifest success of the Internet as a catalyst for collaboration within the research community worldwide [1] . Various wellpublicized visions of the technology-rich environments of the future -distributed collaboratories, global computing grids, ubiquitous computing, pervasive computing, autonomic computing -seek to expand and amplify the Internet's power in this regard. But when looked at through the lens of the Internet's success, even a casual review of such visions makes two points about such a next generation infrastructure abundantly clear: First, it must be more general than the current Internet, delivering a much more capable set of services and resources. Second, and less well remarked, it must scale at least as well as the current Internet does, and better along some dimensions Yet for infrastructure builders dealing with information technology in the wide area, i.e. for the Networking and Distributed Systems communities, this required combination of generality and scalability has proved to be extremely elusive.. On one hand, Networking has traditionally been concerned with "data communications," or the accurate and timely transfer of bits from one host system to another. This limited scope has allowed it to apply stringent rules of architectural discipline, notably the end-to-end principles [2] , to the problem of designing systems that can scale. The obvious example is the Internet, which has successfully scaled to reach every country on the globe, and may soon reach most communities. However, with the recent exception of Logistical Networking [3] , attempts to generalize the network to include storage or compute services, such as Active Networking [4] , have generally run afoul of the end-to-end principles [5] and proved difficult to scale up.. On the other hand, while the designers of distributed systems would like to achieve Internet-levels of scalability, Distributed Systems research grew out of work on operating systems, and its scope has always been broader. Since its goals require more general services, including storage and computation, the design of these systems almost never invokes the end-to-end principles. Niches that have developed with the goal of enabling new functionality in the wide area, such as storage networking and As the name suggests, the goal of Logistical Networking is to bring data transmission and storage within one framework, much as military or industrial logistics treat transportation lines and storage depots as coordinate elements of one infrastructure. Achieving this goal requires a form of network storage that is globally scalable, meaning that the storage systems attached to the global data transmission network can be accessed and utilized from arbitrary endpoints. To create a shared infrastructure that exposes network storage for general use in this way, we set out to define a new storage stack (Figure 1 ), analogous to the Internet stack, using a bottom-up and layered design approach that adheres to the end-to-end principles. We discuss this design model in more detail below, but the important thing to note here is that the key to attaining scalability using this model lies in defining the right basic abstraction of the physical resource to be shared at a low level of the stack. In the case of storage the Internet Backplane Protocol (IBP) plays this role.. Log "Grids," routinely treat scalability as a secondary matter, to be dealt with after new protocols and intermediate nodes have been designed and tested.. Our position is that a successful way to create a scalable, programmable network, capable of providing the kind of generality that many advanced applications and environments will require, is to integrate into the network a compute service that adheres to the end-to-end principles. Given previous experience and prevailing attitudes, the most obvious and serious objection to this position is that it advocates doing something that cannot be done, but we argue here that it can be. Since our proposed approach leverages our previous work in the area of Logistical Networking (LoN) [6] , we call it Logistical Network Computing (LoNC) . Since the analysis we give here extends the analysis of globally scalable network storage that we previously presented at SIGCOMM 2002, interested readers are directed to that work [3] . In this paper we have shown how Logistical Networking can be extended beyond its origin as an end-to-end approach to network storage to include network computation. The result combines data transfer (bandwidth), data persistence (storage) and data transformation (computation) in a uniform model of state management that, because it is designed for scalability using the end-to-end paradigm, can be applied to many difficult problems in wide area computation. Yet the very fact that this approach tries to synthesize all these elements in one common scheme has led some to question whether or not this work belongs to the field of Networking at all, rather than some other field of distributed systems. We have two answers to this query, which, taken together, help to put these ideas in a wider perspective.. In the first place, our work borrows from the fundamental principles of wide area networking, which seems to us to be the reason that it has always been best understood by the Networking community. One way to characterize of the field of wide area networking is to say that it encompasses the subset of distributed systems that is restricted to systems that scale globally. In other areas of distributed systems, such as distributed databases or telecollaboration, scalability is a virtue that designers strive for, but a system that is less scalable can still hope to fill an important niche. In Wide Area Networking, scalability has been taken as a fundamental requirement for architectural acceptability from the outset of the design process.. Similarly our work embraces scalability as a defining characteristic. We seek to broaden the interpretation of the endto-end principles, which we view as necessary guides to achieving scalability, to services other than the undelayed and unmodified delivery of bits. By putting those principles first, we have derived a design for ubiquitous infrastructure that has the familiar limitations of weak semantics, but which includes storage and computation and, arguably, will scale.. In the second place, the other leading idea that underlies this work is the potential for unity that exists between storage, networking and computation; it therefore draws on possibilities that fall outside of any one these fields when they are considered in isolation from one another. At the heart of this analysis is an unremarkable observation: the state of every computer system consists of data that is stored, except when it is either propagating along a datapath or being transformed by a processor.. From this common starting point, however, the engineering of systems has diverged:. Storage focuses on buffers that can maintain large amounts of data for long periods of time.. Networking focuses on the "fast path" that passes data quickly between wide area data paths.. Computing focuses on very powerful mechanisms for transforming stored state.. Based on these differences in implementation, practitioners in each field have come to distinguish their fields in terms of constructs that do not exist in the others: Storage systems implement "files" that can be stored indefinitely with great fidelity.. Networks implement "datagrams" that have a source, a destination and a speed of transmission.. Computing implements "processes" that have an initial state and inputs, maintain intermediate state and produce output.. Constructs such as these have been highly valuable as an aid in dealing with the complexity of the underlying hardware systems and the huge numbers of possible states that they can assume. At times, implementations that enshrine these constructs have been seen as the key to achieving performance, by allowing the optimization of interactions between components along the critical path.. Yet sometimes such abstractions constrain the thinking and the implementation strategies of architects. History shows that when this happens, the way to new functionality, or even to the highest performance, can lie in looking past the constructs to the components, and working directly with them. Examples of such successful reductionism abound: load/store architecture (e.g. CDC 6600), primitive OS kernels (e.g. Unix), RISC architecture (e.g. MIPS) and store-and-forward wide area networking (e.g. IP). In each case, functionality is moved from a lower layer to a higher layer of the infrastructure, with a greater burden of scheduling and control being placed on the latter. Once the opportunity for architectural innovation is identified, the question is not whether it is "right" or "wrong" but whether it has significant advantages from a systems engineering point of view.. Logistical Network Computing views all computer systems as data stored in buffers that can be maintained, or moved to other (possibly distant) buffers, or transformed. From this point of view a block of data of sitting on a disk can be treated as a longlived datagram that is not currently going anywhere, and similarly a datagram passing through a router can be seen as a process whose pages extend over space but are not transformed. By understanding the commonality between these constructs, we hope to define a unified framework without artificial boundaries or "balkanization." If this approach were to succeed, would such a unified field of endeavor, focused on scalability as its principle design criterion, be what we now call "Networking?" Our answer is yes, but it would also be much more. Logstical Network Computing touches on most aspects of resource management for wide area distributed systems, and so it has an overlap with most Distributed Operating System projects. The important categories are remote job execution [19] , remote procedure call [20] , state replication for fault tolerance and mobile code and agent infrastructures [21] . While this list is not exhaustive, space restrictions prevent us from give a more complete account.. The area of Active Networks [4] is obviously very closely related to Logistical Networking because it also seeks to use the storage and computational resources of intermediate nodes to implement innovative services. As we have discussed at various points in the paper, the difference between the two is that Active Networks takes the step of placing an unbounded process execution at an intermediate node, which has the effect, predictable by reference to the end-to-end principles, of limiting the scalability of the system. Avoiding this compromise is the defining goal of Logistical Networking.. Calvert, Griffioen and Wen [22] have developed Ephemeral State Processing as a mechanism to maintain persistent state at IP routers and perform operations on it. As with Logistical Network Computing, they followed the design principles of IP to create an architecture that conforms to the end-to-end principles: storage allocations are limited in size and duration, instructions are restricted to a limited set installed on the router, and both functions are best effort. However the scale of their ephemeral state is orders of magnitude smaller than the storage supported by Logistical Network Computing: storage allocations are limited to a single 64 bit words stored for 10 seconds; primitive operations analogous to individual machine instructions act on one or two stored words. While this greatly reduces the problem of scalability, it also restricts the applicability of their approach to very simple services.. The other area of Distributed Systems that comes closest to the principles and methods of Logistical Networking is peer-topeer. Peer-to-peer computing [13] systems differ from Logistical Network Computing because they tend to be application-specific and therefore not to be appropriate for deployment on common infrastructure. Each application: SETI@home, folding@home, etc. distributes its own computational processes to run on end user workstations, and so creates a separate non-interoperable infrastructure. Attempts at generic peer-to-peer computing platforms such as Entropia's run in to the problem that the mobile code that runs on it must be trusted, so scalability is limited to corporate intranets.

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


Beta-Shifts, Their Languages, and Computability Abstract For every real number β > 1, the β-shift is a dynamical system describing iterations of the map x → βx mod 1 and is studied intensively in number theory. Each β-shift has an associated language of finite strings of characters; properties of this language are studied for the additional insight they give into the dynamics of the underlying system.We prove that the language of the β-shift is recursive iff β is a computable real number. That fact yields a precise characterization of the reals: The real numbers β for which we can compute arbitrarily good approximations-hence in particular the numbers for which we can compute their expansion to some base-are precisely those for which there exists a program that decides for any finite sequence of digits whether the sequence occurs as a subword of some element of the β-shift.While the "only if" part of the proof of the above result is constructive, the "if" part is not. We show that no constructive proof of the "if" part exists. Hence, there exists no algorithm that transforms a program computing arbitrarily good approximations of a real number β into a program deciding the language of the β-shift.

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


Black-Box Concurrent Zero-Knowledge Requires (almost) Logarithmically Many Rounds We show that any concurrent zero-knowledge protocol for a non-trivial language (i.e., for a language outside BPP), whose security is proven via black-box simulation, must use at least (log n) rounds of interaction. This result achieves a substantial improvement over previous lower bounds, and is the rst bound to rule out the possibility of constant-round concurrent zero-knowledge when proven via black-box simulation. Furthermore, the bound is polynomially related to the number of rounds in the best known concurrent zero-knowledge protocol for languages in NP (which is established via black-box simulation). Constructing a \round-e cient" concurrent zero-knowledge protocol for all languages in NP, or even nontrivial languages (outside of BPP) seems to be a challenging task. Intuition on the diculty of this problem is given in 12], where it was argued that for a speci c 4-round zero-knowledge protocol and a speci c recursive scheduling of n sessions, the straightforward adaptation of the simulator to the concurrent setting requires time exponential in n. The rst lower bound demonstrating the di culty of concurrent zero-knowledge was given by Kilian, Petrank and Racko 26] who showed, building on the techniques of Goldreich and Krawczyk 18] , that for every language outside BPP there is no 4-round protocol whose concurrent execution is simulatable in polynomial-time by a black-box simulator. (A black-box simulator is a simulator that has only black-box access to the adversarial veri er. Essentially all previously known proofs of security of zero-knowledge protocols use black-box simulators. An exception is the protocol of 22], which uses a non-standard assumption of a "non black-box" nature.) This lower bound was later improved by Rosen to seven rounds 29] .. Indeed, even ignoring issues of round e ciency, it was not clear whether there exists a concurrent zero-knowledge protocol for nontrivial languages, without modifying the underlying model. Richardson and Kilian 28] exhibited a family of concurrent zero-knowledge protocols (parameterized by the number of rounds) for all languages in NP. Their original analysis showed how to simulate in polynomial-time n O(1) concurrent sessions only when the number of rounds in the protocol is at least n (for some arbitrary > 0). This result has recently been substantially improved by Kilian and Petrank 25] , who show that the Richardson-Kilian protocol remains concurrent zero-knowledge even if it has O(g(n) log 2 n) rounds, where g( ) is any non-constant function (e.g., g(n) = log log n).. We note that previously there was a considerable gap between the known upper and lower bounds on the round-complexity of concurrent zero-knowledge (i.e., 25, 29] ): the best known protocol hasÕ(log 2 n) rounds whereas the lower bound necessitates 7 rounds (via black-box simulation). 1 In particular, the question consisting of whether constant-round concurrent zero-knowledge protocols exist has been open.

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