UFO - The Universal FeynRules Output We present a new model format for automatized matrix-element generators, the socalled Universal FeynRules Output (UFO). The format is universal in the sense that it features compatibility with more than one single generator and is designed to be flexible, modular and agnostic of any assumption such as the number of particles or the color and Lorentz structures appearing in the interaction vertices. Unlike other model formats where text files need to be parsed, the information on the model is encoded into a Python module that can easily be linked to other computer codes. We then describe an interface for the Mathematica package FeynRules that allows for an automatic output of models in the UFO format. Monte Carlo simulations of the physics to be observed at the Large Hadron Collider (LHC) at CERN play a central role in the exploration of the electroweak scale, both from the experimental point of view of establishing an excesses over the expected Standard Model (SM) backgrounds as well as from the phenomenological point of view by providing possible explanations for the observations. For this reason, activities in the field of Monte Carlo simulations have been rather intense over the last fifteen years, resulting in many advances in the field. Automated tree-level matrix-element generators, such as Alpgen [1] , Comix [2] , CompHep/CalcHep [3, 4, 5] , Helac [6] , Herwig [7, 8] , MadGraph/MadEvent [9, 10, 11, 12, 13] , Sherpa [14, 15] , or Whizard [16, 17] , describing the hard scattering processes where the Beyond the Standard Model (BSM) physics is expected to show up have been developed. As a consequence, the problem of the automatic generation of tree-level matrix elements for a large class of Lagrangian-based BSM theories is solved, at least in principle.. Due to the numerous existing BSM theories based on ideas in constant evolution, the implementation of these models into Monte Carlo event generators remains a tedious and error-prone task. Feynman rules associated with a given BSM model must be derived and then implemented one at the time into the various codes, which often follow their own specific conventions and formats. A first step in the direction of automating this procedure by starting directly from the Lagrangian of the model has been made in the context of the LanHep package [18] linked to the CompHep and CalcHep programs. Recently, a new efficient framework going beyond this scheme has been developed. It is based on the FeynRules package [19, 20, 21, 22] and proposes a general and flexible environment allowing to develop a model, investigate its phenomenology and eventually confront it to data. Its virtue has been illustrated in the context of the CompHep/CalcHep, FeynArts/FormCalc [23] , MadGraph/MadEvent, Sherpa and Whizard programs, by implementing several new physics theories in FeynRules and then passing them to the different tools for a systematic validation procedure. The approach is based on a modular structure where each node consists in an interface to a dedicated matrix-element generator. Since the latter have in general hard-coded information regarding the supported Lorentz and/or color structures, the interfaces check whether a given vertex is compliant with a given matrix-element generator, in which case the vertex is written to file in a format suitable for the generator. The final output consists then in a set of text files that can be used in a similar way to any other built-in model.. The procedure spelled out above, where communication between FeynRules and the matrix-element generators proceeds exclusively via a set of well-defined text files that must be parsed and interpreted, has some serious limitations. In particular, extending the format to include more general structures, like higher-dimensional operators and/or non-standard color structures, is difficult to incorporate into a static text-based format. In this paper we present a new format, dubbed the Universal FeynRules Output or the UFO, for model files that goes beyond existing formats in various ways. The format is completely generic and, unlike existing formats, it does not make any a priori assumptions on the structures that can appear in a model. The aim is to provide a flexible format, where all the information about a model is represented in an abstract form that can easily be accessed by other tools. The information on the particles, parameters and vertices of the model are stored in a set of Python objects, each of them being associated with a list of attributes related to their properties. This way of representing the model information has some benefits over the more traditional plain text table-based format, because it allows, e.g., to add a missing piece of information directly as a new attribute to an existing object. As an example, extending a table-based format to accommodate higher-point vertices requires to change the format of the table and to adapt the readers for the table accordingly. In an objectoriented format like the UFO, the same extension is trivial, as the number of particles entering a vertex is just an attribute of the vertex, so no extension of rewriting of the readers is necessary. Presently, the UFO format is already used by the MadGraph version 5 [13] and the GoSam generators [24, 25, 26] , and will be used in a near future by Herwig++.. The paper is organized as follows. In Section 2, we describe the features of the UFO format as a stand-alone Python module, while Section 3 addresses the automation of writing an UFO model through FeynRules. Section 4 is dedicated to the UFO features beyond tree level and in Section 5, we provide an example of how to implement a model containing non-trivial Lorentz structures with the help of FeynRules into MadGraph 5. Our conclusions are drawn in Section 6. In this paper, we have presented a new model format for matrix-element generators, the Universal FeynRules Output (UFO) format. While most of the present generators have implicit assumptions on the color and/or Lorentz structures appearing in the different interaction vertices of a given model, the UFO format has been designed to go beyond these constraints, by being agnostic of any, even unforeseen, restrictions. Indeed, unlike the more traditional table-based model formats (as used by many Monte Carlo codes), the UFO represents all the information about a model terms of abstract Python classes that can accommodate any (reasonable) particle physics model. As an example, despite the fact that so far only color singlet, triplet, sextet and octet particles have been implemented into the UFO format, the extension to more exotic representations of the QCD gauge group is in principle straightforward, without requiring any change to the UFO format itself. A similar change would be very hard to perform in some of the existing table-based model formats. Finally, we emphasize that the format gives a full support to Les Houches accord conventions for model parameters and we also illustrate how it could be extented in the context of the next-to-leading order tools, including, e.g., counterterms and the so-called R 2 terms. Presently, the UFO format is already used by the MadGraph version 5 and GoSam generators and will be used in a near future by Herwig++.

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


IO-Lite: a unified I/O buffering and caching system This article presents the design, implementation, and evaluation of IO-Lite, a unified I/O buffering and caching system for general-purpose operating systems. IO-Lite unifies all buffering and caching in the system, to the extent permitted by the hardware. In particular, it allows applications, the interprocess communication system, the file system, the file cache, and the network subsystem to safely and concurrently share a single physical copy of the data. Protection and security are maintained through a combination of access control and read-only sharing. IO-Lite eliminates all copying and multiple buffering of I/O data, and enables various cross-subsystem optimizations. Experiments with a Web server show performance improvements between 40 and 80% on real workloads as a result of IO-Lite. For many users, the perceived speed of computing is increasingly dependent on the performance of networked server systems, underscoring the need for high-performance servers. Unfortunately, general-purpose operating systems provide inadequate support for server applications, leading to poor server performance and increased hardware cost of server systems.One source of the problem is lack of integration among the various input-output (I/O) subsystems and applications in general-purpose operating systems. Each I/O subsystem uses its own buffering or caching mechanism, and applications generally maintain their own private I/O buffers. This approach leads to repeated data copying, multiple buffering of I/O data, and other performance-degrading anomalies. For many users, the perceived speed of computing is increasingly dependent on the performance of networked server systems, underscoring the need for high-performance servers. Unfortunately, general-purpose operating systems provide inadequate support for server applications, leading to poor server performance and increased hardware cost of server systems. This article presents the design, implementation, and evaluation of IO-Lite, a unified buffering and caching system for general-purpose operating systems. IO-Lite improves the performance of servers and other I/Ointensive applications by eliminating all redundant copying and multiple buffering of I/O data, and by enabling optimizations across subsystems.. Experimental results from a prototype implementation in FreeBSD show performance improvements between 40 and 80% over an already aggressively optimized Web server without IO-Lite, both on synthetic workloads and on real workloads derived from Web server logs. IO-Lite also allows the efficient support of CGI programs without loss of fault isolation and protection. Further results show that IO-Lite reduces memory requirements associated with the support of large numbers of client connections and large bandwidth-delay products in Web servers by eliminating multiple buffering, leading to increased throughput. To provide a basis for comparison with related work, we examine how existing and proposed I/O systems affect the design and performance of a Web server. We begin with the standard UNIX (POSIX) I/O interface, and go on to more aggressively optimized I/O systems proposed in the literature. In state-of-the-art, general-purpose operating systems, each major I/O subsystem employs its own buffering and caching mechanism. In UNIX, for instance, the network subsystem operates on data stored in BSD mbufs or the equivalent System V streambufs, allocated from a private kernel memory pool. The mbuf (or streambuf) abstraction is designed to efficiently support common network protocol operations such as packet fragmentation/reassembly and header manipulation.. The UNIX file system employs a separate mechanism designed to allow the buffering and caching of logical disk blocks (and more generally, data from block-oriented devices). Buffers in this buffer cache are allocated from a separate pool of kernel memory.. In older UNIX systems, the buffer cache is used to store all disk data. In modern UNIX systems, only file system metadata are stored in the buffer cache; file data are cached in VM pages, allowing the file cache to compete with other virtual memory segments for the entire pool of physical main memory.. No support is provided in UNIX systems for buffering and caching at the user level. Applications are expected to provide their own buffering and/or caching mechanisms, and I/O data are generally copied between OS and application buffers during I/O read and write operations. 1 The presence of separate buffering/caching mechanisms in the application and in the major I/O subsystems poses a number of problems for I/O performance:. (1) Redundant data copying: Data copying may occur multiple times along the I/O data path. We call such copying redundant, because it is not necessary to satisfy some hardware constraint. Instead, it is imposed by the system's software structure and its interfaces. Data copying is an expensive operation, because it generally proceeds at memory rather than CPU speed and it tends to pollute the data cache.. (2) Multiple buffering: The lack of integration in the buffering/caching mechanisms may require that multiple copies of a data object be stored in main memory. In a Web server, for example, a data file may be stored in the file system cache, in the Web server's buffers, and in the send buffers of one or more connections in the network subsystem. This duplication reduces the effective size of main memory, and thus the size and hit rate of the server's file cache.. (3) Lack of cross-subsystem optimization: Separate buffering mechanisms make it difficult for individual subsystems to recognize opportunities for optimizations. For example, the network subsystem of a server is forced to recompute the Internet checksum each time a file is being served from the server's cache, because it cannot determine that the same data are being transmitted repeatedly. IO-Lite is implemented as a loadable kernel module that can be dynamically linked to a slightly modified FreeBSD 2.2.6 kernel. A runtime library must be linked with applications wishing to use the IO-Lite API. This library provides the buffer aggregate manipulation routines and stubs for the IO-Lite system calls.

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


A deep HMM model for multiple keywords spotting in handwritten documents Abstract In this paper, we propose a query by string word spotting system able to extract arbitrary keywords in handwritten documents, taking both segmentation and recognition decisions at the line level. The system relies on the combination of a HMM line model made of keyword and non-keyword (filler) models, with a deep neural network that estimates the state-dependent observation probabilities. Experiments are carried out on RIMES database, an unconstrained handwritten document database that is used for benchmarking different handwriting recognition tasks. The obtained results show the superiority of the proposed framework over the classical GMM-HMM and standard HMM hybrid architectures. Recently, several systems for spotting words in unconstrained handwritten documents have been developed [1] [2] [3] [4] [5] [6] [7] . Such word spotting systems aim at detecting and recognizing the queried words in document images. They can be applied simply for querying textual handwritten documents, but such systems may also be a component for indexing handwritten document databases by spotting the multiple keywords on which indexation is performed, following the popular bag of word indexation scheme [8] .. Formally, one can distinguish word spotting approaches and keyword spotting approaches. The former aims at detecting a single word in a collection of document images to retrieve the subset of document images that contains this specific word. On the contrary, the latter aims at detecting, in a single document, a set of informative words that allow to predict its content or its category using the popular bag of words paradigm, for example. These later approaches are used for automatic document categorisation [8, 9] for which a reduced lexicon of keywords is needed so as to discriminate between a set of predefined categories of documents. In the literature, most of the word spotting approaches follow the former approach [1] [2] [3] [4] [5] [6] [7] , but very few of them are designed for multiple keywords spotting [Hidden Ref] Even if the two tasks (word spotting vs. keyword spotting) are used in a different context, they rely on the same handwriting detection/recognition methods and both can be used to perform a quick, writer-independent detection and identification of words in document images.. Word spotting approaches proposed in the literature fall into the two following categories: On the one hand, imagebased methods, also known as ''query-by-example'', operate through the image representation of the words [1, [10] [11] [12] . On the other hand, recognition-based methods, or ''query-by-string'' methods, operate with an ASCII representation of the keywords [2, 4, 6, 8] . The first approach has the major drawback to be writer-dependent since it is based on a matching distance between the query image and the word images in the document. It is, therefore, limited to single writer applications and cannot be used for contentbased document categorization. On the contrary, recognition-based approaches are not limited to a single writer, but this is obtained at the expense of a more complex matching process, derived from conventional handwriting recognition methods. They are thus suitable for either document image retrieval or document image categorization.. Recognition-based word spotting approaches have to deal with four main issues: text line detection, text line segmentation into words, word recognition, and rejection of word hypotheses that do not match the query. A first strategy is based on the sequential application of these four steps, as in [4] . In this work, text lines are segmented into words using heuristics and a distance criterion, then words are recognized, and finally word hypotheses are spotted using normalized scores. The major drawback of this strategy is that the word segmentation errors are often irreversible and will, therefore, affect significantly the recognition performance. Moreover, the approach presented in [4] is holistic, so the system is not able to spot words that are not present in the training set. Also, the decision rule to accept or reject a word hypothesis, which is the core of the approach, is difficult to design as it is datadependent.. A second strategy performs every steps in one single global dynamic programming-based optimization process that carries out segmentation/recognition/rejection decisions at the line level, using a line model able to describe both the keywords and the non-keywords [7, 13, 14] . In [7] , a line-based HMM word spotting system is applied to handwritten documents. 1 The approach is based on a line model made of a left and right ''filler'' model surrounding the keyword model. Line decoding based on Viterbi dynamic programming is performed twice: with and without the keyword, leading to two recognition scores. The likelihood ratio of the two scores allows to decide whether the line contains the keyword or not. The main drawback of this approach is its limited local discriminative abilities as the Gaussian mixture 0model used to compute emission probabilities is trained in a non-discriminative way.. However, it has been shown that embedding a discriminative stage in HMM model can significantly improve the recognition performance. Discrimination between models can be introduced using either discriminative training [15] [16] [17] , or by replacing the GMM classifier by a discriminative classifier such as a SVM [18, 19] or a neural network [20] [21] [22] . In this study, we propose to combine the modeling ability of HMMs with the discriminative ability of a deep neural network architectures to design an efficient ''query by string'' spotting system that will operate at the line level. This is an extension of our preliminary work [Hidden ref] , where the fully generative GMM-HMM architecture is now replaced by the hybrid deep HMM architecture that significantly improves the performance. We also provide a comparison between pure HMM, standard hybrid MLP HMM, and deep HMM approaches, using different feature sets and larger lexicon sizes. We finally show that the deep HMM architecture provides the best results, while avoiding the tedious design of an efficient handcrafted feature set dedicated to handwritten word recognition.. When compared with previous word spotting systems, our approach exhibits several advantages. Firstly, the system is lexicon-free, i.e., it is not restricted to spot some specific keywords for which the system is tuned during a preliminary training stage, but it can rather spot any arbitrary keywords. Second, the system is segmentation-free, i.e., text lines are not required to be segmented into words. Third, it embeds a discriminative classifier which outperforms the standard Gaussian mixture model. Fourth, the system is able to learn some discriminative features from the raw data. To the best of our knowledge, it is the first time such hybrid HMM/DNN architecture is applied on a handwriting recognition task. Such a deep HMM architecture benefits from both modeling and discriminative skills of these two models. We show on the French public incoming mail RIMES database [23] that this deep HMM architecture significantly improves the keyword spotting results when compared with the pure HMM model. In addition, the system is able to spot multiple keywords at a time through a competitive modeling of keywords by introducing a lexicon of keyword in the model. This is a way to cope with the limitation of several keyword-spotting approaches, especially the one presented in [7] , which is only able to spot one keyword at a time. To spot multiple keywords, [7] proposes to iterate the spotting process for each keyword of the keyword lexicon, but the authors do not discuss how to solve conflicts when two detected keywords overlap. This paper is organized as follows: we introduce our generic statistical text line model in Sect. 2. In Sect. 3, we describe the deep HMM architecture. An overview of the whole system is described in Sect. 4. In Sect. 5, we report the evaluation of our system on a multiple keywords spotting task. Conclusion and future works are given in Sect. 6. It is used to model any word that does not belong to the KL, namely the OKL. It is an ergodic model that accounts for any sequence of alphanumeric characters, including uppercase and lowercase letters, digits, and punctuation. Keywords in KL may occur with a lower frequency than words in OKL. This is why the two models compete in parallel in the line model, with parameter G standing for the proportion of relevant information that can appear in the text. Finally, the line model concatenates any KL or OKL words with a white space model before going to the next possible word in the line through the loopy backward transition. The model loops until the end of line is reached. Let us emphasize that as the model simulates a competition between the OKL and each word of the KL, it prevents from the conflicts that may occur between two keywords, or between a keyword and the OKL. It also avoids the use of numerous thresholds for accepting/rejecting the keywords hypotheses. The setting of parameter G is discussed in Sect. 5.2. As one can see, the handwritten modeling is text line oriented, and fits particularly well with the generative modeling of hidden Markov models (HMM). Indeed, HMM is a well known and established probabilistic tool in sequence modeling [25] . Thanks to an efficient embedded learning through Baum-Welch algorithm, HMM has been widely used for the recognition of handwritten words [26] or sentences [9] . However, despite its appealing generative modeling ability, HMM suffers from a poor discrimination ability at the local frame level. Indeed, the local likelihood Pðojq i Þ that stands for the emission probability of observation o when the model is in state q i is modeled using Gaussian mixture models (GMM) that are learned in a generative way. As a consequence, GMM of several states may overlap and are not trained to discriminate between these states. Furthermore, estimating a GMM in high dimension requires a huge amount of training data and one generally limits the dimension of the feature space to prevent from this difficulty. To overcome these limitations, many works have successfully proposed to replace the GMM by a discriminative classifier, most of the time a neural network [20-22, 27, 28] , but SVM has also been proposed [29] . In this paper, we propose to replace the generative stage of HMM by a discriminative stage based on a deep neural network (DNN). This kind of architecture has recently been applied for speech recognition in [30, 31] and has shown good performance. As depicted on Fig. 2 , two kinds of information must be learnt: the character models (black circles) and the transition probabilities between them (black and gray arrows). Transition probabilities between characters of the KL model are all equal to one as they stand for a lexicondriven recognition. Transition probabilities of the OKL model must be set to build a shallow language model that stands for a lexicon free recognition. Therefore, they are learnt from a general large lexicon. Character models are hybrid left-right DNN-HMM models, where the DNN provides a posteriori probabilities Pðq i joÞ that the frame belongs to the HMM state q i . They require a discriminative training stage on locally labeled data (at the frame level) for the DNN part, while state transition probabilities can be learnt as it is the case for standard HMM using the BaumWelch algorithm. The main difficulty in training a DNN architecture is to provide labeled training data at the frame level. This is discussed further in the next section. A multiple keyword spotting system in handwritten unconstrained documents has been introduced. It relies on a global modeling based on HMMs allowing a dual representation of the relevant and the irrelevant information. As we model an entire line of text, a global segmentation/ recognition/rejection decision is taken at the line level, avoiding the word segmentation problems. In order to strongly discriminate the local information, an efficient deep neural network has been introduced. The decoding stage of the proposed framework is vocabulary-independent, meaning that the keyword lexicon is independent of the training process and can be set given the application needs.. Results on the RIMES database illustrate the power of the combination scheme. The best results are obtained with the deep architecture trained on raw data, which demonstrates the ability of this architecture to automatically infer high-level representation of handwriting.. Future works might investigate alternative learning strategies, such as HMM discriminative learning or conditional random fields (CRF), to propose a fully discriminant method, from the input data to the sequence label. Knowing the language of the documents, possible improvement might also result in the use of language models to enhance the performance. Regarding the target application, the proposed approach could also be extended to the search for regular expressions including joker characters '?' and 'H', for example, by searching for the Fig. 11 Recall-precision results for all combinations with a 500-keyword lexicon size sequence ''cancH'' to spot any of the words ''cancel'', ''cancellation'' or ''cancelled''. We believe it could be of interest for applications such as automatic document categorization or indexation. Fig. 12 Example of a multiple keywords spotting result. The lexicon is listed on the lower part of the figure, with two words that do not appear in the document (''lampadaire'' and ''novembre''). No confusion is made but one utterance of each word, Madame and facture, is missed. In this example, recall is 8=10 ¼ 80 % and precision is 10=10 ¼ 100 %

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


Performance analysis of E-shaped dual band antenna for wireless hand-held devices Due to evolution in wireless applications, the high performance dual band handsets were blooming in the market. In this paper, a compact dual band E shaped planar inverted F antenna is presented, which is suitable for GSM application in handheld devices. Here, antenna is described for GSM (900 MHz and 1800 MHz), which covers (831 MHz -973 MHz and 1700 MHz -1918 MHz) 10 dB bandwidth. The designs and simulations are performed using Finite Difference Time Domain (FDTD) technique based General Electro Magnetic Simulator -Version 7.9 (GEMS-7.9). The performance analysis of E-shaped antenna also includes real world interaction between antenna element and Spherical human head model composed of three layers, skin, skull and brain. The simulated results including, S-Parameter, radiation pattern, current distributions and Specific absorption rate, thermal distributions have validated the proposed E shaped antenna design as useful for compact mobile phone devices with comparatively low average Specific Absorption Rate in market. Over last decade, the evolution of wireless communication devices has increased rapidly to fulfill the requirement of high performance mobile portable devices which includes smart phones, Tablets, Notebooks etc. The handset antenna which, plays a transceiver role in mobile phone handset, should be optimized for better performance. In addition to the electrical requirements, the design of a handset antenna has to take into account the resulting exposure of the user. However, there has also been increase in concern regarding ill effects of Radio Frequency (RF) emitted by mobile phone antennas. These adverse health effects can be assessed by measuring power coupled to human tissue and thermal change, by using dosimetry called Specific Absorption Rate. The international commission on non-ionizing radiation protection and IEEE provides radiation level limit for the consumer products in free space. Now a days variety of multiband internal antennas are reported, which are highly preferred for slim mobile phone due to their compactness [2, 7] . The following literature survey shows the implication of dual band antenna in mobile phone communications. Dual band antenna (MIMO) can be used for LTE band (0.746 -0.787 GHz) and the M-WiMAX (2.5 -2.69 GHz). It consists of two identical elements, each of which is 15 × 13.25 mm 2 . The minimum separation between two elements is 0.5 mm [14] . Novel coplanar waveguide fed planar monopole antenna with dual-band operation for Wi-Fi and 4G LTE. It's operating bands consists of 2.3 -3.0 GHZ, 4.7 to 5.9 GHz are achieved by carefully optimizing the position and size of a smiling slot. Antenna is characterized in terms of return loss, radiation pattern, and measurement in anaerobic champers [16] .. A connected E-shaped and U-shaped dual band patch antenna for operating frequencies 2.46 GHz and 4.9 GHz is designed and the bandwidth variation is analyzed by changing the height of substrate, bridge width etc. for different wireless LAN applications. The simulation studies are performed using GEMS simulation software [21] . A compact planar inverted E-shaped dual band antenna is designed over PCB board of 10 × 5 × 4 mm 3 and good performance characteristics observed at 2.4 GHz and 5.5 GHz makes this antenna suitable for mobile device applications [22] . In many commercial wireless applications, PIFA and PMA are extensively used because it is simple, compact with good radiation pattern with sufficient Bandwidth. Normally, the electrical characteristics of handset antenna mainly depend on the ground plane on which the antenna is fabricated and also on the phone casing. The bandwidth of the antenna element increases, if the casing also resonates at operating frequency. Bandwidth and radiation characteristics make the 2G dual band antenna suitable to be used for Wi-Fi and 4G LTE applications in the 2.4 GHz to 2.7 GHz band and also 5.1 GHz to 5.875 GHz band [13] . Currently, GSM (Global System for Mobile Communication) is a standard protocol for digital mobile communication used for phone calls and transmission of text messages, which is addressed in this paper [3] .. In this paper, E shaped PIFA with dual band 900/1800 MHz has been introduced [2] . The design considerations and simulated results for the Proposed E shaped antenna such as, return loss, radiation pattern and current distributions were also analyzed. Further, the performance analysis of E shaped antenna is described by considering the real world environment in which, mobile phone is expected to operate. The near field environment are created with mobile phone model which includes antenna element, battery, exterior plastic shell and three layered human head model. Simulation and performance analysis of proposed E shaped antenna are performed using FDTD based GEMS simulator [11] .. Section Numerical modelling includes the modeling technique and the modeling of antenna and near field interactive devices. Section Performance analysis of antenna in free space involves parametric analysis of E shaped antenna and current distributions in free space. Section Influence of near field on antenna performance discusses the influence of near field environment when antenna is in close proximity to a human head model. Finally, section Conclusion provides conclusion. In this paper, a compact dual band E shaped antenna with comparatively low average SAR and better Bandwidth is introduced for GSM application in handheld devices. Simulations were performed for different scenarios. The antenna in free space and the handset device placed close to a user head model. The return loss was better than 25 dB at 900 MHz and 1800 MHz with bandwidth of 142 MHz and 218 MHz in the lower band and in the upper band respectively as compared to existing antennas. The 10 dB bandwidth of proposed E shaped antenna covers GSM 850/ GSM 900/ GSM 1800 bands. Further, the average specific absorption rate, due to human interaction with handset is well below the specified limit. The obtained results, including surface current distributions, S-parameters, radiation patterns, SAR values, have demonstrated that the proposed antenna design is suitable for GSM and 4G network and is able to achieve good performance for real world scenario.

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


Market manipulation with outside incentives Abstract Much evidence has shown that prediction markets can effectively aggregate dispersed information about uncertain future events and produce remarkably accurate forecasts. However, if the market prediction will be used for decision making, a strategic participant with a vested interest in the decision outcome may manipulate the market prediction to influence the resulting decision. The presence of such incentives outside of the market would seem to damage the market's ability to aggregate information because of the potential distrust among market participants. While this is true under some conditions, we show that, if the existence of such incentives is certain and common knowledge, in many cases, there exist separating equilibria where each participant changes the market probability to different values given different private signals and information is fully aggregated in the market. At each separating equilibrium, the participant with outside incentives makes a costly move to gain trust from other participants. While there also exist pooling equilibria where a participant changes the market probability to the same value given different private signals and information loss occurs, we give evidence suggesting that two separating equilibria are more natural and desirable than many other equilibria of this game by considering domination-based belief refinement, social welfare, and the expected payoff of either participant in the game. When the existence of outside incentives is uncertain, however, trust cannot be established between players if the outside incentive is sufficiently large and we lose the separability at equilibria. Prediction markets are powerful tools created to aggregate information from individuals about uncertain events of interest. As a betting intermediary, a prediction market allows traders to express their private information by wagering on event outcomes and rewards their contributions based on the realized outcome. The reward scheme in a prediction market is designed to offer incentives for traders to reveal their private information. For instance, Hanson's market scoring rule (MSR) [18] incentivizes risk-neutral, myopic traders to truthfully reveal their probabilistic estimates by ensuring that truthful betting maximizes their expected payoffs. Substantial empirical work has shown that prediction markets produce remarkably accurate forecasts [1, 4, 11, 13, 14, 29] .. In many real-world applications, the ultimate purpose to adopt prediction markets is to inform decision making. If a forecast gives early warning signs for a suboptimal outcome, companies may want to take actions to try to influence and improve the outcome. For example, if the forecasted release date of a product is later than expected, the company may want to assign more resources to the manufacturing of the product. If the box office revenue for a movie is forecasted to be less than expected, the production company may decide to increase its spending on advertising for the movie. In 2005 and 2006, GE Energy piloted what was called Imagination Markets where employees traded securities on new technology ideas and the ideas with the highest average security price during the last five days of the trading period were awarded research funding [22] . Subsequently, the GE-wide Imagination Market was launched in 2008. In these scenarios, little is understood of how the decision making process affects the incentives for the participants of the prediction market. If a market participant stands to benefit from a particular decision outcome, then he/she may have conflicting incentives from inside and outside of the market. Moreover, when the potential outside incentive is relatively more attractive than the payoff from inside the market, the participant may have strong incentives to strategically manipulate the market probability and deceive other participants.. We use flu prevention as a specific motivating example. Suppose that in anticipation of the upcoming flu season, the US Centers for Disease Control and Prevention (CDC) would like to purchase an appropriate number of flu vaccines and distribute them before the flu season strikes. To accomplish this, the CDC could run a prediction market to generate a forecast of the flu activity level for the upcoming flu season, and decide on the number of flu vaccines to purchase and distribute based on the market forecast. In this case, suppliers of flu vaccines, such as pharmaceutical companies, may have conflicting incentives inside and outside of the market. A pharmaceutical company can maximize its payoff within the market by truthfully reporting its information in the market or increase its profit from selling flu vaccines by driving up the final market probability. This outside incentive may cause the pharmaceutical company to manipulate the market probability in order to mislead the CDC about the expected flu activity level.. When participants have outside incentives to manipulate the market probability, it is questionable whether information can be fully aggregated in the prediction market, leading to an accurate forecast. In this paper, we investigate information aggregation in prediction markets when such outside incentives exist. We characterize multiple perfect Bayesian equilibrium (PBE) of our game and try to identify a desirable equilibrium among them. In particular, many of these equilibria are separating PBE, where the participant with the outside incentive makes a costly move in order to credibly reveal her private information and information is fully aggregated at the end of the market. Our results are summarized in the next section. In a prediction market, participants may have incentives from inside or outside of the market to manipulate the market probability. Our work analyzes the strategic behavior of market participants due to outside incentives. In the literature, the work by Dimitrov and Sami [12] is the closest to our own. They study a model of two MSR prediction markets for correlated events with two participants, Alice and Bob. Alice trades in the first market, and then trades in the second market after Bob. When considering the first market, Alice has an outside incentive because her trade in the first market can mislead Bob and she can obtain a higher profit in the second market by correcting Bob's mistake. In our model with only one market, the first participant also has an outside incentive, but the incentive is a payoff that monotonically increases with the final market probability. In addition, Dimitrov and Sami [12] focus on deriving properties of the players' equilibrium payoffs, whereas we explicitly characterize equilibria of our game and analyze the players' payoffs at these equilibria.. Even if there is no outside incentive, a participant in a prediction market may still have incentive from within the market to behave strategically. For instance, if a participant has multiple opportunities to trade in a MSR prediction market, he may choose to withhold information in the earlier stages in order to make a larger profit later on, causing information loss in the process. Chen et al. [5] and Gao et al. [16] show that the equilibria and information revelation in such settings depend on the structure of the participants' private information. Iyer et al. [20] and Ostrovsky [24] focus on studying information aggregation at any PBE of a prediction market instead of directly characterizing the equilibria. Ostrovsky [24] analyzes an infinite-stage, finite-player market game with risk-neutral players. He characterized a condition under which the market price of a security converges in probability to its expected value conditioned on all information at any PBE. Iyer et al. [20] extend the setting of Ostrovsky [24] to risk-averse players and characterized the condition for full information aggregation in the limit at any PBE. In this work, to isolate the effect of outside incentives, we focus on settings where participants do not have incentives inside the market to manipulate the market probability.. Some recent studies consider incentives for participants to misreport their probability estimates in different models of information elicitation and decision making. Shi et al. [27] consider a setting in which a principal elicits information about a future event while participants can take hidden actions outside of the market to affect the event outcome. They characterize all proper scoring rules that incentivize participants to honestly report their probability estimates but do not incentivize them to take undesirable actions. Othman and Sandholm [25] pair a scoring rule with a decision rule. In their model, a decision maker needs to choose an action among a set of alternatives; he elicits from an expert the probability of a future event conditioned on each action being taken; the decision maker then deterministically selects an action based on the expert's prediction. They find that for the max decision rule that selects the action with the highest reported conditional probability for the event, no scoring rule strictly incentivizes the expert to honestly report his conditional probabilities. Chen et. al. [7] and Chen and Kash [8] extend the model of Othman and Sandholm to settings of stochastic decision rules with a single expert and decision markets with multiple experts respectively and characterized all scoring rules that incentivize honest reporting of conditional probabilities. The above three studies [7, 8, 25] assume that experts do not have an inherent interest in the decision and they derive utility only from the scoring rule payment. Boutilier [2] however considers the setting in which an expert has an inherent utility in the decision and develop a set of compensation rules that when combined with the expert's utility induces proper scoring rules. Our work in this paper does not intend to design mechanisms to achieve good incentive properties in the presence of outside incentives. Instead, we study the impact of outside incentives on trader behavior and information aggregation in prediction markets using standard mechanisms.. In this paper, we model a participant's outside incentive as a function of the final market price. This is to capture scenarios where the participant's utility will be affected by some external decision, which will be made based on the final market price but prior to the realization of the event outcome. In some other scenarios, however, a participant may simply have preferences over event outcomes, i.e. the participant's utility is state-dependent. For example, a pharmaceutical company may make more profit when the flu activity level is widespread than when it is sporadic. In such scenarios, the participant with state-dependent utility, if risk averse, may trade in the prediction market for risk hedging and potentially affect the information aggregation in the market. We assume that all participants are risk neutral and hence this paper does not capture the risk hedging setting. If the participant with state-dependent utility is risk neutral, her payoff inside the market is independent of her utility outside of the market. The problem then reduces to market manipulation without outside incentives studied by Chen et al. [5] , Gao et al. [16] , and Ostrovsky [24] .. There are some experimental and empirical studies on price manipulation in prediction markets due to incentives from outside of the market. The studies by Hansen et al. [17] and by Rhode and Strumpf [26] analyze historical data of political election betting markets. Both studies observe that these markets are vulnerable to price manipulations because media coverage of the market prices may influence the population's voting behavior. For instance, Hansen et al. describe an email communication in which a party encouraged its members to acquire contracts for the party in order to influence the voters' behaviors in the 1999 Berlin state elections, and it had temporary effects on the contract price. Manipulations in these studies were attempts not to derive more profit within the market but instead to influence the election outcome. These studies inspire us to theoretically study price manipulation due to outside incentives.. In a similar spirit, Hanson et al. [19] conducted a laboratory experiment to simulate an asset market in which some participants have an incentive to manipulate the prices. In their experiment, subjects receive different private information about the common value of an asset and they trade in a double auction mechanism. In their Manipulation treatment, half of the subjects receive an additional payoff based on the median transaction prices, so they (i.e. manipulators) have an incentive to raise the prices regardless of their private information. Hanson et al. observed that, although the manipulators attempted to raise the prices, they did not affect the information aggregation process and the price accuracy because the non-manipulators accepted trades at lower prices to counteract these manipulation attempts. This experiment closely resembles our setting because the incentive to manipulate is a payoff as a function of the market prices. However, there are two important differences. First, the additional payoff depends on the transaction prices throughout the entire trading period whereas in our setting the additional payoff depends only on the final market price. Second, in Hanson's experiment, although the existence of manipulators is common knowledge, the identities of these manipulators are not known. In our model, we assume that the manipu-lators' identities are common knowledge. These differences may account for the different results in the two settings where manipulations did not have significant effect in Hanson's experiment whereas in our model there exist pooling equilibria where manipulations can cause information loss. In particular, the separating equilibria in our setting may not be achievable in Hanson's experiment because the anonymous manipulators cannot establish credibility with the other participants.. There are also experiments studying the effects of price manipulations on the information aggregation process in prediction markets without specifying the reasons for such manipulations. Camerer [3] tried to manipulate the price in a racetrack parimutuel betting market by placing large bets. These attempts were unsuccessful and he conjectured the reason to be that not all participants tried to make inferences from these bets. In their laboratory experiment, Jian and Sami [21] set up several MSR prediction markets where participants may have complementary or substitute information and the trading sequence may or may not be structured. They found that previous theoretical predictions of strategic behavior by Chen et al. [5] are confirmed when the trading sequence is structured. Both studies suggest that whether manipulation can have a significant impact on price accuracy depends critically on the extent to which the participants know about other participants and reason about other participants' actions. In our setting, we assume that all information is common knowledge except each participant's private information, so manipulation can have a significant impact on price accuracy because participants can make a great amount of inference about each other and about the market price.. When separating PBE of our game exist, our game has a surprising connection to Spence's job market signaling game [28] . In the signaling game, there are two types of workers applying for jobs. They have different productivity levels that are not observable and they can choose to acquire education, the level of which is observable. Spence shows that, there exist separating PBE where the high productivity workers can use costly education as a signal to the employers in order to distinguish themselves from the low productivity workers. In our setting, we derive a similar result that at a separating PBE, one type of the first participant takes a loss by misreporting her information as a signal to the second participant in order to distinguish herself from her other type. We discuss this connection in detail in Sect. 6.

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


Managing Burstiness and Scalability in Event-Driven Models on the SpiNNaker Neuromimetic System Abstract Neural networks present a fundamentally different model of computation from the conventional sequential digital model, for which conventional hardware is typically poorly matched. However, a combination of model and scalability limitations has meant that neither dedicated neural chips nor FPGA's have offered an entirely satisfactory solution. SpiNNaker introduces a different approach, the "neuromimetic" architecture, that maintains the neural optimisation of dedicated chips while offering FPGA-like universal configurability. This parallel multiprocessor employs an asynchronous event-driven model that uses interrupt-generating dedicated hardware on the chip to support real-time neural simulation. Nonetheless, event handling, particularly packet servicing, requires careful and innovative design in order to avoid local processor congestion and possible deadlock. We explore the impact that spatial locality, temporal causality and burstiness of traffic have on network performance, using tunable, biologically similar synthetic traffic patterns. Having established the viability of the system for real-time operation, we use two exemplar neural models to illustrate how to implement efficient event-handling service routines that mitigate the problem of burstiness in the traffic. Extending work published in ACM Computing Frontiers 2010 with on-chip testing, simulation results indicate the viability of SpiNNaker for large-scale neural modelling, while emphasizing the need for effective burst management and network mapping. Ultimately, the goal is the creation of a library-based development system that can translate a high-level neural model from any description environment into an efficient SpiNNaker instantiation. The complete system represents a general-purpose platform that can generate an arbitrary neural network and run it with hardware speed and scale. Neural networks present an emphatically different model of computation from the conventional sequential digital model. This make it unclear, at best, whether running neural networks on industry-standard computer architectures represents a good, much less an optimum, implementation strategy. Such concerns have become particularly pressing with the emergence of large-scale spiking models [22] attempting biologically realistic simulation of brain-scale networks. While dedicated hardware is thus becoming increasingly attractive [28] , it is also becoming clear that a fixedmodel design would be a poor choice [55] , given that just as there is debate over the architectural model in the computational community, there is no consensus on the correct model of the neuron in the biological community [23] . Our proposed solution is the "neuromimetic" architecture: a system whose hardware retains enough of the native parallelism and asynchronous event-driven dynamics of "real" neural systems to be an analogue of the brain, enough general-purpose programmability to experiment with arbitrary biological and computational models. This neuromimetic device, SpiNNaker, is a scalable universal neural network chip that for the first time provides a hardware platform for neural model exploration able to support large-scale networks with millions of neurons.. The SpiNNaker chip ( Fig. 1 ) is a plastic platform containing configurable blocks of generic processing and connectivity whose structure and function are designed and optimised for neural computation. This distinguishes it strongly from completely general-purpose FPGA's and also from dedicated devices that offer a fixed selection of neural models. The primary features of the neuromimetic architecture are: Native Parallelism: There are multiple processors per device, each operating completely independently from each other. Event-Driven Processing: An external, self-contained, instantaneous signal drives state change in each process, which contains a trigger that will initiate or alter the process flow. Incoherent Memory: Any processor may modify any memory location it can access without notifying or synchronising with other processors. Incremental Reconfiguration: The structural configuration of the hardware can change dynamically while the system is running.. These characteristics mean SpiNNaker has an entirely different model of computation from the conventional sequential one. In ACM Computing Frontiers 2010, we used SpiNNaker simulations as an example to illustrate the differences between asynchronous and conventional parallel processing [41, 51] . Here, we demonstrate the example in practice with additional models tested on the physical hardware. By implementing an event-driven model directly in hardware, SpiNNaker comes considerably closer to biological neural computation than clocked digital devices. At the same time it brings into sharp relief the major differences from synchronous computation that place a much greater programming emphasis in event-driven computing on the unpredictability of the flow of control. This important programming difference underscores the urgency for event-driven development tools, which at this point are scarce to nonexistent. It is clear that most development tools today have an underlying synchronous assumption, which in addition to complicating development, tends to influence programmers' conceptual thinking-thus perpetuating the synchronous model. For example, even at a most basic level, the idea of programming in a language is fundamentally synchronous and sequential: it is confusing and difficult to express event dynamics in a language-like form. Possibly a development environment that moved away from a linguistic model towards graphically-orientated development, for example using Petri nets, might make it easier to develop for event-driven systems. If asynchronous dynamics is by definition a necessary feature of true parallel processing, perhaps the linguistic model is one reason why developing effective parallel programming tools has historically been difficult.. In the same way that the entire software model needs review, the hardware model for the neuromimetic architecture remains a work in progress. SpiNNaker involves various design compromises that future neuromimetic chips could improve upon. Most obvious is the use of (locally) synchronous ARM968 processors. Eventually it would be ideal to have each of the local programmable processors be themselves asynchronous. Meanwhile the interrupt mechanism in the ARM968 assumes a relatively slow interrupt rate. More forceful hardware could rectify this limitation. For example, if the vectored interrupt controller could directly vector the processor to the appropriate exception, bypassing the entry point processing, interrupt rate could increase while narrowing critical time windows. Such a system might also have completely independent working memory ("register") banks for each exception, as well as a common area to pass data between exception modes without memory moves. These kinds of features would be asking for data corruption in a synchronous model but become logical in the event-driven model.. How far should neural network chips go in directly implementing the model in hardware? For years the mesmerising concept of "direct implementation" has been popular, yet it is fundamentally a misconception: since the "actual" model of computing in the brain is unknown, there can be no certainty a chip is directly implementing anything. The SpiNNaker neuromimetic architecture provides a more realistic and useful answer: instead of trying to answer the question, build systems that can define the problem. From the models that have successfully run it is clear that SpiNNaker can support multiple, very different neural networks; how general this capability is remains an important question. We can define a generalised function pipeline that is adequate for most neural models in existence (Fig. 15 ). The pipeline model emerges from a consideration of what hardware can usually implement efficiently in combination with observations about the nature of neural models. Broadly, most neural models, at the level of the atomic processing operation, fall into 2 major classes, "sum-and-threshold" types, that accumulate contributions from parallel inputs and pass the result through a nonlinearity, and "dynamic" types, that use differential state equations to update internal variables. The former have the general form S j = T ( i w i j S i ) where S j is the output of the individual process, T is some nonlinear function, i are the input indices, w i j the scaling factors (usually, synaptic weights) for each input, and S i the inputs. The latter are systems with the general form. where E, F, and G are arbitrary functions, X is a given process variable, Y the other variables, and P various (constant) parameters. Meanwhile, SpiNNaker's processors can easily implement polynomial functions but other types, e.g. exponentials, are inefficient. In such cases it is usually easier to implement a look-up table with polynomial interpolation. Such a pipeline would already be sufficient for sum-and-threshold networks, which self-evidently are a (possibly non-polynomial) function upon a polynomial. It also adequately covers the righthand-side of differential equations: thus, to solve such equations, it remains to pass them into a solver. For very simple cases it may be possible to solve them analytically, Fig. 15 A general event-driven function pipeline for neural networks. The grey box is the SpiNNaker realisation but for the general case, the Euler method evaluation we have used appears to be adequate.. In principle, then, SpiNNaker can implement virtually any network. In practice, as the packet experiments show, traffic density sets upper limits on model size and speed. Burstiness in the generation of traffic may generate contention around the node that is injecting. This contention may lead to dropping packets at loads at which the network would operate flawlessly with non-causal traffic, but still significantly higher than the load required during regular operation of the system. In mitigation, causal traffic tends to self-throttle, because dropping of packets leads to a reduction of the packet generation rate. Another important discovery is that traffic burstiness affects the injection rate at which the network is forced to drop packets. The larger the burst length and the probability to trigger a burst are, the lower the generation rate at which the network starts dropping packets. This is because large bursts generate congestion around the injecting node, which can eventually spread to the whole network, forcing packets to be dropped at their source. We remark, however, that the simulated loads are more than three and a half times those required during regular operation of the system and that the spatial distribution of the traffic is utterly pessimistic. Careful analysis of the flow of execution on the SystemC model determined that the failure mode was the speed of the ISR: by 3 packets per update packets were arriving faster than the time to complete the Fast Interrupt (FIQ) ISR. In the hardware simulations, a similar analysis showed that network breakdown in the spiking models was happening due to receive buffer overflow. Some of this may be attributable to known inefficiencies in the queue implementation. Clearly, very efficient interrupt service routines, together with aggressive source-side output management, are essential under extreme loading conditions.. Careful management of memory variables is also an important consideration. Both models involve multiple associative memories and lookup tables. If speed is critical, these must reside in DTCM or ITCM, and this places a very high premium on efficient table implementations. If it is possible to compute actual values from a smaller fixed memory block this will often be a better implementation than a LUT per neuron.. Solving differential equations introduces a third consideration: time efficiency and accuracy. Most nonlinear differential equations have no analytic solution, but numerical methods are computationally complex. The Euler method we used is usually an acceptable tradeoff, but it does introduce a synchronous element into the model. Furthermore the time step limits simulation accuracy. It also places fixed, absolute upper bounds on the computation time per neuron.. Both models break down catastrophically if the packet traffic overwhelms the processors' ability to keep up. In the spiking model, this occurs when the neurons become excessively bursty. In the MLP model, this occurs when any one of the 3 component processes becomes disproportionately faster (i.e. simpler) than the others. Large network sizes exacerbate the problem in both cases. This issue appears to be fundamental in a truly concurrent processing system where individual processors operate asynchronously and independently. Finding effective ways to manage the problem, which does not arise in synchronous systems because of the predictable input timing relationships, is a critical future research topic.. Notwithstanding these challenges, we have now demonstrated the ability of SpiNNaker, even in a reduced test chip configuration, to run models of reasonable size (∼4,000 neurons). This represents only a start, with simple models. We are currently working on implementing larger-scale, more biologically realistic models that simulate major subsystems of the brain and are scalable across a wide range of model sizes. Such models will include heterogeneous neuron and synaptic types operating with the same simulation, and possibly at different levels of structural abstraction. Part of this work includes the creation of more model types to expand system-level libraries, notably voltage-gated NMDA synapses with time-dependent channel kinetics. Work on refining the packet processing, particularly in the host interface from SpiNNaker to the user, is also a major activity. We are conducting a systematic review and revision of the software model libraries, to streamline operation and improve "plug-in" development capability. This work provides improved support for full SpiNNaker chip, containing 18 cores and some enhanced features such as native support for atomic operations and debugging packets, which was delivered and began testing in May 2011. This chip will, obviously, support far larger models, and possibly more. There is evidence that in addition to neural models, SpiNNaker's parallel-processing architecture may find interesting uses outside the neural field, and thus we are investigating these where appropriate. Certainly, the emergence of such non-neural applications is an indication that SpiNNaker demonstrates important and possibly fundamental properties of parallel computing.. The pre-eminent feature of the software model, characteristic of native parallel computation, is modularisation of dependencies. This includes not only data dependencies (arguably, the usual interpretation of the term), but also temporal and abstractional ones. In other words, the model does not place restrictions on execution order between modules, or on functional support between different levels of software and hardware abstraction. Architecturally, the 3 levels of software abstraction distribute the design considerations between different classes of service and allow a service in one level to ignore the requirements of another, so that, for example, a Model Level neuron can describe its behaviour without having to consider how or even if a System Level service implements it. Structurally, it means that services operate independently and ignore what may be happening in other services, which from their point of view happen "in another universe" and only communicate via events "dropping from the sky", so to speak. Such a model accurately reflects the true nature of parallel computing and stands in contrast to conventional parallel systems that require coherence checking or coordination between processes.

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