Investigating Prefix Propagation through Active BGP Probing For an Internet Service Provider (ISP) Interdomain routing in the Internet is based on the Border Gateway Protocol (BGP), which partitions the Internet into a set of Autonomous Systems (ASes). BGP advertises the reachability of destinations (prefixes) through route announcements, which originate from the AS to which the prefix belongs and are selectively propagated from AS to AS in accordance with routing policies. Traffic addressed to a certain prefix flows through the ASes that have propagated the corresponding announcement. Thus, for an Internet Service Provider (ISP), the knowledge of which interdomain paths might be traversed by its BGP announcements -and thus traffic flows -is essential to predict the impact of network faults, to perform effective traffic engineering, to develop peering strategies, and to assess the quality of connectivity provided by the ISP's upstream providers.. Interdomain topology discovery is a subject on which much has been written. The behavior of BGP has been passively observed by capturing and analyzing BGP routing tables [2] and announcements [3] ; BGP beacons [13] have been used to study network dynamics; techniques have been proposed to deduce interdomain topology using probe packets [10, 8, 20, 14, 16] ; and BGP data has even been used to deduce commercial relationships between ASes [7, 5] .. Unfortunately, the literature does not provide methods to determine how BGP announcements are propagated. Even recent methods which make use of the passive observation of BGP dynamics [24, 6] still do not provide comprehensive information on how a specific prefix is seen by the Internet and how it might be seen in the event of link faults, changes in routing, or different traffic engineering strategies. This is because existing methods either attempt to discover the AS-level interconnections of the Internet, ignoring the effect of routing policies, or limit themselves to studying the paths to a particular destination at a given instant in time, and thus do not obtain any information on alternate paths that are permitted by routing policies, such as backup paths. As an example, Fig. 1(a) shows what the operators of AS 5397 may discover about the routing of their IPv6 prefix 2001:a30::/32 at a given time by querying the RIPE NCC RIS service [18] . An arrow from an AS A to an AS B means that an announcement of the specified prefix 6939 1930 6175 1299 5539 293 31103 12702 5424 6830 20965 4691 2914 30071 13944 25358 1853 3265 12779 8447 8763 3425 29686 3549 12793 3333 12859 2500 559 1103 11537 513 18084 7660 3257 was made by A to B. The graph shows that AS 5397's upstream provider (AS 15589) propagates the announcement to AS 10566, AS 3320 and AS 33, but does not show, for example, that AS 15589 is propagating the announcement to AS 1275 as well. Fig. 1(b) shows the additional information that AS 5397 may obtain by sending out a single BGP announcement using the techniques presented in this paper. A more thorough application of these techniques yields almost three times the number of ASes and more than seven times the peerings visible using a standard RIS query (see Table 1 ).. In this paper we present active probing primitives that use standard BGP to influence how the announcements for a given prefix propagate through the Internet. We show how an AS that originates a given prefix can use these primitives (i) to discover which ASes and peerings can be traversed by the BGP announcements for that prefix, (ii) to check if a certain AS-path is permitted, for that prefix, by other ASes' routing policies, and (iii) to infer, given two AS-paths for the prefix ending in a given AS, which one is propagated by that AS to its peers. An Internet Service Provider (ISP) typically administers one or more Autonomous Systems (ASes). An AS is a portion of the Internet under a single administrative authority and is identified by an integer number. ASes exchange routing information with other ASes by means of a routing protocol called Border Gateway Protocol (BGP) [17, 21] . Two ASes that directly exchange routing information are said to have a peering between them. The ASes that have peerings with an AS A are termed the peers of A.. BGP operates on blocks of contiguous IP addresses known as prefixes. The sequence of ASes traversed by traffic sent to a particular prefix is determined by the AS-path attribute associated with the prefix. A prefix, AS-path pair is known as a route. BGP peers exchange routes using BGP update messages, which are either route announcements or route withdrawals.. The AS that initially announces a prefix (typically the AS to which the prefix belongs) is called the originator of the prefix. Routes are propagated by means of route announcements to peer ASes. A router which receives an announcement inserts the route into its routing information base and recalculates the best route to the prefix. If the best route has changed, it prepends its AS identifier to the AS-path it received and propagates the new best route to its peers; thus, the AS-path of an announcement is generally the list of ASes that the announcement has passed through. An ASpath may be optionally ended by an AS-set (an unordered set of AS identifiers) which is used in certain cases of route aggregation. In order to avoid routing loops, a BGP router discards announcements which include its own AS number in the AS-path.. A prefix p is selectively propagated by an AS A to its peers depending on the routing policy adopted by A and on the contents of the announcement [7, 11] . We say that an AS-path A n . . . A 2 A 1 , where A 1 is the origin AS, is feasible for a prefix p if the policies of each A i permit A i to announce p to A i+1 with AS-path A i . . . A 1 . Observe that the feasibility of an AS-path for a prefix does not imply that the AS-path is necessarily visible in the Internet: it only means that under certain circumstances it may be visible. The set of feasible AS-paths for a prefix p thus contains all the AS-paths that may be observed for p in the Internet. We note that the concept of feasible path has also been used in the literature on the stability of BGP with the name of permitted path (e.g. [9] ). A peering between two ASes P and Q is feasible for p in the direction from P to Q if there exists at least one feasible path in which P immediately follows Q. In diagrams we shall represent a feasible peering from P to Q with a directed arc from P to Q. For example, in Fig. 1(a) the directed arc between 10566 and 6175 indicates that the policies of AS 10566 permit it to announce the prefix 2001:a30::/32 to AS 6175.. We name routing state for a prefix p at a given time the set of best routes to p of each router in the Internet at that time. We empirically say that a routing state for p is stable if we have observed no BGP updates for p for a sufficiently large time interval. To obtain (partial) information about the evolution of the Internet routing state, projects such as the RIPE NCC Routing Information Service (RIS) [18] and the University of Oregon's RouteViews Project [22] deploy route collectors in specific points of the Internet to record BGP updates from routers in a number of ASes, which we name collector-peers. Thus, the best routes of each collector-peer at any given time are known. The RIBs of the collectors and the updates they receive are periodically dumped, permanently stored and made publicly available over the Web.

O O O O O O O O O B I I I B I O O O O O O O B I I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


The ALICE DAQ: current status and future challenges The ALICE data acquisition system has been designed to support an aggregate event-building bandwidth of up to 2.5 GByte/s and a storage capability of up to 1.25 GByte/s to mass storage. A general framework called the ALICE Data Acquisition Test Environment (DATE) system has been developed as a basis for prototyping the components of the DAQ. DATE supports a wide spectrum of configurations from simple systems to more complex systems with multiple detectors and multiple event builders. Prototypes of several key components of the ALICE DAQ have been developed and integrated with the DATE system such as the ALICE Detector Data Link, the online data monitoring from ROOT and the interface to the mass storage systems. Combined tests of several of these components are being pursued duringthe ALICE Data Challenges. The architecture of the ALICE DAQ system will be presented together with the current status of the different prototypes. The recent addition of a Transition Radiation Detector (TRD) to ALICE has required a revision of the requirements and the architecture of the DAQ. This will allow for a higher level of data selection. These new opportunities and implementation challenges will also be presented. The ALICE Trigger/DAQ system was initially designed for a set of requirements described in the ALICE Technical Proposal [1, 2] . The system has to operate with different beam types: pp, p-ion and ion-ion. The original rate and size of events acquired for the extreme case (Pb-Pb) resulted in an aggregated bandwidth of 2.5 GBytes/s in the DAQ system (including the event building) and 1. 25 GBytes/s to the mass storage. The system must also be able to combine two different types of physics events: a slow rate of central triggers generating the largest fraction of the total data volume, together with a faster rate of dimuon events.. These requirements and the corresponding Trigger/DAQ architecture were relatively stable and were refined for the preparation of the Technical Design Reports (TDR) [3] . This has led to the overall architecture of the ALICE DAQ, control and trigger systems. The interfaces between these systems and with the sub-detectors are shown in Fig. 1 . This paper will cover the DAQ and trigger systems.. The original Trigger/DAQ requirements have since evolved. The first evolution consisted in the addition of buffering to the front-end electronics of the ALICE sub-detectors. The second was an increase by a factor 2 of the estimated data volume of the Time Project Chamber (TPC) that produces more than 90% of the total data volume. The third is the addition of the Transition Radiation Detector (TRD) [4] that will allow us to identify electrons and will provide an additional input signal to the trigger. It allows a new trigger type, the dielectron trigger, and opens to the ALICE DAQ the possibility of adding new online processing (region-of-interest readout, third-level filter, and improved data compression). The ALICE DAQ and trigger systems architecture are now being revised to take into account new requirements. On one hand, these new requirements indicate that the aggregate throughput of the ALICE DAQ will be higher than the maximum acceptable mass storage bandwidth. On the other hand, the addition of a TRD detector will allow new types of online processing. An online processing farm will therefore be added to the ALICE DAQ system to perform region-of-interest readout, online filtering, and advanced data compression. The DAQ prototyping will from now on include this online processing.. The current prototypes of the ALICE DAQ system are based on commodity technologies. It is anticipated that these technologies will provide adequate performance by 2005. Two points of concern remain though on the existence of an appropriate mass storage system and the on cost of tertiary storage hardware and media.

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


Does Treewidth Help in Modal Satisfiability? Many tractable algorithms for solving the Constraint Satisfaction Problem (CSP) have been developed using the notion of the treewidth of some graph derived from the input CSP instance. In particular, the incidence graph of the CSP instance is one such graph. We introduce the notion of an incidence graph for modal logic formulas in a certain normal form. We investigate the parameterized complexity of modal satisfiability with the modal depth of the formula and the treewidth of the incidence graph as parameters. For various combinations of Euclidean, reflexive, symmetric, and transitive models, we show either that modal satisfiability is Fixed Parameter Tractable (FPT), or that it is W[1]-hard. In particular, modal satisfiability in general models is FPT, while it is W[1]-hard in transitive models. As might be expected, modal satisfiability in transitive and Euclidean models is FPT. Treewidth as a parameter has been very successful in obtaining Fixed Parameter Tractable (FPT) algorithms for many classically intractable problems. One such class of problems is constraint satisfaction and closely related problems like satisfiability in propositional logic and the homomorphism problem [Dalmau et al. 2002; Samer and Szeider 2010] . There have been recent extensions to quantified constraint satisfaction [Chen 2004; Pan and Vardi 2006] . In such problems, treewidth is used as a measure of modularity inherent in the given problem instance and algorithms make use of the modularity to increase their efficiency. Understanding the extent to which treewidth can be stretched in such problems is an active area of research [Grohe 2006; Marx 2007] . This work explores the applicability of such techniques to modal satisfiability.. Apart from having many applications (reasoning about knowledge [Fagin et al. 1995] , programming [Pratt 1980 ] and hardware verification [Reif and Sistla 1983] , etc.), modal logics have nice computational properties [Grädel 2001; Vardi 1996] .. Since modal formulas of modal depth 0 contain all propositional formulas, bounding modal depth alone will not give FPT results (unless PTIME = NP). The main idea behind our FPT results is to construct a relational structure whose domain elements are clauses and literals of a modal formula, with binary relations indicating which literals occur in which clause. Then, satisfiability of the modal formula can be expressed in Monadic Second Order (MSO) logic over the relational structure, enabling us to apply Courcelle's theorem [Courcelle 1992 ]. Courcelle's theorem states that evaluating MSO sentences over relational structures is FPT where the parameters are the treewidth of the relational structure and the length of the MSO sentence. The lengths of the MSO sentences we construct are linear in the modal depth of the modal formula (and constant in the case where satisfiability is sought in models that are Euclidean). Hence, Courcelle's theorem implies the upper bound results mentioned before. The lower bound proof involves carefully designing a modal formula of low pathwidth that can implement counting mechanisms using the underlying transitivity.. Modal formulas with low treewidth are quite powerful, capable of encoding complex problems. On the other hand, modal formulas with low treewidth contain propositional CNF formulas of low treewidth, which arise naturally in many practical applications. See Fischer et al. [2008, Section 1.4] and references therein for some context on this.. Related work. Halpern [1995] considers the effect of bounding different parameters (such as the number of propositional variables, modal depth etc., but not treewidth) on complexity. Nguyen [2005] shows that satisfiability of many modal logics is in PTIME under the restriction of Horn fragment and bounded modal depth. Achilleos et al. [2010] consider parameterized complexity of modal satisfiability in general models with the number of propositional variables and other structural aspects (but not treewidth) as parameters. Adler and Weyer [2009] associate treewidth with First Order (FO) formulas and use it to obtain a FPT algorithm for model checking.. The Complexity of satisfiability of modal logics follow a pattern. Halpern and Rêgo [2007] prove that with the addition of Euclidean property, complexity of (infinitely) many modal logics drop from PSPACE-hard to NP-complete. Another work in this direction is Hemaspaandra and Schnoor [2008] . Similar pattern is observed in graded modal logics [Kazakov and Pratt-Hartmann 2009] . With treewidth and modal depth as parameters, our results indicate similar behavior in the world of parameterized complexity: satisfiability in transitive models is W[1]-hard, while satisfiability in Euclidean and transitive models is FPT, even with treewidth as the only parameter. However, more work is needed in this direction. First, the results in Halpern and Rêgo [2007] and Hemaspaandra and Schnoor [2008] hold for infinitely many cases while we consider only a few fixed cases. Second, satisfiability in general models is PSPACE-complete and drops to NP-complete with the addition of Euclidean property. In our setting, satisfiability in general models is already FPT (but see conclusion for a discussion about why satisfiability in general models is not FPT unless PTIME = PSPACE, when treewidth is the only parameter).

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


Context-sensitive authorization in interaction patterns Main requirement of recent computing environments, like mobile and then ubiquitous computing, is to adapt applications to context. On the other hand, access control generally trust users once they have authenticated, despite the fact that they may reach unauthorized situations. We analyse how dynamic information can be used to improve security in the authorization process, and what are the implications when applied to interaction patterns. We experiment and validate our approach using context as an authorization factor for eventing in Web service for device (like UPnP or DPWS). Ubiquitous computing, under the leadership of Mark Weiser's vision [15] , has made computing evolve toward multi-device, multiuser, and highly dynamic environments. Miniaturization of hardware and new wireless communication networks have created new devices, worn by users or surrounding them. Due to mobility, devices appear and disappear frequently in such environments.. The major concern in ubiquitous or pervasive computing is adapting applications to users surroundings, and more generally, to their context. In this paper, we focus on limiting communications between entities that are in the same context, for security purposes. Indeed, information involved in ubiquitous computing communications is often privacy-sensitive, and we want to make sure it cannot be received or intercepted by non-authorized entities.. Access control [13] relies on and coexists with authentication, authorization and audit. Authentication can be made on information or persons: it establishes who issued a piece of information, or confirms the identity of a person. However, to ensure that the identity is correct, different authentication factors shoud be used. If the person possesses the information related to each factor, it is assumed that this is the pretended person [11] .. Authorization takes places both before system execution, to define policies of the security system, and after the authentication phase, to grant a principal access to the controlled system. We will study in the following section that authorization is most often static or controlled by applications, leading the users to be considered authorized for a long time. With context changes we cannot assume that a user is authorized throughout the duration of the use of an application, even if he is still authentified. We will then explore works on dynamic authorization. The service for device infrastructure and SLCA are used for all parts of the application: publisher, subscriber and observers. Observers are trusted entities from the publisher's point of view thanks to dynamic insertion of authentication components with aspects of assemblies.. We created a simple example of application, modelled in Figure 9 . An event publisher service, which can be a sensor or any device, is secured by the composite service on the left. The client of this secured service is a composite service to simplify the figure. This can of course be applied to already existing service clients by only modifying the location (URL) of the service used with a security proxy composite service. Observers are managed in the context of the client by another composite service, to simplify communications.. An idea behind the use of lightweight components in composite services is to enable adapting non-functional concerns in the same Figure 9 : Implementation using SLCA layer and the same way than the functional core of the application. We use aspects of assembly in the publisher's and subscriber's composite services to add the access control logic.. Since we manage all concerns of the application on the same layer, we cannot deal directly with subscriptions handled by the underlying service infrastructure. We have to manage authorizations for all subscribers at the application layer, as we have studied in (4.2).. Events will be encrypted with a group key. When observers notify changes of contextual information, if an authorization rule becomes invalid, the security system in the composite service of the event producer will change the group key. Modifications of the key are spread to the subscribers of the event channel using the observers. Indeed, since they are in subscribers' context and they are trusted parties, they can safely deliver the new key.. Aspects of assembly allow us to manage different authorization rules based on appearing and disappearing trusted observers in the environment. Thanks to properties of aspects of assembly, we can enable several rules to be used at the same time for dynamic authorization. Even if they are enabled, they won't apply until all observers needed by the rule, defined in pointcuts, are present. The reactive discovery process of Web service for device makes adaptation of authorization rules reactive. This is useful in cases of context overlappings and transitions, or simply to ensure that access won't be denied because of slight changes in the highly dynamic infrastructure of ubiquitous computing.

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


An Ant-Based Approach for Dynamic RWA in Optical WDM Networks In this paper, we propose a new ant-based algorithm for the dynamic routing and wavelength assignment (RWA) problem in optical WDM networks under the wavelength continuity constraint. Unlike conventional approaches, which usually require centralized global network information, our new RWA algorithm constructs the routing solution in a distributed manner by means of cooperative ants. To facilitate the ants' foraging task, we adopt in our algorithm a probabilistic routing table structure for route selection. The new algorithm is highly adaptive in that it always keeps a suitable number of ants in the network to cooperatively explore the network states and continuously update the routing tables, so that the route for a connection request can be determined promptly by the current states of routing tables with only a small setup delay. Some new schemes for path scoring and path searching are also proposed to enhance the performance of our ant-based algorithm. Extensive simulation results upon three typical network topologies indicate that the proposed algorithm has a very good adaptability to traffic variations and it outperforms both the fixed routing algorithm and the promising fixed-alternate routing algorithm in terms of blocking probability. The ability to guarantee both a low blocking probability and a small setup delay makes the new ant-based routing algorithm very attractive for both the Because of their huge bandwidth capacity, all-optical wavelength division multiplexing (WDM) networks hold great promise to serve as the backbone for future wide area networks [1] . It is envisioned that the next generation WDM networks will work in a hybrid mode, in which optical circuit switching (OCS) and optical burst switching (OBS) serve as two distinct layers that co-exist in the network and complement each other [2, 3] . The capacity in the OCS layer is designed for providing synchronous services, such as multimedia services with requests issued in advance. On the other hand, the capacity in the OBS layer is for satisfying immediate and asynchronous bandwidth requests with rapid traffic variation and bursty demands which might cause inefficiency if they are provisioned in the OCS layer. To support both the OCS and OBS efficiently in such hybrid optical networks, a lightpath must be dynamically established with a low blocking probability and a small setup delay at the time a connection request arrives. For lightpath establishment, we need to solve the so-called routing and wavelength assignment (RWA) problem.. The RWA problem is one of the most important issues in WDM networks; it involves in determining the routes and wavelengths to be used to establish lightpaths for connection requests. RWA problems can be generally classified into two types: static and dynamic. In a static RWA problem, network topology and connection-establishing requirements are given in advance, and the problem is to find a solution that satisfies certain optimizing conditions, such as minimizing the number of wavelengths or maximizing the total number of lightpaths that can be established. Dynamic RWA problems involve the on-line establishment of lightpaths for connection requests that arrive dynamically. The static RWA problem is proved as a NP-hard problem [4, 5] . The dynamic RWA problem is much more difficult to solve, therefore heuristics algorithms are usually employed to solve it.. A lightpath must use the same wavelength on all of its links if there is no wavelength converter at intermediate nodes; this is known as the wavelength continuity constraint. In this paper, we focus on the dynamic RWA problem under the wavelength continuity constraint. Many approaches have been proposed for solving the dynamic RWA problem [6] [7] [8] [9] [10] , and these approaches can be generally classified into three basic classes: fixed routing, fixed-alternate routing and adaptive routing. In the fixed routing approach, a fixed shortest path is statically computed for a node pair. Whenever a request arrives between the node pair, the fixed path is always attempted for wavelength assignment. This method is simple but it tends to introduce a high blocking probability. In fixed-alternate routing, a node pair has a set of pre-computed shortest paths and all of them will be attempted for lightpath establishment upon the arrival of a connection request. In the adaptive routing approach, the path for a connection request is computed upon its arrival based on the current network state, thus it provides the lowest blocking probability [4, 6] . However, adaptive routing usually requires higher computation complexity and thus introduces a longer setup delay than fixed-alternate routing. Moreover, adaptive routing requires higher control overhead, including special support from control protocols to keep track of the up-to-date global network state, which makes it practically infeasible for large and highly dynamic networks. Fixed-alternate routing is now considered as a very promising routing algorithm, because it significantly reduces blocking probability in comparison with the fixed routing algorithm and it achieves a good trade-off between performance and control overhead [7] . Actually, a fixed-alternate routing algorithm with a small number of alternate routes asymptotically approaches the performance of an adaptive routing algorithm in terms of blocking probability [8] .. In this work, we investigate an ant-based approach for dynamic RWA problem based on the idea of Ant-Colony Optimisation [11, 12] . Inspired by the behavior of natural ant systems, a new class of ant-based algorithms for routing in communication networks are currently being developed. Previous work has shown the potential success of ant-based routing for both packet switching networks (e.g., AntNet [13] ) and circuit switching telephone networks (e.g., ABC [14] ). However, few results are available for applying the ant-based approach to the challenging RWA problem (especially the dynamic RWA problem) in WDM networks. This paper aims to develop a new dynamic RWA algorithm using an ant-based approach. The main contributions of our work are: -We first introduce an ant-based dynamic routing algorithm for WDM networks under the wavelength continuity constraint. The path for a connection request is determined promptly based on current states of routing tables, which are continuously updated with an adjustable number of cooperative ants. -We extend the conventional path-scoring methods by using both congestion information and the length difference between the current path and the shortest path to more efficiently update the routing table. We also provide a new path-searching scheme to enhance the performance of our ant-based algorithm.. Our ant-based algorithm does not require global information of network states for route selection as do other adaptive RWA routing algorithms, and it enables the path for a connection request to be determined promptly by simply using the routing table lookup with a small setup time. An extensive simulation study shows that our proposed ant-based RWA algorithm performs better than the promising fixedalternated routing algorithm in terms of blocking probability. These attractive characteristics make the new ant-based dynamic RWA algorithm a promising candidate for the next generation of optical WDM networks.. The rest of this paper is organized as follows: In second section, we discuss related work. The third section presents our ant-based algorithm for solving the dynamic RWA problem in WDM networks under the wavelength continuity constraint. The fourth section provides simulation results and analysis. We conclude this paper with a discussion in the fifth section. In this paper, we proposed an ant-based algorithm for the dynamic Routing and Wavelength Assignment problem in WDM networks with wavelength continuity constraint. In our algorithm, the ant-based agents continuously update the routing tables according to the network state. To enhance the performance of our new algorithm, we proposed an efficient scheme for scoring a path based on both the number of available wavelength and the path length, and also a scheme for path searching based on the second-highest value from the routing table entries. These new schemes can help an antbased RWA algorithm overcome the stagnation problem, and thus effectively improve its performance in terms of blocking probability. A significant advantage of our new algorithm is that the path can be determined immediately based on the routing tables, significantly reducing set-up delay. Moreover, this new algorithm is flexible in the sense that to achieve a good performance, the number of ants can be adjusted by their launching probability. Extensive simulation results upon different network topologies indicate clearly that our ant-based algorithm consistently outperforms the promising fixed-alternate routing algorithm. These attractive properties, especially the ability to guarantee both a low blocking probability and a short setup delay, make this new ant-based dynamic RWA algorithm very promising for the next generation of WDM networks supporting OCS and OBS. Schoonderwoerd et al. proposed an ant-based routing algorithm for circuit switching telephone networks in [14] . In this algorithm, an ant-based agent modifies the routing policy at every node by deposing a pheromone trail on its routing table; the agents' goal is to build the routing tables and to adapt them to the load changes at run time so that the accepting ratio of coming calls is maximized. Bonabeau et al. [15] improved the performance of Schoonderwoerd's algorithm based on the principle of dynamic programming. However, Bonabeau's algorithm cannot be directly applied to WDM networks because of the wavelength continuity constraint. Our approach builds upon the above algorithms while taking into account the wavelength assignment with wavelength continuity constraint in WDM networks.. Some ACO-based algorithms have also been proposed for solving RWA algorithms in WDM networks. In the static RWA scenario, Varela et al. [16] applied ACO to minimize the total number of wavelengths in the case of RWA with wavelength conversion. Varela's algorithm can achieve a result that is comparable to conventional heuristics, but it requires a much longer computational time. Gonzalez et al. [17] proposed a similar approach for lightpath routing and wavelength assignment algorithm by means of ACO in the case of RWA with a wavelength continuity constraint. It is notable, however, that neither of the above two algorithms can be applied directly to the dynamic RWA problem.. Garlick et al. [18] proposed, for the first time, an algorithm for solving the dynamic RWA problem via ACO. Garlick's algorithm works as follows: when a connection request arrives at a node, a number of ants are launched from the source to the destination to search for paths. An ant reports a path between the source and destination once it reaches the destination. Each reported path is scored based on its length and congestion information. After all the ants reach the destination, a best path is selected from all the reported paths to establish the connection request. In comparison with conventional approaches, this algorithm can achieve good performance in terms of blocking probability; however, a connection request will suffer from a high setup delay due to the need to wait for all ants to complete their search. Basically, the ants launching from one node do not cooperate with the ants from other nodes.

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


Prioritizing tests for software fault diagnosis During regression testing, test prioritization techniques select test cases that maximize the confidence on the correctness of the system when the resources for quality assurance (QA) are limited. In the event of a test failing, the fault at the root of the failure has to be localized, adding an extra debugging cost that has to be taken into account as well. However, test suites that are prioritized for failure detection can reduce the amount of useful information for fault localization. This deteriorates the quality of the diagnosis provided, making the subsequent debugging phase more expensive, and defeating the purpose of the test cost minimization. In this paper we introduce a new test case prioritization approach that maximizes the improvement of the diagnostic information per test. Our approach minimizes the loss of diagnostic quality in the prioritized test suite. When considering QA cost as the combination of testing cost and debugging cost, on our benchmark set, the results of our test case prioritization approach show reductions of up to 60% of the overall combined cost of testing and debugging, compared with the next best technique. Software regression testing is a time-consuming but rather important task for improving software reliability. Two main steps can be distinguished: (1) testing to find failures (i.e., detect the presence of faults), and (2) finding the root causes of the failures (faults, defects, bugs). Whereas the former is what is commonly known as "testing", the latter is commonly denoted as "fault diagnosis", "fault localization" or "debugging".. Given the significant cost associated with regression testing, test prioritization has emerged as predominant technique to reduce testing cost, by trying to find failures as soon as possible [1, 2, 3, 4, 5, 6, 7, 8] . The main motivation behind test prioritization is that, the sooner failures are found, the sooner diagnosis can commence.. The debugging phase can make use of automatic fault localization techniques, which help to significantly reduce the manual debugging effort needed, as shown in [9, 10, 11, 12] . Fault localization algorithms use the information provided by tests executed in the testing phase to deduce a list of program elements (e.g., functions, statements) that are highly suspect to be at fault (the diagnosis). Engineers then manually inspect the components top-down in search for the faults. The better information is provided by tests, the least work will be wasted in the manual inspection. What test prioritization techniques overlook, in general, is that the quality of the result of the fault localization phase depends on the quality of the information provided by the testing phase. Testing should be done with diagnosis in mind, from the first test.. The plot on the left hand side of Figure 1 illustrates the cost sources associated to regression testing and debugging. C t (N ) denotes the aggregate time cost of testing, where N is the number of tests. C d (N ) denotes the time cost associated with the diagnostic work performed by the software developer to debug the actual defects. C t (N ) has a linear shape as a function of the number of tests N , whereas C d (N ) has a geometric decreasing shape [10, 13] . The overall time cost of the combined testing and diagnosis process, C, can be modeled by. where α expresses the possible factor between the cost of the regression tests C t and the cost of the manual inspection performed by the developer (typically high). After an initial decreasing phase, C reaches its optimum point C opt . Past this point, new tests will not provide enough new diagnostic information to compensate their cost, and C will increase. The location of the optimum point depends on how fast C d decreases, and the value of α. The effect of two different prioritization techniques can be observed on the plot on the right hand side of Figure 1 . Recent work on the combination of test prioritization and fault localization [14, 15, 16] has highlighted the fact that, while test prioritization minimizes the delay between testing and diagnosis C t (N ), it does not maximize diagnostic information yield C d (N ). The reason is that test prioritization aims at high code coverage, whereas diagnosis aims at partially revisiting already covered code to further exonerate or indict defective components. The net effect of existing test prioritization techniques is that the overall cost of the combined process of testing and debugging, given defective code, is not minimized. This suboptimal situation corresponds to scenario (a) on the right hand side plot in Figure 1 .. In software development processes with high code production rates, the probability of introducing at least one defect between subsequent revisions is considerable. Consequently, the probability of having to apply diagnosis after regression testing is high. This calls for a prioritization technique (i.e., diagnostic prioritization) that puts emphasis on fault localization performance from the first test, rather than failure detection performance. The goal should be to reduce the overall QA cost, i.e., the combined cost of testing and debugging, by performing a trade-off between testing and debugging effort. This corresponds to scenario (b) in Figure 1 .. Shifting the focus of test choice from failure detection to fault diagnosis is bound to cause an increase in testing cost, if measured according to usual test cost metrics such as APFD [6] . However, this increase is negligible once considered in the context of combined cost C, since usually the cost of applying a test is orders of magnitude lower than manually inspecting a component (i.e., α in Equation 1 is very large). Furthermore, even if α ≤ 1 (i.e., executing a test is as expensive as manual inspection), it must be taken into account that a manual inspection will discard only one component, 3 whereas a test execution has the potential to discard half of the components if the test is properly chosen.. In this paper we present and evaluate a novel, dynamic approach to diagnostic prioritization, which aims to minimize the combined cost of testing and diagnosis. Unlike static test prioritization, in diagnostic prioritization the tests are dynamically selected based on the actual pass/fail results of previously executed tests (which varies per regression cycle), leading to higher diagnostic performance per test, yielding the much steeper C d (N ) curve in scenario (b). In particular, we make the following contributions:. 1. We present an analysis of why test prioritization for failure detection deteriorates the performance of fault localization algorithms, which motivates our alternative approach. 2. We introduce a test prioritization strategy with the goal of fault localization, contrasting with existing approaches whose goal is failure detection. Our approach performs on-line test prioritization depending on the outcome of the tests based on diagnostic information gain. 3. We evaluate our technique in a semi-synthetic setting, comparing it to existing prioritization techniques in terms of both fault localization and failure detection performance.. The current paper represents novel work in the domain of test prioritization and diagnosis, and is an extension of our preliminary work in diagnostic prioritization presented in [14] . The following extensions have been added:. 1. We refine our definition of diagnostic prioritization. Unlike in [14] , we take into account the possibility that not all test cases that cover the fault will result in a failure (i.e., the possibility of false negatives or coincidental correctness. 2. We perform the evaluation of our technique under these new assumptions on three different false negative rate scenarios (low, high, very high) on the Siemens programs [17] and extend it to four larger and more realistic programs from the SIR repository [18] . Our results show up to 60% reduction of the overall combined cost of testing and debugging, when compared to the next best performing technique. 3. We present a discussion on the practical applicability issues of diagnostic prioritization, with emphasis on the estimation of the input parameters (fault probability, false negative rate) and the extent to which the accuracy of diagnostic prioritization is affected by erroneous estimations.. The paper is organized as follows. In Section 2, we describe the main concepts of fault diagnosis and the diagnosis algorithm used in our experiments. Section 3 surveys the existing prioritization techniques with which we will compare our approach. In Section 4, we describe why current prioritization techniques fall short for fault localization. Section 5 introduces diagnostic prioritization and the information gain heuristic. Our evaluation goals and experimental setup are described in Section 6, while the results are presented and discussed in Section 7. Section 8 discusses a number of practical considerations, including the sensitivity of our technique to erroneous parameter estimations. Related work is surveyed in Section 9. Section 10 presents our final conclusions and future work directions. In this paper, we have introduced a specific prioritization technique of test cases, dubbed diagnostic prioritization, that reduces the loss of diagnostic information to a minimum. Our experiments have shown that in terms of diagnostic information gain per test case, diagnostic prioritization is the best technique. This comes at the price of a slightly reduced APFD failure detection performance with respect to additional-coverage techniques, although not in all cases. However, when considering the overall combined cost of both testing and manual residual diagnosis, our experiments have shown cost reduction of up to 60% with respect to the next best performing technique.. In future work we will extend the validation of our approach to larger systems with multiple faults, a more realistic scenario in software. We will also explore the performance of our approach at different levels of granularity, such as interface, and component-level granularities. We will also consider different strategies to overcome errors in the estimation of the input parameters (h k , p k ) of IG, since our sensitivity study showed that IG can be affected negatively in some cases. Additionally, we will consider the fact that different tests may have different costs, and propose new heuristics to address this situation. The influence of test-suite extension, reduction, modification, and prioritization on fault detection and diagnosis has received considerable attention.. Hao et al. [38] study the effect of reduction of redundant tests on the Tarantula fault detection algorithm [11] , concluding that reduction may actually have a beneficial effect on diagnosis. However, their conclusions partially contradict those of Yu et al. [16] for a larger sample of programs, who conclude that test-suite reduction, especially coverage-based reduction, has a negative influence on the quality of the diagnosis. In particular, Jiang et al. [15] show how some prioritization techniques are worse than random sequencing and that those that are better, do not provide a significant improvement.. In contrast to the works cited above, which use coverage-based heuristics to reduce the size of the test suite, diagnostic prioritization employs a heuristic to select the best test case to optimize diagnostic accuracy.. Baudry et al. [39] propose enhancing test suites by adding new tests that increase the number of dynamic basic blocks (i.e., sets of components that are always covered together), thus reducing diagnostic uncertainty. The additional tests created by this technique are subject to prioritization as well, and thus there is no guarantee they will be ordered appropriately, unless diagnostic prioritization is used.. Test case prioritization is a mature and active area of research whose most common goal is to increase failure detection rate. Harrold et al. [3] and Wong et al. [8] proposed to use reduction and prioritization as a means of controlling the size of regression test suites. The failure detection effectiveness of different coverage-based prioritization techniques was studied by Rothermel et al. [2] , who also proposed the FEP heuristic [6] that has already been discussed throughout the paper. Cost-cognizant test prioritization techniques have been proposed [40, 7, 41] that take into account that test cases may have variable costs. Elbaum et al. propose a set of guidelines [1] to aid in selecting the most cost-effective prioritization technique depending on program attributes. Li et al. [5] study different search algorithms for coverage-based prioritization in order to avoid the local minimal of greedy strategies [6] . Jiang et al. [4] propose a hybrid random and coveragebased prioritization technique (ART), which has already been discussed throughout this paper. Kim and Baik propose a fault-aware test case prioritization (FATCP) [42] that combines a diagnostic algorithm with coverage-based test prioritization with the goal of producing failures as soon as possible, under the assumption that faulty components that were fixed are less likely to be faulty again in a subsequent cycle. Unlike our diagnostic prioritization algorithm, all traditional prioritization research centers around faster fault detection (APFD). As shown in this article, focusing on a faster rate of fault detection may have a very negative impact on fault localization cost.. Automated fault-localization techniques also aim at minimizing diagnostic cost when failures occur during the testing phase. Statistical approaches include the Tarantula tool by Jones et al. [11] , Ochiai by Abreu et al. [9] , the Nearest Neighbor technique by Renieris et al. [22] , Sober by Liu et al. [21] , CBI by Liblit and his colleagues [20] , and CrossTab by Wang et al. [25] . Approaches to statistical fault localization need not be limited to the statement level, work that considers execution paths and dependences includes [19, 23, 24, 43] .. Recently, Abreu et al. [10] proposed Barinel, which aimed to combine the best of reasoning and statistical approaches. Although differing in the way they derive the fault ranking, all techniques are based on measuring the coverage information and failure pattern of a program (also known as its spectrum). Nica et al. [44] use mutation testing to reduce the amount of diagnosis candidates in the ranking.. A preliminary version of our work is described in [14] , that reveals the high potential of (IG-based) dynamic prioritization. However, in that work we assumed permanent failures, which is completely unrealistic for real software systems. Diagnostic prioritization is often applied to hardware systems, where it is known as Sequential Diagnosis, where tests can produce false negatives (intermittent faults) [12] . Typically, only one fault is assumed present in the system. Sequential diagnosis can be enhanced by the use of models and test case generation (instead of choosing from a fixed test suite), greatly increasing its performance [13, 45] . However, the practical application of these approaches depends on the availability of accurate models, which seldom exist for software systems due to their complexity and constant evolution. In order to evaluate the applicability and performance of diagnostic prioritization, we address the following questions.. Question 1: What is the evolution of diagnostic effort (C d ) with respect to testing effort (C t ) for the information gain heuristic IG? How does IG compare to RND, ADDST, FEP and ART?. Question 2: What is the fault detection performance of the sequences produced by IG? Since IG is not aimed at maximizing fault probability, we expect an impact on the failure detection performance. Our aim is to quantify this impact.

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


Evaluating Subtopic Retrieval Methods: Clustering Versus Diversification of Search Results To address the inability of current ranking systems to support subtopic retrieval, two main post-processing techniques of search results have been investigated: clustering and diversification. In this paper we present a comparative study of their performance, using a set of complementary evaluation measures that can be applied to both partitions and ranked lists, and two specialized test collections focusing on broad and ambiguous queries, respectively. The main finding of our experiments is that diversification of top hits is more useful for quick coverage of distinct subtopics whereas clustering is better for full retrieval of single subtopics, with a better balance in performance achieved through generating multiple subsets of diverse search results. We also found that there is little scope for improvement over the search engine baseline unless we are interested in strict full-subtopic retrieval, and that search results clustering methods do not perform well on queries with low divergence subtopics, mainly due to the difficulty of generating discriminative cluster labels. In the past few years increasing research has been done on subtopic retrieval, i.e. the task of retrieving documents relevant to specific aspects (or facets, or meanings) of a given query. This task is motivated by the difficulties encountered by users in discriminating the information contained in a conventional list of search results, due to their redundancy and lack of structure. The number of real user queries affected is potentially large, partly because informational queries have been estimated to account for 80% of web queries (Jansen et al., 2008) , and partly because today virtually any web query expressed by very few words may have multiple interpretations, depending on the user intent or on the context in which it is issued. Furthermore, there is evidence that the retrieval of more information on specific subtopics of interest is often the primary goal of the efforts of searchers (Xu and Yin, 2008) .. Most search systems are not able to deal with subtopic retrieval because they try to present results in descending order of probability of relevance to the user query. The origin of this approach is generally credited to Robertson (1977) 's probability ranking principle, although Robertson in his paper recognized the limitations of using a ranking scheme that works document-bydocument: 'the major problem appears to lie in the way the principle considers each document independently of the rest'. It has been shown that assuming that the relevance judgment of any document is independent from the relevance of other documents is suboptimal for the subtopic retrieval task (Gordon and Lenk, 1999) . We need instead to take into account the semantic similarity between the documents presented to the user.. One well known strategy to capture the thematic structure of search results is to use clustering. Search results clustering is related to, but distinct from, pre-retrieval applications of document clustering -those aimed at improving the efficiency of query processing (Altingövde et al., 2008) or finding a more effective document ranking (Liu and Croft, 2004) . Search results clustering groups the post-retrieval results (usually one hundred) and gives the user the ability to choose the groups of interest in an interactive manner, thus providing direct subtopic access. If the items that relate to the same subtopic have been correctly placed within the same cluster and if the user is able to choose the right cluster from the cluster labels, such items can be accessed in logarithmic rather than linear time. Following Vivísimo's 1 'description comes first' motto, in the last few years many new search results clustering algorithms optimized for usability have been proposed and several research and commercial web clustering engines have been deployed, surveyed by Carpineto et al. (2009b) .. To illustrate, in Figure 1 and Figure 2 we show the output produced by KeySRC 2 , a recent web clustering engine (Bernardini et al., 2009) , in response to two example queries (as of March 2010). In each figure, the clusters created by the system analyzing the first about 100 retrieved documents are shown on the left, with the original list of search results being displayed on the right. Each cluster is described by a label and by the number of documents contained in that cluster, which can be seen by clicking on the label.. The two queries, used as exemplifications throughout the paper, are 'excalibur' and 'information retrieval'. The query 'excalibur' is ambiguous, with several meanings such as the the name of the sword belonging to King Arthur, the movie, the car, and many others. The first 10 documents returned by the search engine (see Figure 1 ) cover quite a few distinct meanings, probably because major search engines have started to address the diversity issue in their first results page, although the first two documents are nearly duplicate and the meaning of documents is sometimes not clear from their title (e.g., those related to Arthurian legend). In comparison, the clusters created by KeySRC allow the user to discriminate between a similar or somewhat smaller number of distinct meanings with more ease; e.g., by reading the cluster labels rather than the document titles or snippets.. The query 'information retrieval' is a broad query. The top hits returned by the search engine (see Figure 2 ) mostly cover introductory (general) documents about information retrieval (e.g., wikipedia, answers.com, glossary) that presumably present a high redundancy and do not look into single aspects. In addition, there are two duplicates. By contrast, the themes identified by the clusters seem quite useful and give a good overview of some of the most interesting subtopics of information retrieval. Perhaps more importantly, for both queries the user can see all the documents that refer to any generated cluster at once, even though they were scattered through the original search list.. The other main approach to subtopic retrieval is diversification of search results. The inner mechanisms of clustering and diversification are similar, but the search interfaces are quite different. Clustering groups similar documents and labels the cluster; diversification considers inter-document similarity when ranking, but just presents a result page like any normal search engine.. Diversification tries to optimize the relevance of results at the document set level instead of at the single document level; e.g., (Carbonell and Goldstein, 1998) , (Zhai et al., 2003) , (Swaminathan et al., 2008) , (Agrawal et al., 2009 ). This is done by re-ranking the list of search results with the goal of delivering a first results page with reduced redundancy. The diversification of results is usually achieved by way of re-ranking functions that trade relevance for novelty: the documents to be selected at each step are compared according to both their estimated relevance to the query and their dissimilarity in content to the subtopics covered by the documents already chosen.. In Figure 3 we show the results of a diversification method on the same queries considered above, namely 'excalibur' and 'information retrieval'. In this particular case, the diversification of search results was performed using again the output produced by KeySRC through a method described below in the paper. Figure 3 suggests that the re-ordered lists were more useful for subtopic retrieval than the original lists. There was an increase in the number of subtopics covered by the titles both for 'excalibur' and 'information retrieval', and the information retrieval subtopics were more focused.. Although there is a rich body of literature on both clustering and diversification, there have been so far no evaluation studies of their relative performance. Earlier work has compared either clustering methods e.g., (Ferragina and Gulli, 2005) , (Carpineto et al., 2009a) , or diversification methods, e.g., Zuccon and Azzopardi (2010) , Santos et al. (2010) . To the best of our knowledge, this is the first attempt to compare clustering and diversification of search results using a unified evaluation framework.. In order to allow cross-comparison between methods producing different types of outputs (i.e., lists versus partitions), we adapt subtopic retrieval evaluation measures developed for ranked lists to clustered results. The considered evaluation measures focus on complementary aspects of the subtopic retrieval performance, namely partial subtopic coverage and full subtopic retrieval. In addition, we use two test collections specifically devised for evaluating the subtopic retrieval effectiveness of systems that post-process search results. The two collections contain ambiguous and broad queries, respectively, and are equipped with document-level relevance judgments per subtopic. They have unique features, compared to the other few available data sets for subtopic retrieval evaluation. We compare three strategies of subtopic retrieval methods, namely clustering, diversification, and minimal subsets of results.. The third strategy, i.e., generation of minimal subsets of results (Dai and Srihari, 2005) , is an extension of diversification. Rather than creating one small subset of diverse documents at the top of the search results list, the goal is to re-order the whole list in such a way that it becomes a concatenation of multiple subsets of diverse documents. This approach is illustrated in Figure 4 . The input consists of 100 documents belonging to subtopics a, b, c, d (among others) , and the output is formed by 10 subsets of diversified results, with 10 elements each. In Table 2 we summarize the main features of the subtopic retrieval methods used in the experiments. The methods are grouped by retrieval strategy, namely clustering, diversification, and minimal set generation. Note that KeyS RC L , EP * , and KeyS RC * L have not been used elsewhere. Recent research has focused on the definition of more effective subtopic retrieval strategies under two separate main headings, namely clustering and diversification of search results, but little work has been done to reconcile these different paradigms and identify their relative strengths and weaknesses. In this paper we have taken a step forward to help fill this gap, by providing a unifying evaluation perspective. We compared the effectiveness of three main strategies to subtopic retrieval from search results, using a range of complementary cross-paradigm measures and two suitable test collections with document-level relevance judgments per subtopic. The following major conclusions emerge from the experimental evaluation.. • Clustering is generally good for full-subtopic retrieval where other strategies usually fail, while it is less effective for partial subtopic coverage because of the additional cognitiveeffort required on the part of the user to browse through the cluster labels before examining any document. Furthermore, clustering may not work well when the subtopic vocabularies blur, mainly due to the difficulty of producing discriminative cluster labels.. • Diversification is not useful for full subtopic retrieval, at least according to our modelization of this search task, but it can improve partial subtopic coverage. However, even in the latter case, the scope for improvement seems very limited when the original list of result is produced by a modern search engine.. • Retrieval of minimal subsets combines the advantages of diversification for partial subtopic coverage with a better performance on full-subtopic retrieval, although still inferior to that of clustering.. • Combination of multiple subtopic retrieval methods is promising because they present considerable variations on single queries and across different tasks.. In subtopic retrieval there is probably no one-size-fits-all method, because multiple and potentially conflicting user needs may arise; e.g., retrieving as many query interpretations as possible or as much information as possible about a specific interpretation. It would be interesting to see how well the proposed measures and our experimental findings correlate to the user experience; e.g., by means of user evaluation studies focusing on subtopic retrieval. More research is then needed to understand whether the most suitable method for a given query and user can be automatically selected (e.g., by classification of the underlying intent behind the search query). Also, the design of better search interfaces where several methods will coexist and effectively address complementary user needs may be a key to expanding the scope and usability of subtopic retrieval facilities in standard search systems.

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


Minimum degree thresholds for bipartite graph tiling For any bipartite graph H, we determine a minimum degree threshold for a balanced bipartite graph G to contain a perfect H-tiling. We show that this threshold is best possible up to a constant depending only on H. Additionally, we prove a corresponding minimum degree threshold to guarantee that G has an H-tiling missing only a constant number of vertices. Our threshold for the perfect tiling depends on either the chromatic number χ(H) or the critical chromatic number χ cr (H) while the threshold for the almost perfect tiling only depends on χ cr (H). Let G be a graph on n vertices and H be a graph on h vertices. The tiling (also called packing) problem in extremal graph theory is to find in G as many vertex-disjoint copies of H as possible. Researchers are interested in finding a tight minimum degree condition for G to contain an H-factor -a subgraph which consists of ⌊n/h⌋ copies of H. This is also sometimes called a perfect H-tiling or H-packing. Dirac's theorem on Hamilton cycles [6] is one of the earliest tiling results. It implies that every n-vertex graph G with minimum degree δ(G) ≥ n/2 contains a perfect matching (K 2 -factor). The seminal result of Hajnal and Szemerédi [8] determines the minimum degree threshold for a K r -factor for all integers r. By applying Szemerédi's Regularity Lemma [21] , Alon and Yuster [1, 2] found minimum degree conditions that guarantee an H-factor for an arbitrary H. Komlós, Sarközy, and Szemerédi [13] improved Alon-Yuster's result, giving a tight minimum degree for H with equal-sized color classes. Instead of using the chromatic number χ(H) as in [2, 13] , Komlós [11] introduced the critical chromatic number χ cr (H) and showed that it played a critical role in graph tiling (his result was improved by Shokoufandeh and Zhao [20] ). Kühn and Osthus [15] finally determined exactly when the critical chromatic number or the chromatic number was the appropriate parameter. In order to accurately state their result, we need the following definitions.. For any graph H on h vertices, the critical chromatic number χ cr (H) is defined as (χ(H)−1)h h−σ(H) , where σ(H) is the size of the smallest color class over all proper χ(H)-colorings of H. Note that χ(H) − 1 < χ cr (H) ≤ χ(H) with equality if and only if all proper colorings of H are balanced. Suppose H has connected components C 1 , . . . , C kc . We define hcf c (H) as the highest common factor of integers |C 1 |, . . . , |C kc |. Let ℓ = χ(H). Given a proper ℓ-coloring C of H with x 1 ≤ x 2 ≤ . . . ≤ x ℓ as the sizes of the color classes, let D(C) = {x i+1 − x i |i = 1, . . . , ℓ − 1}. Let D(H) = ∪D(C) where the union ranges over all proper ℓ-colorings of H. Now, hcf χ (H) is the highest common factor of D(H). In particular, we set hcf χ (H) = ∞ if D(H) = {0}. Lastly, we define the tiling indicator hcf (H) as follows. When χ(H) = 2 and hcf χ (H) = 1, we say hcf (H) = 1. If χ(H) = 2, we say hcf (H) = 1 if and only if both hcf c (H) = 1 and hcf χ (H) ≤ 2.

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


A mutual energy formulation for optimal structural design Abstract This paper presents a variational formulation for the design of elastic structures where the function to be minimized by the optimal design, i.e. the objective, is expressed in abstract form. The resulting statement of necessary conditions is uniformly applicable for all admissible objectives. Both state and adjoint state variables appear directly in the problem statement, and all objectives and the arguments of constraints are scalars. The adjoint pair of state variables appear in symmetric roles via the expression termed "mutual energy". Application of the generalized formulation is demonstrated by treatment of the following examples: design to minimize the maximum value of displacement or to minimize a global measure of stress, design for generalized compliance, design where self-weight is taken into account, and multicriterion design.Key words structural optimization, variational formulations, general objectives, continuum design, mutual energyThis paper reports results from an investigation of alternative variational forms for stating problems in structural optimization. In particular, we present a formulation expressed in a form that is general with respect to design objective, i.e. the design objective is stated in abstract form. This is in contrast to the practice that has the specific formulation for minimum compliance design serve most often as the vehicle for presentations on variational developments. With the problem expressed for abstract objective , it becomes possible to consider aspects of analysis, problem type, and method for solution in a general setting, and accordingly to draw conclusions that are relatively more broadly applicable. The work might best be viewed as an experimental engagement in the subject . . . judging from our experience, further useful developments are likely forthcoming. In formulations other than for the classical minimum compliance case, analytical modelling for the coupled analysis and design problem generally involves an associated or adjoint problem. In this case, the significant measure appearing in the optimality condition is a measure symmetric in the primary and associated state variables; this measure has been termed specific mutual energy [applications are discussed by Prager (1974), Dems and Mroz (1995) , Rozvany (1989) , for example]. In the variational formulation presented here, unit mutual energy appears explicitly as the basis for this new model. The systems governing both primary and adjoint state variables are identified by conventional means, namely as part of the set of necessary conditions for the generalized, coupled analysis and design problem. At the same time, the simplicity of form in the expression for the optimality condition carries over uniformly for the various objectives.As already noted, for present purposes the objective itself is stated in abstract form, as the integral over the structure of an argument depending generally on structural response and possibly also on design. Necessary conditions include a characterization of the equilibrium problem and an associated equilibrium problem, governing respectively the primary and associated (adjoint) state variables. In this way, the associated problem, which depends on the specified objective, is generated as well in abstract, i.e. general form. Expression of the coupled analysis and design problem in terms of mutual energies has these two boundary value problem statements generated by symmetric operation with respect to each of the primary and associated variable. At the same time, the gen- This paper reports results from an investigation of alternative variational forms for stating problems in structural optimization. In particular, we present a formulation expressed in a form that is general with respect to design objective, i.e. the design objective is stated in abstract form. This is in contrast to the practice that has the specific formulation for minimum compliance design serve most often as the vehicle for presentations on variational developments. With the problem expressed for abstract objective , it becomes possible to consider aspects of analysis, problem type, and method for solution in a general setting, and accordingly to draw conclusions that are relatively more broadly applicable. The work might best be viewed as an experimental engagement in the subject . . . judging from our experience, further useful developments are likely forthcoming.. In formulations other than for the classical minimum compliance case, analytical modelling for the coupled analysis and design problem generally involves an associated or adjoint problem. In this case, the significant measure appearing in the optimality condition is a measure symmetric in the primary and associated state variables; this measure has been termed specific mutual energy [applications are discussed by Prager (1974) , Dems and Mroz (1995) , Rozvany (1989) , for example]. In the variational formulation presented here, unit mutual energy appears explicitly as the basis for this new model. The systems governing both primary and adjoint state variables are identified by conventional means, namely as part of the set of necessary conditions for the generalized, coupled analysis and design problem. At the same time, the simplicity of form in the expression for the optimality condition carries over uniformly for the various objectives.. As already noted, for present purposes the objective itself is stated in abstract form, as the integral over the structure of an argument depending generally on structural response and possibly also on design. Necessary conditions include a characterization of the equilibrium problem and an associated equilibrium problem, governing respectively the primary and associated (adjoint) state variables. In this way, the associated problem, which depends on the specified objective, is generated as well in abstract, i.e. general form. Expression of the coupled analysis and design problem in terms of mutual energies has these two boundary value problem statements generated by symmetric operation with respect to each of the primary and associated variable. At the same time, the gen-eralized optimality condition has the form where "unit mutual energy" replaces "unit strain energy" of the familiar condition for standard minimum compliance design.. While the concepts which underlie the material of this paper apply to optimal design of structures in general, as it is reported here the development is written for continuum structures. The variational formulation is stated and interpreted in general form, and the reciprocal of this (isoperimetric) problem is presented as well. Application of the generalized formulation is demonstrated by treatment of the following examples: design to minimize the maximum value of displacement or to minimize a global measure of stress, design for generalized compliance, design where self-weight is taken into account, and multicriterion design. Additional details of interpretation, and speculation about possible extensions along the line of this work are considered in the discussion section.

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