Safety assessment of AltaRica models via symbolic model checking AltaRica is a language used to describe safety critical systems that has become a de-facto European industrial standard for Model-Based Safety Assessment (MBSA). However, even the most mature tool for the support for MBSA of AltaRica models, i.e. Dassault's OCAS, has several limitations. The most important ones are its inability to perform many analyses exhaustively, severe scalability issues, and the lack of model checking techniques for temporal properties.In this paper we present a novel approach for the analysis of AltaRica models, based on a translation into an extended version of the model checker NuSMV. The translation relies on a novel formal characterization of the Dataflow dialect of AltaRica used in OCAS. The translation is formally defined, and its correctness is proved. Based on this formal characterization, a toolset has been developed and integrated within OCAS, thus enabling functional verification and safety assessment with the state of the art techniques of NuSMV. The whole approach is validated by an experimental evaluation on a set of industrial case studies, which demonstrates the advantages of the proposed technique over the currently available tools. Safety-critical systems are traditionally subject to a high degree of authority, which mandates the application of suitable techniques for safety assessment (e.g., Fault Tree Analysis (FTA) [1, 2] or Failure Modes and Effects Analysis (FMEA)), to analyze the behavior of the system in presence of faults.. The dramatic increase in complexity of computer-based systems has motivated, in recent years, a growing industrial interest in model-based safety assessment (MBSA) methods. In contrast to traditional safety assessment, where each safety-significant event (e.g., a system hazard, or component failure mode) is subject to separate analysis, MBSA methods are based on a single "safety model" of a system, typically written in a suitable modeling language. Analyses with respect to particular safety-significant events are conducted on the basis of such "safety models" with a high degree of automation [3] . Many of the MBSA techniques allow the verification of the functional correctness of the system (e.g., with respect to functional safety requirements) as well as to assess system behavior in the presence of faults [4, 5, 6] . In particular, formal verification tools based on model checking have been extended to automate the generation of artifacts such as Fault Trees (FTs) and FMEA tables [7, 8, 9] .. AltaRica [10, 11] is a modelling language for MBSA, specifically developed by a consortium of French industrial and academic partners for safety assessment of industrial systems (see, e.g., [12, 13] ). AltaRica has been used in several projects by companies and consortia like Airbus, Alenia Aeronautica, Alstom Rail, Dassault Aviation, EADS, France Telecom, Schneider Electric, Thales, Total and Turbomeca, and has become a de-facto European industrial standard over the course of the last decade or so. In fact, to authors' knowledge, it is the only MBSA language that has been successfully used for certification of industrial safety-critical systems.. AltaRica is the modeling language used in Cecilia OCAS [13] (OCAS for short), a model-based safety assessment platform developed by Dassault Aviation. OCAS provides a graphical modelling environment, which allows us to describe dynamic transition systems and it is well understood and accepted by the engineers. OCAS is also equipped with different model analysis tools, including a trace simulator (able to generate possible evolutions of the system), and a sequence generator that is used to generate minimal cut sets [1, 2] . Interestingly, OCAS is the only MBSA tool that was accepted by regulatory agencies as a basis for certification of safety-critical systems. The tool was qualified to the requirements of DO-178b [14] , the industrial standard for software development and assurance in the aviation sector. OCAS demonstrated its usefulness for the architectural safety assessment of avionics systems, for example the OCAS analysis was the basis for the certification of the Flight Control System of Falcon 7x aircraft.. However, the size reached by industrial systems constantly increases the labor and costs in certification, and calls for increasingly automated and highly scalable techniques and tools. In particular, the analysis tools in OCAS are subject to some important limitations. First, some analyses are not able to perform an exhaustive space examination, and are not complete. For example, reachability analysis is bounded in depth; similarly, the OCAS sequence generator cannot explore nondeterministic instantaneous transitions, potentially leading to incomplete analysis results. Second, the OCAS sequence generator demonstrates limited scalability in presence of industrial-sized systems, hindering the generation of important artifacts such as Fault Trees. Finally, OCAS does not support the representation and analysis of temporal properties of AltaRica models, which makes model validation an extremely hard task.. In this paper we propose an approach that overcomes these limitations. The idea is to translate AltaRica models into HyDI [15] , one of the input languages of NuSMV [16] . NuSMV is a state-of-the-art symbolic model checker, providing cutting-edge model checking technologies such as Binary Decision Diagrams (BDD)-based [17] and SAT-based Bounded Model Checking (BMC) [18] techniques. NuSMV supports both temporal model checking (CTL and LTL temporal logics), and safety assessment, e.g., Fault Tree Analysis (FTA) and FMEA, through its add-on NuSMV-SA. NuSMV has been used in several industrial contexts, for instance for verification and validation of aerospace systems [9] , and is one of the most mature formal verification tools available to date. The translation enables the use of the NuSMV functionalities, thus extending the existing analysis techniques for AltaRica models.. Although in principle simple, realizing this flow posed a key challenge: the formal characterization of the AltaRica language defined in [11] lacks a clear link between the concrete syntax of the language and the abstract syntax (and thus its semantics). Our first contribution is to provide a formal characterization of the AltaRica language in the Dataflow formulation used in OCAS. The formalization includes a rich abstract syntax, and the corresponding semantics, taking into account the recursive definition of nodes, input/output flows, and their connections through assertions.. Second, we formally define a translation from AltaRica to HyDI, and prove its correctness, showing a one-to-one correspondence in the behaviors of the models. This result is the foundation for the correctness of the overall approach, and it allows us to map artifacts from HyDI (e.g., counterexample traces produced by NuSMV) back to AltaRica, and constitutes a key enabler for a future qualification of the certification process.. Based on this result, we developed the NuSMV/OCAS plugin, which extends the OCAS environment with the following functionalities: invariant checking, temporal model checking, and fault tree generation. The NuSMV/OCAS plugin was developed within MISSA (More Integrated Systems Safety Assessment), a European Community-sponsored project involving various research centers and industries from the avionics sector [19] . The industrial partners conveyed important insights on the functionalities of interest, and provided some case studies.. The NuSMV/OCAS plugin was validated with respect to the behavior shown by the OCAS simulator. We evaluated both behaviors on a set of industrial-size case studies developed in MISSA, and compared it, when possible, with the existing analysis tools of OCAS. The results of the evaluation clearly show that this activity resulted in a significant improvement of OCAS, both in terms of available functionalities, and in terms of performance improvement.. The paper is organized as follows. First, in Section 2 we discuss our approach with the existing related works, then in Section 3 we give an overview of the AltaRica Dataflow formulation while in Section 4 we introduce the HyDI language. We present an informal description of our translation in Section 5. In Section 6 we present the newly defined abstract syntax and semantics of AltaRica and its translation to HyDI. In Section 7 we present the integration into OCAS. Finally, in Section 8 we discuss the experimental evaluation and in Section 9 we conclude and discuss future work. In this section we describe the encoding of the AltaRica language into NuSMV. The formal translation [31] has been designed using HyDI [15] as an intermediate language. We refer to [15] for a discussion of the translation from HyDI to NuSMV.. In the following we detail the main steps of the translation:. • Flattening of the hierarchy: unlike AltaRica, HyDI does not support hierarchical process definitions. Hence, we describe a preliminary step of the translation which flattens the structure of the AltaRica program.. • Translation of flow variables and assertions: these definitions cannot be directly mapped into HyDI;. • Translation of event priorities: HyDI does not support the definition of event priorities;. • Synchronizations: AltaRica supports three kinds of synchronizations: strong, weak and CCF, whereas HyDI supports only the first two. In this work we have presented a novel encoding of AltaRica models into NuSMV, which enables verification and safety assessment of AltaRica models using state-of-art symbolic model checking techniques. We have formally proved the correctness of the encoding. Finally, we have integrated the encoder as a Table 2 : Sequence Generator and NuSMV-SA: FTA performance comparison plugin into the OCAS environment, and we have experimentally demonstrated the feasibility of the approach by evaluating the plugin on a set of industrial case studies. Since early 1990s a large number of MBSA languages and notations became available. The most prominent languages include Failure Propagation and Transformation Notation and Calculus (FPTN and FPTC) [20, 21] , Hierarchically Performed Hazard Origin and Propagation Studies (HiP-HOPS) [22] , Error Model Annex of Architecture Analysis and Design Language (AADL) [23] , and AltaRica language. In the authors' experience, only latter three languages have matured beyond the level of research prototypes.. The original language of AltaRica, developed by LaBRI, is based on the notion of interfaced constraint automata, and is highly expressive. In this paper, we adopt the restricted dialect of AltaRica, called AltaRica Dataflow, that was later developed to restrict the complexity of the models and, under certain constraints, to permit the synthesis of the fault trees [24, 25] .. The reference formal characterization of AltaRica is defined in [11] . Here we provide a richer formal characterization, driven by the need to recursively define a translation towards the HyDI language. In particular, we defined an abstract syntax of AltaRica, and a recursively defined semantics. In particular, our abstract syntax differs from the one presented in [11] in that it directly defines concepts like the input and output flows, which are widely used in the concrete language, while it simplifies less useful notions, like the global coordination expressed by observer nodes.. There exist several tools for modeling in (various dialects of) AltaRica. Among these, we mention the academic toolset developed and maintained at the University of Bordeaux [10] ; SIMFIA [26], a modelling, simulation and RAMS analysis environment developed by EADS APSYS that supports a Dataflow dialect similar to that implemented by OCAS; COMBAVA, developed by ARBoost Technologies, and now obsolete.. OCAS is tightly integrated with Cecilia ARBOR -a Fault Tree Analysis software. Quantitative and Qualitative analysis of fault trees performed in both Cecilia ARBOR and SIMFIA Safety modules are based on Aralia [27] . Whilst there also exists a plugin for the synthesis of fault trees (implementing the algorithm of [25] ), such functionality is only available for a very restricted subset of AltaRica Dataflow.. In practice, AltaRica models in OCAS are analysed by the sequence generator, which analyses the model and, depending on configuration, produces a set of either sequences or sets of events that are sufficient for a particular condition in the model to hold. Informally, if model events represent failures of components and selected condition of interest represents a hazard, the sequence generator produces a close equivalent of FTA's minimal cut sets.. There are other model checkers that support AltaRica, in particular MEC 5 [28] and Arc [29] . MEC 5 is a somewhat outdated model checker that is now superseded by Arc. Arc is a more recent, BDD-based model checker based on the AltaRica language, which supports CTL* temporal logics and µ-calculus. Arc is not currently linked to OCAS and the interoperability with a MEC 5 plugin has not been supported in newer versions of OCAS. Moreover, neither Arc nor its predecessor MEC support safety assessment functionalities. AltaRica studio [30] is a prototypical toolset, based on Arc, for model-based formal analyses. To our knowledge, safety assessment functionalities are not available in AltaRica studio, yet. A thorough comparison of the model checking engines is hard because of differences in the dialects (and flavours thereof) of AltaRica supported by the different tools. This work has been focused on AltaRica Dataflow -a more extended comparison will be targeted for future work. In this section we define some background notions used to define the semantics of the AltaRica language. We will define the semantics of AltaRica using an extension of a labeled transition system, called Interface transition system [11] (ITS). Definition 6.1 (Interfaced Transition System [11] ). An Interfaced Transition System (ITS) is a tuple A = E, O, C, I, π, T where:. • E is set of events, ε ∈ E;. • O is a set of observations;. • C is a set of configurations (i.e. states of the systems);. • I ⊆ C is the set of initial configurations;. • π : C → O is a function mapping each configuration c ∈ C to an observation π(c) ∈ O;. • T ⊆ C × E × C is a set of transitions, such that c, ε, c for each c ∈ C.. An ITS extends a labeled transition system with a set of observations O and the mapping function π. Intuitively, π defines a mapping from each state of the system, also called configuration, to an observation in O. O is defined generically, and represents a set of states observable by another ITS. The observation are used to expose the internal state of a component to its parent, in a hierarchical composition of ITSs. Note that AltaRica features this hierarchical structure. Also, the label ε is used to denote the stuttering event. Intuitively, ε labels the transition c, ε, c that does not change the configuration of the ITS. This transition is used to synchronize with other ITS, with the implicit meaning the ITS is not changing its configuration, thus modeling asynchronous behaviors in a synchronous setting. Given an ITS A and an ordering relation < E over the events of A, we define the priority resolution operation. The operation defines a new ITS A < E , which differ from A only for the transition relation. The transition relation of A < E contains only the transitions with higher priority (according to < E ). Formally: Definition 6.2 (Priority resolution). Given an Interfaced Transition System A = E, O, C, I, π, T and an ordering < E over E, we define the priority resolved ITS A < E = E, O, C, I, π, T < E , where T < E = { c, e, c ∈ T | c, e , c ∈ T, e < E e}.. Both AltaRica and HyDI feature a symbolic representation of the system, where set of states and relations are represented by formulas. Given a set of variables V , we use V to denote the set of next state variables {v } v∈V , where v represents the next value of v. Given a set of variables V = {v 1 , . . . , v n } and a prefix p, we will denote with p.V the set of variables p.V = {p.v 1 , . . . , p.v n }, obtained by renaming all the variables by adding the prefix "p.". In the following, we use the standard notation for propositional logic s |= φ(V ), to express that s is a model of the formula φ(V ). A state of the system becomes an assignment to the variables V . A set of states is represented by a formula α(V ) over the variables V : a state s belongs to the set if s, as an assignment, makes the formula true (namely,. We will often use an evaluation function σ, which returns the set of all the possible assignments to the variables in the set V . If V is the set of variables of a system, then σ(V ) returns the set of all the states of the system.

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


Quantifying content consistency improvements through opportunistic contacts Contacts between mobile users provide opportunities for data updates that supplement infrastructure-based mechanisms. While the benefits of such opportunistic sharing are intuitive, quantifying the capacity increase they give rise to is challenging because both contact rates and contact graphs depend on the structure of the social networks users belong to. Furthermore, social connectivity influences not only users' interests, i.e., the content they own, but also their willingness to share data with others. All these factors can have a significant effect on the capacity gains achievable through opportunistic contacts. This paper's main contribution is in developing a tractable model for estimating such gains in a content update system, where content originates from a server along multiple channels, with blocks of information in each channel updated at a certain rate, and users differ in their contact graphs, interests, and willingness to share content, e.g., only to the members of their own social networks. We establish that the added capacity available to improve content consistency through opportunistic sharing can be obtained by solving a convex optimization problem. The resulting optimal policy is evaluated using traces reflecting contact graphs in different social settings and compared to heuristic policies. The evaluation demonstrates the capacity gains achievable through opportunistic sharing, and the impact on those gains of the structure of the underlying social network. The sharing and dissemination of online content is one of the main purposes of social network applications, and the amount of content accessed through them, in particular through portable devices such as smartphones and PDAs, is expected to increase. Consumption of online content, however, does not require a continuous online presence. Content can be downloaded, consumed, modified, and uploaded at different times. An opportunity to improve a user's access to up-to-date information from its own social network is to take advantages of opportunistic contacts between mobile devices, i.e., without waiting for connectivity to the network infrastructure. In other words, users of a social network application may receive more fresh content with no extra infrastructure deployment, simply by communicating with mobile devices of other users, in a delay-tolerant manner. Assessing the magnitude of this improvement is, however, challenging. For example, the frequency and patterns of such contacts are partly a function of the social connectivity of users, and so will be the availability of relevant information to share and more importantly the willingness to share that information. All these influence in non-trivial ways the gains that can be realized through opportunistic contacts. The paper's main contribution is in providing a quantitative handle through which these gains can be estimated, while accounting for the above factors.. There are many possible metrics for quantifying the performance improvement of content delivery achievable through opportunistic contacts. One possible approach is to consider a generic network metric that would be relevant to all applications: one may hence focus on the additional flow capacity provided by intermittent links [7] , or consider the time needed to exchange data between arbitrary pairs of users [4] . Unfortunately these metrics can be both complex to define and difficult to interpret, as their values vary greatly depending on the pairs of users, the flows or the network load considered. A different approach, which is used in the paper, is to define a specific application metric that describes directly the performance of the network to support the requirement of a given application. The improvement gath-ered by delay-tolerant communication can then directly be interpreted in terms closer to users' experience, as in a field test. When it is possible to compute such an application metric, one can study under which conditions opportunistic contacts significantly improve services provided by the network.. Here, in contrast to other work, we focus on content consistency as this content is updated over time. We show that it is possible to accurately measure the benefits of opportunistic contacts according to this application-specified metric. Content originates at a server and is structured into different channels. Channels can be thought of as information sources of interest to some members of a social network. Channel information is updated according to a stationary renewal process, and the server seeks to keep users in sync with the latest content of each channel, but does so under some capacity limitations. The value of channel information to users is a function of its relative age. Users can select which channel content they are willing to store as well as which users they are willing to share it with during opportunistic contacts 1 . The benefits derived from opportunistic contacts is measured through a notion of "capacity", which measures the number of users with access to recent information on channels they are interested in (e.g., subscribe to).. The paper makes the following contributions:. • It develops a model for quantifying the added capacity available for content updates through opportunistic contacts in mobile networks. The model incorporates the effect of users' social connectivity and social behavior in sharing content during those opportunistic contacts. These are shown to have a significant impact on the potential gains achievable from opportunistic contacts.. • It demonstrates how a capacity-achieving policy can be explicitly constructed by solving a convex optimization problem, and illustrates how this optimal operating point can be realized using basic information on users' contacts and interests.. • Using actual mobility traces, the capacity benefits of opportunistic contacts to a content update application operating on cell phones carried by humans are characterized.. The experimental results further demonstrate a significant effect that users' social behavior, e.g., differences in willingness to share with other users, can have on overall performance.. The rest of the paper is organized as follows. The next section gives a brief literature review. Section 3 introduces the specification and model of our content update system. It also presents our notion of capacity and establishes that it can be obtained by solving a convex optimization problem. The content update capacity of some real-life opportunistic mobile networks is explored in Section 4, and the optimal policy is compared to several heuristics. Section 5 concludes the paper.. 1 Both storage and transmission of content to other users during contacts have costs, e.g., memory and battery life time. It is, therefore, important to quantify the resulting gains to users, if only to motivate such opportunistic sharing. Recent work has advocated using opportunistic contacts between mobile nodes to improve users access to content. Although promising, this has left open a difficult issue: Accurately measuring the improvements this affords applications as a function of user connectivity patterns and social behavior (e.g., interest in content and willingness to share it). This paper makes a novel and important contribution to this problem for a time-sensitive content update application, for which it provides a complete characterization of the capacity available through opportunistic updates. Realizing this capacity is shown to critically depend on how the content provider allocates its own updates to nodes. In particular, this allocation depends on content generation rates, node contact rates, as well as nodes' interests and sharing behavior. Surprisingly, despite these complex dependencies, it is actually possible to compute an exact optimal policy that realizes capacity. Our results further establish that in the presence of heterogeneous contact rates and sharing behavior among nodes, simple heuristics that are oblivious to those parameters can translate into subpar performance.. Our result points to several important research challenges that remain to be addressed:. • Although our model deals with general statistics of content creation and contacts between nodes, we have studied quantitative performance improvement in a simple case: content and meeting generated according to memoryless statistics. It would be important to understand analytically as well as empirically how other statistics impact the improvement provided by opportunistic contacts.. • Computing optimal server allocation policy requires knowledge about distribution of latencies between users' contact times in the network. However, since this problem follows a convex optimization, it is possible to come up with a distributed scheme which targets the optimal allocation with limited information about processes of contacts (see [8] for an example).. • We assume that the content provider follows a simple randomized memoryless strategy for updates (essentially choosing to update blocks in nodes independently with different probabilities). A more complex strategy may take into account time of content creation and the current age of content in nodes, it would be important to understand how that impacts the role of opportunistic contacts.. • Similarly, we assume that nodes decide to always share with a subset of other nodes, as captured in the sharing matrix. A more complex strategy may be developed to reflect other criteria such as minimizing energy consumption in opportunistic sharing while providing users with sufficiently fresh content.. We hope that the concrete evidence of these quantitative benefits presented in the paper will foster other contributions aimed at improving application performance in opportunistic mobile networks.. • If blocks are created according to a deterministic period of 1/γ k , then Taking advantage of contacts created by mobility for delaytolerant applications have recently received much attention, typically for routing (e.g., [10, 6, 2] ), and more recently for content dissemination (e.g., [14, 5, 3, 12, 9] ) and content updates (e.g., [1, 8, 13] ). The use of social behavior to improve the delivery of information, as in viral marketing [11] , has been suggested several times [6, 14, 5, 8] . Most of the previous work relies on a utility-based criterion to optimize the dissemination of information, and usually estimates the resulting benefits using generic network metrics such as propagation delay. In particular, [8] showed that content update systems could scale better by leveraging peer-to-peer (opportunistic) sharing of information, and it developed optimal dissemination strategies for different settings [8, 1] . Our work shares this focus on content update systems, but acknowledges the impact that individual connectivity patterns and sharing behavior can have, and explicitly incorporates their effect in devising content update solutions. Furthermore, in contrast to the previous work, we seek to precisely characterize the benefits (here, content consistency) afforded to applications by different opportunistic sharing schemes, including the optimal solution. This calls for a model that accounts for the creation of content, its consumption by different users, as well as users' behavior when they are asked to opportunistically share content.

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


Neural construction of 3D medial axis from the binocular fusion of 2D MAs The perceptual constancy of shape, including view invariance, is an amazing property of the 11 visual system. Cortical representation by the medial axis (MA) is an attractive candidate for 12 maintaining the constancy of a wide range of arbitrary shapes. Recent physiological studies 13 have reported that neurons in the primary visual cortex (V1) show a response to 14 two--dimensional (2D) MAs, and those in the inferior temporal cortex (IT) are selective to 15 three--dimensional (3D) MAs. However, little is known about the neural mechanisms 16 underlying the transformation of 2D to 3D MAs. As a first step toward investigating the 17 cortical mechanism, we have proposed as a hypothesis that a pair of monocular 2D MAs is 18 fused to generate a 3D MA. We examined the computational plausibility of the hypothesis; 19 specifically, whether an energy--based fusion model is capable of generating 3D MAs. We 20 generated blob--like, physiologically plausible 2D MAs, and used a standard energy model to 21 detect the disparity between a pair of 2D MAs. The model successfully generated 3D MAs for 22 a variety of objects that included typical shape characteristics. A reconstruction test showed 23 that the computed 3D MAs captured the essential structure of the objects with reasonable 24 accuracy and view invariance. These results indicate that the fusion of monocular blob--like 25 2D MAs is capable of generating a reasonable 3D MA within the framework of the energy 26 model. 27 28 29 Recently, Hung et al. showed that a number of neurons in the inferior temporal 48 cortex (IT) encode three--dimensional (3D) MA configurations, supporting the idea that the 49 MA plays a critical role in the representation of shape in the ventral pathway [9]. IT has been 50 reported to encode the 3D structure of shape [10, 11] , but little was known about the 51 representation scheme for 3D shapes. The selectivity for 3D MA configurations reported 52 recently in IT has provided crucial direct evidence to support MA coding for the cortical 53 representation of shape. A recent fMRI study has also reported the cortical representation of 54 MA structure in the ventral stream [12] . However, the computational processes that 55 constitute the 3D MA along the ventral pathway remain unknown. One of the keys to 56 understanding these processes lies in the lower cortex: cells in the primary visual cortex (V1) 57show strong responses to the MA of a textured figure [13, 14] . Computational studies have 58shown that the MA response in V1 can be generated by simultaneous arrival of traveling 59 spikes that are initiated by nearby V1 cells [14] , or from onset synchronization of 60 border--ownership (BO)--selective cells in V2 [15, 16] . These computational studies have also 61

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


ERD:

a

fast

and

reliable

tool

for

RNA

design

including

constraints

AbstractThe

function

of

an

RNA

in

cellular

processes

is

directly

related

to

its

structure.

The

free

energy

of

RNA

structure

in

another

important

key

to

its

function

as

only

some

structures

with

a

specific

level

of

free

energy

can

take

part

in

cellular

reactions.

Therefore,

to

perform

a

specific

function,

a

particular

RNA

structure

with

specific

level

of

free

energy

is

required.

For

a

given

RNA

structure,

the

goal

of

the

RNA

design

problem

is

to

design

an

RNA

sequence

that

folds

into

the

given

structure.

To

mimic

the

biological

features

of

RNA

sequences

and

structures,

some

sequence

and

energy

constraints

should

be

considered

in

designing

RNA.

Although

the

level

of

free

energy

is

important,

it

is

not

considered

in

the

available

approaches

for

RNA

design

problem.

Results:

In

this

paper,

we

present

a

new

version

of

our

evolutionary

algorithm

for

RNA

design

problem,

entitled

ERD,

and

extend

it

to

handle

some

sequence

and

energy

constraints.

In

the

sequence

constraints,

one

can

restrict

sequence

positions

to

a

fixed

nucleotide

or

to

a

subset

of

nucleotides.

As

for

the

energy

constraint,

one

can

specify

an

interval

for

the

free

energy

ranges

of

the

designed

sequences.

We

compare

our

algorithm

with

INFO-RNA,

MODENA,

NUPACK,

and

RNAiFold

approaches

for

some

artificial

and

natural

RNA

secondary

structures

and

constraints.The

results

indicate

that

our

algorithm

outperforms

the

other

mentioned

approaches

in

terms

of

accuracy,

speedup,

divergency,

nucleotides

distribution,

and

similarity

to

the

natural

RNA

sequences.

Particularly,

the

designed

RNA

sequences

in

our

method

are

much

more

reliable

and

similar

to

the

natural

counterparts.

The

generated

sequences

are

more

diverse

and

they

have

closer

nucleotides

distribution

to

the

natural

one.

The

ERD

tool

and

web

server

are

freely

available

at

We

have

shown

that

the

ERD

tool

is

a

very

fast

and

successful

approach

to

design

RNA

sequences

which

fold

into

a

given

structure

and

fulfill

some

sequence

and

energy

constraints.

The

core

of

the

algorithm

was

previously

introduced

in

where

we

showed

that

it

proceeds

better

and

faster

than

the

other

existing

approaches.

Here,

we

have

demonstrated

that

the

ERD

tool,

with

additional

constraints

on

the

sequence

and

energy

level,

also

performs

better

and

faster

than

the

other

competitors..

In

addition

to

the

sequence

constraints,

the

energy

ranges

of

the

generated

sequences

over

the

target

structure

can

be

specified

in

ERD

tool.

This

capability

of

ERD

allows

researchers

to

generate

sequences

with

similar

structure

and

a

specific

level

of

energy

value.

In

this

section,

we

briefly

introduce

our

evolutionary

algorithm

for

designing

an

RNA

sequence

that

folds

into

a

given

target

structure

Any

RNA

secondary

structure

can

be

uniquely

decomposed

into

its

structural

components

(stems,

hairpin

loops,

internal

loops,

bulge

loops,

multi-loops,

and

external

loop),

each

having

a

different

length.

By

employing

the

natural

RNA

sequences,

we

first

construct

the

pools

of

RNA

sub-sequences

corresponding

to

different

components

with

different

lengths.

Using

these

pools,

we

then

construct

an

initial

RNA

sequence

which

is

compatible

with

the

given

target

structure.

After

that,

the

target

structure

is

hierarchically

decomposed

into

smaller

sub-structures.

This

decomposition

is

performed

in

positions

where

the

multi-loops

occur.

Finally,

we

use

an

evolutionary

algorithm

to

improve

the

quality

of

the

sub-sequences

corresponding

to

the

decomposed

sub-structures.

The

ERD

tool

has

been

implemented

in

C

programming

language

to

be

consistent

with

the

Vienna

RNA

package

and

to

benefit

from

the

faster

execution

of

the

compiled

code

in

this

language.

The

details

of

the

above-mentioned

steps

are

presented

in

the

following

subsections.

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


RRG: redundancy reduced gossip protocol for real-time N-to-N dynamic group communication Real-time group communication is an indispensable part of many interactive multimedia applications over the internet. In scenarios that involve large group sizes, sporadic sources, high user churns, and random network failures, gossip-based protocols can potentially provide advantages over structure-based group communication algorithms in ease of deployment, scalability, and resiliency against churns and failures. In this paper, we propose a novel protocol called Redundancy Reduced Gossip for real-time N-to-N group communication. We show that our proposed protocol can achieve a considerably lower traffic load than conventional push-based gossip protocols and conventional push-pull gossip protocols for the same probability of successful delivery, with higher performance gains in networks with smaller delays. We derive a mathematical model for estimating the frame nondelivery probability and the traffic load from overhead, and demonstrate the general correctness of the model by simulation. We implement a functioning prototype conferencing system using the proposed protocol, completed with functions including NTP synchronization, dynamic group size estimation, redundancy suppression, and other features needed for proper operation. We perform experiments over the campus network and PlanetLab, and the prototype system demonstrates the ability of our protocol to maintain robust performance in real-world network environments. Real-time group communication is a fundamental part of many emerging interactive internet multimedia applications such as group chats [1, 2] , voice and video conferencing [1, 3, 4] , telepresence [5, 6] , web-based classrooms [4, 7] , virtual reality [7] , distributed collaborative environments [1, [7] [8] [9] , online multiplayer games [10, 11] , social networking applications [12, 13] and social games [14, 15] , etc. Real-time group communication over the Internet presents the following requirements that must be considered:. 1. The delay requirement of real-time communication is stringent -generally assumed to be comparable to what is required for conversational voice. The oneway delay should be kept below 400 msec [16] .. Protocols for streaming are typically not designed with this stringent delay requirement in mind. 2. Communication among the group members is N-to-N in that a random number of active sources may generate voice, video, and control data information to be distributed to all other members at the same time. Protocols that consider individual sources in isolation may not be optimal in such a scenario. 3. The peers are sporadic meaning that each peer may switch between active and idle state rapidly. 4. There is a high degree of user churn meaning that users may join and leave the group dynamically at will.. There are three conventional approaches for real-time group communication. The first approach is network layer multicast [17] , which means the use of IP multicast. The second approach is to use a centralized server (Figure 1a ) for forwarding and mixing of multimedia streams. The third approach is to construct a fully connected peer-to-peer overlay network ( Figure 1b ) [18] that has all peers in direct contact with one another. The first approach enables server-free group communication, but currently IP multicast is not widely deployed, rendering this approach impractical over the general internet. The second approach requires a powerful central node with sufficient bandwidth, and faces problems of scalability and single point of failure. Skype, which can be considered a centralized-server approach [19, 20] where the "centralized server" is also a peer node that is promoted by a peer election mechanism, for example, is not designed to support a large number of users or accommodate random user churns. The third approach requires that all users must have sufficient uplink bandwidth, which scales with the number of users, N, to broadcast their streams to other users. It also faces a serious problem with user churns because any potential source must quickly learn of all peers present.. In recent years, two leading approaches for supporting scalable real-time N-to-N communications have emerged: structure-based and gossip-based [43, 44] .. Structure-based approaches require participating nodes to form a certain deterministic structure, often a tree constructed as a solution to a delay-constrained minimum Steiner tree problem by heuristics [25, 26, [29] [30] [31] [32] [33] [34] 36] . In such tree-based systems, bandwidth usage is very efficient as no duplicated messages are sent. The total bandwidth consumption can be further reduced by incorporating the mixing of audio streams within the structure [22] [23] [24] 35] , or by combining IP multicast in LAN [29] . In N-to-N group communication, multiple peers may generate information concurrently. Therefore, the authors in the papers [29, 33, 37] have argued that multiple source-specific multicast trees should be constructed instead of just one shared multicast tree. Other optimizations have also been proposed, such as resources sharing among trees of different sessions [39] , and the 2-hop delayed-bounded tree [40, 41] . Examples of structure-based approaches that are not tree-based include chained-based overlay using layered coding [42] and snow-ball chunk [38] .. Previous studies have shown that if the user churn is low so that the structure is stable, and if the network loss-rate is also low, then structure-based systems can perform very well. In the presence of user churn and network degradations, however, structure-based systems may become unreliable because the overhead for tree maintenance and message recovery may increase with a snowball effect, as pointed out in the papers [45] [46] [47] . Based on experience learned from the evolution of live streaming protocols, Zhang et al. [48] have also concluded that structure-based multicast protocols are impractical on the Internet because of user churn and network degradation dynamics. Note that churn-coping strategies for structured approaches were discussed in the papers [21, 37] . But due to the fundamental limitation of structured approaches, the tolerated churn rate is very low. For example, a churn rate of 4/minute with a group size of 50-200 requires 2 seconds of recovery time [37] . Chu et al. have also acknowledged the poor transient performance in larger group sizes in their work [21] . A scheme using multiple distribution trees with Multiple Description Coding (MDC) is proposed as a churn coping measure in the paper [49] , but this scheme can only be used for traffic types where MDC is applicable, i.e., video. MDC is not applicable to gaming control data and it is questionable whether it is applicable for voice.. Gossip-based protocols have been considered by many researchers to be reliable in a probabilistic sense as their randomized nature helps to "route around" peer churn and network degradation [50] . Gossip-based protocols have first been examined for information dissemination in what is known as randomized rumor spreading [51] or epidemic algorithm [52] . In a gossip-based protocol, each cycle of information spreading consists of multiple phases of gossip and in each phase, peers operate in parallel and each peer communicates with one or more randomly selected partners (Figure 1c) . In synchronous gossip [51] , a phase is launched simultaneously by all peers, and one phase is completed before the start of the next phase. Synchronous gossip assumes that the period of a phase is larger than the one-way delay between any pair of nodes, a condition that is unrealistic for real time communication. In asynchronous gossip [53] , peers do not operate in synchronous phases but gossip asynchronously in response to messages received. In either synchronous or asynchronous gossip, the number of phases or the number of times a message is relayed in a cycle must be limited to a very small number independent of the population size for real-time communications because of the stringent delay requirement. This realtime requirement leads also to the use of push [54] rather than pull to reduce the amount of time needed for each phase. For example, Verma et al. [43] have proposed the use of an adaptive fanout to control an asynchronous infection pattern over a limited number of phases in a push manner, and Georgiou et al. [44] have derived the probability for successful rumor spreading in relation to the number of gossip targets under a given number of phases. To the best of our knowledge, all of the existing asynchronous gossip schemes for real time communication use one push or push-pull operation in one phase, and each gossip phase is independent of other phases. These push protocols usually produce a large number of duplicated messages and thus have a low bandwidth utilization efficiency. In this paper, we propose a new asynchronous way of gossiping with limited delay. In our scheme, a peer establishes connectivity with multiple peers and uses a limited number of push-pull operations in each information spreading cycle. This repeated push-pulls between two peers during each cycle (details in Sec. III-A) results in a much smaller number of duplicated messages compared to conventional push-based gossip protocols and conventional push-pull gossip protocols for real-time applications [43, 44] . Hence, we name our protocol Redundancy Reduced Gossip (RRG).. It is worth noting that some gossip protocols proposed for ad hoc networks also use fixed connectivity [55] [56] [57] . However, their connectivity is confined to near-neighbor links. In our scheme, the connectivity is randomly established among all participants. Melamed et al. in [47] also proposed the use of a gossip push to fixed downstream neighbors, but none of the related works [47, [55] [56] [57] uses multiple push-pulls in each cycle.. Results that are presented in this paper include:. 1. A novel protocol, called Redundancy Reduced Gossip, for real-time N-to-N dynamic group communication is proposed. The protocol allows the distribution of information from an arbitrary number of random sources within a group, with low latency, minimal membership maintenance, and without assumption on the underlying network condition. The proposed protocol can achieve a given successful delivery probability with a considerably lower traffic load than conventional push gossip protocols and conventional push-pull gossip protocols for real time. 2. A mathematical model is developed and presented for analyzing the frame non-delivery probability and overhead of RRG. The model provides useful insights into the design of our protocol. It can also be used to evaluate the performance of other related protocols. 3. A Linux-based prototype system running the protocol is implemented and tested. Some details and challenges of the implementation are described. Experiment results of the system operating over a LAN as well as over the PlanetLab [58] are collected and analyzed. The prototype system demonstrates the ability of our protocol to maintain robust performance in real-world network environments.. The rest of the paper is organized as follows. Section II presents an overview of related works. Section III describes the RRG protocol. Section IV presents the performance evaluation results from a mathematical model and from the simulator. Section V presents the prototype design, challenges and network experiment results. Section VI concludes the paper. Using gossip for real-time task execution systems has been proposed in the papers [59, 60] , but the research focuses and methods in these works are different from ours. Huang et al. [59] have proposed a gossip-based super-node architecture for query and routing in 1-to-1 information dissemination. Han et al. [60] have adopted the adaptive fanout gossip model proposed by [43] for peer discovery and applied the model to a real-time distributable thread scheduling problem.. Push-pull gossip has been studied in the papers [51, 61, 62] . For example, in the paper [61] , one push-pull is used in one phase for the computation of aggregate information. Karp et al. [51] and Khambatti et al. [62] have proposed the use of push-followed by pull-gossip in two separate stages. They try to combine the expediency of push-gossip with the lower redundancy of pull-gossip. However, these two phase solutions [51, 62] are not applicable to real-time communications.. Three-phase pull or lazy push gossip [63] is studied in the streaming papers [48, [64] [65] [66] . It is important to note that streaming applications have a less stringent delay requirement (buffer built-out delays of 10 -30 seconds are quoted in these papers). Each execution of the threephase cycle of advertise-request-delivery is targeted to deliver information to only a single layer of peers. In RRG, each execution of the greeting-response-closure cycle is targeted to deliver information from all sources to all peers.. Using gossip to establish a random graph for information dissemination has been proposed in the papers [28, 67, 68] . Liang et al. have proposed the use of an on-demand tree for short-lived interactions [67] . However, the proposed scheme does not maintain the spanning tree for a prolonged period of time; hence, no repair mechanism to cope with failures is possible. Chunkyspread [28] uses a simple controlled flooding mechanism over a random graph maintained by Swaplinks [69] for trees construction. It also uses multiple trees to react quickly to membership changes. However, the tree heights are not bounded in the protocol. In contrast, the information dissemination of RRG is strictly bounded to around 3 hops to support the real-time communication delay constraint of 400 ms [16] . Carvalho et al. have proposed to probabilistically combine lazy push gossip and pure push gossip to obtain an emergent structure [68] . The use of lazy push gossip, however, hinders its applicability to real-time communications as we discussed above.. Asynchronous gossip has been studied for other purposes as well [70, 71] . Boyd et al. have used asynchronous gossip to address the "averaging problem" in sensor networks [70] . Ram et al. have studied asynchronous gossip for summing the component functions in a distributed multi-agent system [71] . These protocols are not targeted for real-time N-to-N group communications.. Deb, Médard and Chour have studied N-to-N gossip with and without network coding in [72] . Their primary contribution is to quantify the gain of network coding in a multiple-source scenario. They assume synchronous gossiping with only one gossip target per peer per phase. Their study is not applicable to real-time group communications.. Several studies [46, 47, 50, 63] have proposed the combining of the gossiping and structure-based approaches. These hybrid approaches combine the advantage of bandwidth efficiency in structure-based approaches with the churn-coping capability of gossiping approaches. Gossip is employed in the recovery of loss packets after the initial delivery by a structure-based approach. Gupta et al. have used gossip in a sub-tree topology to reduce the traffic load [50] . Our RRG scheme can be extended to include these techniques.. Birman et al. [73] , Gu et al. [24] and Lao et al. [32] have proposed the combining of the use of infrastructure and peer-to-peer approaches for real-time group communications. The objective of our paper is different from theirs. We focus on a pure peer-to-peer approach without any infrastructure support.. This paper is different from our original Globecom conference version of this paper [74] in three aspects. First, the protocol has been improved by the incorporation of a delayed response strategy. Second, additional performance evaluations are presented which include the traffic load performances under different scenarios and with user churn. Third, a prototype system running the protocol has been implemented and tested over the HKUST campus network and PlanetLab. In this paper, we identify the fact that the performance gain of our protocol is higher in networks with small delays.

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


Spin Kostka polynomials Abstract. We introduce a spin analogue of Kostka polynomials and show that these polynomials enjoy favorable properties parallel to the Kostka polynomials. Further connections of spin Kostka polynomials with representation theory are established.

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


Parameterized Complexity of Eulerian Deletion Problems We study a family of problems where the goal is to make a graph Eulerian, i.e., connected and with all the vertices having even degrees, by a minimum number of deletions. We completely classify the parameterized complexity of various versions: undirected or directed graphs, vertex or edge deletions, with or without the requirement of connectivity, etc. The collection of results shows an interesting contrast: while the node-deletion variants remain intractable, i.e., W[1]-hard for all the studied cases, edge-deletion problems are either fixed-parameter tractable or polynomial-time solvable. Of particular interest is a randomized FPT algorithm for making an undirected graph Eulerian by deleting the minimum number of edges, based on a novel application of the color coding technique. For versions that remain NP-complete but fixed-parameter tractable we consider also possibilities of An undirected graph is Eulerian if it is connected and every vertex has even degree; a directed graph is Eulerian if it is strongly connected and every vertex is balanced (i.e., the indegree equals the outdegree). The class of Eulerian graphs is a well-studied and classical notion in the graph theory. We investigate several algorithmic problems related to the question of how to make a graph Eulerian. We focus on deletion problems, where either vertices or edges can be deleted from the input graph to make it Eulerian, using as few deletions as possible. What makes these problems interesting is the interplay of two different type of constraints: each vertex locally prescribes the constraint that it has to be even/balanced, while retaining connectivity is a global requirement. For comparison, we also investigate the variant of the problem where we have only the local constraints (i.e., the task is to delete the minimum number of edges or nodes to make every vertex even/balanced). As many of the studied problems turn out to be NP-hard, we apply the framework of parameterized complexity to get a more detailed insight.. The investigation of these problems was initiated by Cai and Yang [9] who presented parameterized results for some cases. We complement their work by answering several open questions raised in [9] . Another motivation for our work comes from an observation of Cechlárová and Schlotter [10] : computing the deficiency for a certain type of housing market is equivalent to finding the minimum number of arcs whose deletion makes every strongly connected component of the graph balanced. While we are not able to determine the parameterized complexity of this problem, our results shed light on the complexity of several related ones.. Related Work Subgraph problems have been widely studied in the literature. To name a few examples, Lewis and Yannakakis [21] investigated the complexity of the node-deletion problem for hereditary properties, Alon et al. [2] examined edgedeletion problems for monotone properties, while Natanzon et al. [28] and Burzyn et al. [6] studied the classical complexity of edge modification problems for various graph classes. Subgraph problems have also been looked at from the parameterized perspective. The most extensively studied variants are the node-deletion problems for hereditary properties: the results by Cai [8] , and Khot and Raman [18] , yield a complete characterization of the fixed-parameter tractable cases. Apart from hereditary properties, FPT algorithms are known for node-deletion problems where the task is to obtain a regular graph [26] , a chordal graph [23] , a grid [12] , etc. Parameterized hardness results have been obtained in numerous cases as well [22, 24] . Recently, researchers focused on the issue of kernelization, yielding both positive [4, 17, 29] and negative results [20] .. There is much less known about directed graphs. Raman and Sikdar [32] investigated the parameterized complexity of hereditary node-deletion problems in digraphs, while Raman and Saurabh [31] examined feedback set problems in tournaments. The FPT algorithm by Chen et al. for finding a feedback vertex set in a directed graph [11] resolved a long-standing open question.. Work related to the class of Eulerian graphs mainly concentrated on the extension problem, where the task is to add a minimum number of edges or arcs in order to make the given graph Eulerian. FPT algorithms were given for various settings by Dorn et al. [13] and by Sorge [33] . Eulerian deletion problems were studied by Cai and Yang [9] .. Our Contribution To settle the classical complexity of the examined problems, first we observe (Theorems 1 and 2) that classical results imply polynomial-time algorithms for the edge-deletion problems where the task is to make the given graph even/balanced: in the undirected case, this is essentially a T -join problem, while the directed case can be reduced to a flow problem. These observations answer a question raised by Cai and Yang [9] , who observed that the analogous node-deletion problems are NP-hard. Moreover, the aforementioned algorithms are used as subroutines in our FPT results.. By contrast to the polynomial time algorithms, we show that the seemingly similar edge-(or arc-) deletion problems where we aim for an Eulerian graph are NP-hard, even in the extremely restricted case when the input is a cubic planar graph and the number of deletions can be arbitrary (Theorem 3). We investigate both the undirected and the directed cases of Eulerian edge-deletion problem thoroughly from the parameterized point of view: we present a fixed-parameter tractable algorithm for both cases where the parameter is the number of deletions allowed (Theorem 4), and prove that these problems do not admit a polynomial-size kernel unless NP ⊆ coNP/poly (Theorem 5), which is known to imply a collapse of the polynomial hierarchy to its third level [7, 34] . The FPT results use a novel argument that might be of independent interest. Intuitively, we need to find a solution S to a T -join problem and a witness (disjoint from S) certifying that the graph remains connected after the removal of S. Using a random coloring, we partition the edges into two types: each edge can contribute either to the solution or to the witness of the solution. This partition ensures that the solution and the witness are disjoint. While the use of random colorings is a standard technique for finding a solution consisting of disjoint objects [3] , we use this technique to separate the solution from its proof of feasibility.. The undirected node-deletion problems, where the task is to obtain an Eulerian or an even graph, were already handled by Cai and Yang [9] who proved their W[1]-hardness. We complemented these results by showing W[1]-hardness for the directed cases as well in Theorem 7. Additionally, we also focus on a slight modification of the node-deletion problems where certain forbidden vertices are not allowed to be deleted. Theorem 8 shows that each of the four node-deletion problems remains W [1] -hard, even if we are only allowed to delete vertices of degree at most 4. This contrasts the easy FPT algorithm applicable if the parameter is not only the number of deletions but also the maximum degree of the graph (Theorem 11). Table 1 shows a summary of our main results. Organization of the Paper Section 2 describes our notation, and provides basic concepts of parameterized complexity. Section 3 discusses polynomial-time solvable edge-deletion problems. We deal with the NP-hard Eulerian edge-deletion problems in Sect. 4, first covering the issue of NP-completeness, and then fixed-parameter tractability and kernelization. Node-deletion problems are discussed in Sect. 5. We summarize our results and draw conclusions in Sect. 6. We completed the analysis of the complexity of making a graph Eulerian via edge or vertex deletions. There are two open problems that we would like to emphasize here. First, do there exist FPT algorithms for the edge-deletions problems running in time c k n O (1) ? It seems hard to obtain such algorithms using our techniques, mainly due to the fact that the witness subgraph W may contain Ω(k 2 ) close edges, as was discussed in Sect. 4.2.. Second, Cechlárová and Schlotter in [10] asked for the parameterized complexity of a related problem, where the task is to delete at most k arcs from a directed graph to obtain a graph where each strongly connected component is Eulerian. This problem seems to be significantly different than the problems considered in this paper, as for example it includes DIRECTED FEEDBACK VERTEX SET [10] , and, to the best of our knowledge, the question of its parameterized complexity still remains 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 O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O 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 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 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


A hybrid biased random key genetic algorithm approach for the unit commitment problem Abstract This work proposes a hybrid genetic algorithm to address the Unit Commitment (UC) problem. In the UC problem, the goal is to schedule a subset of a given group of electrical power generating units and also to determine their production output in order to meet energy demands at minimum cost. In addition, the solution must satisfy a set of technological and operational constraints.The algorithm developed is a Hybrid Biased Random Key Genetic Algorithm (Hybrid BRKGA). The biased random key technique was chosen due to its reported good performance in several combinatorial optimization problems. In the algorithm, solutions are encoded using random keys, which are represented as vectors of real numbers in the interval [0, 1]. The proposed GA is a variant of the random key genetic algorithm, since bias is introduced in the parent selection procedure as well as in the crossover strategy. The BRKGA is hybridized with local search in order to intensify the search close to good solutions.Tests have been performed on benchmark large-scale power systems with up to 100 units for a 24-hour period. The results obtained have demonstrated that the proposed methodology is an effective and efficient tool for finding solutions to largescale UC problems. Furthermore, from the comparisons made it is possible to concluded that the results achieved improve the solutions obtained by the state-of-the-art methodologies reported. Power systems are one of the most important infrastructures in a country since the commodity involved is essential to everyday life, its availability and price are critical to many companies, and it requires continuous balancing (Rebennack et al, 2010a,b) . The study and operation of these systems involves solving many different optimization problems (Kallrath et al, 2009) . Amongst these problems, the Unit Commitment (UC) problem stands out as it plays a key role in planning and operating power systems. Optimal scheduling of the generating units not only has the potential of saving millions of dollars, but also of maintaining system reliability by keeping a proper spinning reserve (Zheng et al, 2012) . The UC problem is an optimization problem where the goal is to determine the on/off status of the generating units at minimum operating costs. In addition, the production of the committed units, which also needs to be determined, must be such that it satisfies demand and spinning reserve constraints. Furthermore, a large set of technological constraints are also imposed on generating units. Due to its combinatorial nature, multi-period characteristics and nonlinearities, this problem is highly demanding computationally and thus, it is a hard optimization task to solve it for real sized systems. The UC problem has been extensively studied in the literature. Several methodologies based on exact and on approximate algorithms have been reported. Optimal solutions can only be obtained for small sized problem instances through the solutions of the corresponding Mixed Integer Quadratic Programming (MIQP) model. Other versions of the UC problem have also been studied, see for example Zheng et al (2012) ; Wang et al (2012) ; Jiang et al (2012) ; Schneider et al (2013) .. In the past, several traditional heuristic approaches based on exact methods have been proposed, such as Dynamic Programming, Branch and Bound, Lagrangian Relaxation and Mixed-Integer Programming, see for example Muckstadt and Koenig (1977) ; Cohen and Yoshimura (1983) ; Huang et al (1998) ; Rong et al (2008) ; Frangioni et al (2008 Frangioni et al ( , 2009 ; Patra et al (2009) . Most of the recently developed methods are metaheuristics, evolutionary algorithms, and hybrids of the them, see for example Zhao et al (2006) ; Sun et al (2006) ; Dang and Li (2007) ; Jeong et al (2009) ; Lau et al (2009) ; Roque et al (2011) ; Hadji and Vahidi (2012) . In general, these latter types have led to better results than the ones obtained with the traditional heuristics. This paper proposes a Hybrid Biased Random Key Genetic Algorithm (HBRKGA) to address the UC problem. The HBRKGA proposed here is based on the framework provided by Gonçalves and Resende (2010) , which has been used effectively and efficiently in other important applications (Fontes and Gonçalves, 2007; Gonçalves et al, 2008; Sourirajan et al, 2009; Gonçalves and Resende, 2011; Fontes and Gonçalves, 2012; Kotsireas et al, 2012) . The BRKGAs are a variation of the random key genetic algorithms, first introduced by Bean (1994) . A Biased Random Key GA differs from a random key GA in the way parents are selected for mating and in the probability of inheriting chromosomes from the best parent. In this HBRKGA, repair mecha-nisms are also included and therefore all the individuals considered for evaluation are feasible. The HBRKGA is capable of finding better solutions than the best currently known ones for most of the benchmark problems solved. Furthermore, the computational time requirements are modest and similar to those of other recent approaches.. The UC problem is a well-researched combinatorial optimization problem and has been addressed by a large variety of methods. Nevertheless, the approach proposed here has managed to improve current state-of-the-art methodologies. These facts led us to conclude that the proposed approach can be promising to address combinatorial optimization problems in other application areas.. The remainder of this article is organized as follows. Section 2 describes the UC problem and provides its mathematical formulation. Section 3 describes previous methodologies addressing the UC problem is. The solution approach proposed to address the UC problem is explained in Section 4. Then, Section 5 tests the effectiveness and efficiency of the approach proposed here in benchmark systems with up to 100 units for a 24-hour period. In addition, the results obtained are compared to those of the current state of the art approaches reported in the literature. Due to recent advances in MIQP commercial solvers, such as CPLEX, it is possible to solve UC problems optimally, at least for smaller problems. This approach has also been implemented and the results obtained for small size instances are used for comparison purposes. Finally, Section 6 presents some conclusions. The unit commitment problem is an important area of research which has attracted increasing interest from the scientific community due to the fact that small savings in the operation costs for each hour can lead to major overall economic savings. Biased Random Key GAs have been developed for and applied to several combinatorial optimization problems with interesting results. Given this empirical evidence, see (Gonçalves and Resende, 2010) , this paper proposes an algorithm for the unit commitment problem. The Hybrid Biased Random Key Genetic Algorithm proposed here also incorporates a Local Search to intensify the search near good solutions. The approach suggested in this paper searches for a solution only within the space of feasible solutions using a repair mechanism.. The performance of the algorithm implementing the proposed approach has been tested on a set of commonly used UC benchmark problems and other UC problems found in the literature. The results reported show that the method proposed here outperforms current state-of-the-art methods. For all problem instances but two, it was possible to find better results than the best achieved thus far. In addition, these better solutions have been found with computational time requirements which are smaller or of the same magnitude as those in the alternative methods. The results also show another important feature, which is lower variability. It is important to highlight that for the most commonly used problems the difference between the best and the worst solutions is always below 0.14%, while the difference between the best and the average solutions is always below 0.05%. This is very important since the methods to be used in industrial applications must be robust in order to guarantee that poor solutions are not implemented.

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