A Secure Automatic Fare Collection System for Time-based or Distance-based Services with Revocable Anonymity for Users Automatic Fare Collection (AFC) systems calculate the fare that the users must pay depending on the time of service (time-based) or the points of entrance and exit of the system (distance-based). The progressive introduction of Information and Communication Technologies (ICT) allows the use of electronic tickets, which helps to reduce costs and improve the control of the infrastructures. Nevertheless, these systems must be secure against possible fraud and they must also preserve users' privacy. Therefore, we have studied the security requirements for the timebased and distance-based systems and we have proposed a protocol for each of the AFC systems. The protocols offer strong privacy for honest users, i.e., the service provider is not able to disclose the identity of its users and, moreover, different journeys of the same user are not linkable between them. However, anonymity for users could be revoked if they misbehave. The protocols have been implemented in the Android mobile platform and its performance has been evaluated in two Android smartphones. The results remark that protocols are suitable to be used on AFC system with a medium class mobile device although they offer a better experience with a high-class smartphone. The appearance in the market of more powerful mobile devices suggests a better usability of our proposal in a near future. The incorporation of Information and Communication Technologies (ICT) in Automatic Fare Collection (AFC) systems allows to reduce costs and improves the control of the infrastructures; some examples could be the real-time traffic density monitorization and the management strategy of infrastructures depending on the passenger flows.. AFC systems are designed for massive-density public transport. Instead of setting the user's destination or a parking place, the fare can be calculated on time-based and/or distance-based system. Benefits of using such systems include the elimination of cash and vending machines, customer convenience, faster travel and reduced the accounting and back-office costs. However, to achieve that, the design of efficient and secure AFC systems becomes necessary. Thus, a secure management of users' check-in and check-out of the system is needed, as they pay according to this use.. 2 A.P. Isern-Deyà, A. Vives-Guasch, M. Mut-Puigserver, M. Payeras-Capellà, J. Castellà-Roca means of a court order. Another consideration is the high number of users in an AFC system, requiring then the system to be very fast in both entrance and exit operations.. Our work offers a secure management for AFC systems, with strong privacy for honest users. However, if the user acts dishonestly, her identity can be disclosed in order to take legal actions, as the system offers revocable anonymity. Moreover, users do not need to obtain a new credential every time that they join the AFC system. This feature improves the system usability, because in the previous AFC systems new credential information is needed for every new journey. We have presented an electronic and secure automatic fare collection system which is adapted for massive users transport. We have achieve a system that can be adapted to time-based or distance-based fares with slightly changes. The use of group signatures schemes allows the user authentication while it is preserved her privacy. However the identity of users could be disclose in case of a user's misbehaviour. Our system, differently than others, does not require to obtain a new credential every time the user joins in the system in order to obtain untraceability and to prevent tracking and profiling. As a result, the paper proposed a secure automated fare collection resistant to attacks of confabulated user as we have demonstrated in §7. R e g is tr a ti o n E n tr a n c e E x it P r e . C In addition to that, thanks to the implementation of our system we can state the our scheme is realistic and efficient.. The future work goes in the direction to extend our implementation to new communication technologies more suitable for e-commerce procedures such us the near field communication, or NFC, which is intended mainly for use in smartphones. The authors are solely responsible for the views expressed in this paper, which do not necessarily reflect the position of UNESCO nor commit that organization. After the protocol implementation we now analyze and discuss the time results for each test. We will depict the benchmarks results from less to more detail. So, the first graph in Fig. 4 At first glance, we can say that the difference between both protocols is not as large as we could expect, because over the Desire only expends 6 more seconds to complete while on the Wildfire 21 seconds more.. Next we are going to show a detailed study of the spent time and how we can improve the application performance for both smartphones. So, we will see the spent time in each protocol step to analyze where the application requires more computation power. In order to understand Fig. 5 and Fig. 6 , we need to explain what means each step in the x-axis:. • Load Pairing. Here the user application loads all the data needed to do pairing operations, e.g. loading elliptic curve parameters from a file or preparing some Java objects.. • Prepare RSA. At this time the RSA key pair is loaded from a PEM file stored in the phone data store, e.g. from the SD storage.. • Request Pub.Param. This is the time needed for the application to request to the Group TTP (M G ) server the public parameter α needed in the next step.. This is the time used by the application to complete the registration to the Group TTP (M G ) server. It matches the protocol steps generatePseudonym and keyIssue from §5.3.3.. • pTTP Reg.. This time belongs the user registration to the Payment TTP (M C ) server. It matches the protocol steps startingZKP, challengeGeneration, proofGeneration and verifyPseudonym from §5.3.3.. • Prepare Entrance. It is the total precomputation time spent before the system entrance. It applies for both time-based and distance-based protocols. Here all the precomputable parameters needed to build the group signature are established. p T T P R e g . P r e p a r e E n t r a n c e E n t r a n c e E x it Times in ms p T T P R e g . P r e p a r e E n t r a n c e E n t r a n c e P r e p . E x it E x it Times in ms • Entrance. It is the time spent to enter the system. It matches the protocol step from §5.3.4.. • Prepare Exit. It is the time spent by the exit group signature precomputation before the exit step. It applies only for distance-based protocol version.. • Exit. Finally, it is the elapsed time by the system exit. It matches the protocol step from §5.3.5.. Then, Fig. 5 shows us the protocol time flow step by step for the time-based protocol. If we analyze the graph, we can see the time is mostly consumed to compute the system entrance step. Therefore, the Desire device is only clearly faster on the system entrance. So, if we use precomputation before the system entrance, the performance of the protocol is similar in both devices and is only clearly greater where 16A.P. Isern-Deyà, A. Vives-Guasch, M. Mut-Puigserver, M. Payeras-Capellà, J. Castellà-Roca more computation power is needed.. Next, Fig. 6 depicts similar data as Fig. 5 but now for the distance-based protocol. The trend is the same as Fig. 5 till the system entrance because previous steps are untouched. After it and before the system exit, appears a new prepare exit step where the client does more precomputations before he arrives to the exit. The important result is that the exit step is done by Desire in around 1.7 seconds while Wildfire in 4.7 seconds, that is, in this case is only 3 seconds more for the less powerful device.. If we cross compare both protocols through each smartphone, we can see that the time needed to execute the modified version, without taking care of the precomputation time which can be computed offline by the client, is not much higher than the time spent by the original version. So we can state that the modified version increases the time cost but it remains usable for both devices. Fig. 7 and Fig. 8 will expose the different execution times of each protocol stage over both smartphones if we use precomputation or not. Now, in the x-axis we depict the protocol phases as following:. • Init. This phase belongs the client application deployment time and also the time needed to request the public parameter α to the Group TTP.. • Registration. This phase adds the Group TTP registration and the Payment TTP registration times. So this is the time needed for a user to complete the system registration in order to use it.. • Entrance. It is the time required for the user till he receives the entrance ticket.. • Exit. It is the time needed for the user to leave the system till he obtains the exit ticket.. • Pre. Comp. This is the whole precomputation time. In the time-based protocol the precomputation in only needed before the entrance step while in the distance-based protocol, the precomputation is done both before entrance and exit. Note that this stage only affects Fig. 8 .. On the one hand, Fig. 7 shows us that in the timebased protocol, the entrance is the bottleneck of the system. In the distance-based protocol, the entrance step consumes again a lot of time but less than the timebased protocol because an encryption has been erased. Moreover, as a result of the security improvement in the system exit step, is clear that this stage tooks longer to execute because more computation is needed.. On the other hand, in Fig. 8 all the precomputation is taken out of the protocol and stored in the last bar. If we compare this graph set with the previous one, we can see clearly how the precomputations spent most of the time. For example, for the Wildfire smartphone, the entrance tooks around 100 seconds if precomputation is not applied. Instead, if precomputations are activated, the time spent is reduced to around 4.0 seconds. The same happens if we analyze the exit step using Wildfire and the distance-based protocol, because this step tooks around 32 seconds but if precomputations are applied, the time is reduced to only 4.7 seconds. So, we can conclude the current analysis remarking that the depicted scheme and the implementation developed is suitable to use on AFC systems. Furthermore, the differences between time-based and distance-based protocols execution times are not large. So if we want a higher level of security but with a small time penalty, we can apply the distance-based protocol. Then if we want higher efficiency we can choose the time-based protocol. In both cases, as we can see, the protocol is also suitable for the use with a medium class mobile device as well works faster with a high class smartphone. This suggest that in the near future, when even more powerful mobile devices appear in the market, the protocol performance will be even better. We use the short group signature (BBS) scheme [8] in order to verify that a user is a correct member of a certain group of users. For that reason, we present here their main definitions. Note that the notation in this section is specific for the explanation of the used definitions; in our protocol definition, only the procedures (KeyGen G , Sign G , V erif y G , Open G , SignLinkable G , V erif yLinkable G ) will be further called with their parameters, not their internal details. Consider bilinear groups G 1 and G 2 with respective generators g 1 and g 2 . Suppose further that the SDH assumption holds on (G 1 , G 2 ), and the Linear assumption holds on G 1 . The scheme uses a bilinear map e : G 1 ×G 2 → G T and a hash function H : {0, 1} * → Z * p .. The public values are g 1 , u, v, h ∈ G 1 and g 2 , w ∈ G 2 . Here w = g γ 2 for some secret γ ∈ Z p . • KeyGen G (n). This algorithm takes as input a parameter n, which is the number of members of the group. The algorithm then has the following steps: Select h. The parameter γ is then the private master key of the group key issuer.. • Sign G (gpk, gsk[i], M ). Given a group public key gpk = (g 1 , g 2 , h, u, v, w), a private user's key gsk[i] = (A i , x i ) and a message M ∈ {0, 1} * , compute and output a signature of knowledge σ = (T 1 , T 2 , T 3 , c, s α , s β , s x , s δ1 , s δ2 ).. 1. select α, β R ← Z p and compute the linear encryption of A: . 3. self-compute the challenge:. • V erif y G (gpk, M, σ). Given a group public key gpk = (g 1 , g 2 , h, u, v, w), a message M and a group signature σ = (T 1 , T 2 , T 3 , c, s α , s β , s x , s δ1 , s δ2 ), verify that σ is a valid signature of knowledge.. 1. re-derive R 1 , R 2 , R 3 , R 4 , R 5 :. 2. checks that:. This algorithm is used in order to trace a signature to a concrete signer inside the group. It is only available for the group manager, as he is the holder of the gmsk master key, and knows all the pairs (A i , x i ). Given a group public key gpk = (g 1 , g 2 , h, u, v, w), the group master private key gmsk = (ξ 1 , ξ 2 ), together with a message M and a signature σ = (T 1 , T 2 , T 3 , c, s α , s β , s x , s δ1 , s δ2 ), it proceeds as follows. First, recover the user's A by performing. 2 ). If the group manager is given the elements {A i } of the user's private keys, he can look up the user index corresponding to the identity A recovered from the signature. In order to evaluate the protocol performance we have implemented the protocol described above. Because the protocol is intended to be used with mobile devices (handsets or in-car devices) it should be implemented in a mobile platform. There are several mobile platforms available but Android seems is the growing one 56 in all type of devices, from low class to high technology terminals. Furthermore, Android uses the well know Java language for the application development, it is supported and actively developed by Google and also by a big users community who can provide a valuable feedback and help.. The first challenge was the implementation of the Short Group Signature by Boneh, Boyen and Shacham. After a deep search on the network, we cannot find any implementation of this scheme written in Java. So we decided to develop our own implementation from scratch. As the scheme is based on bilinear maps and pairings we chose to use the jPBC (Java Based Pairing Cryptography). 7 library. This library is a full Java port of PBC (Pairing Based Cryptography) 8 C library in which Shacham, one of the authors of the group signature, contributed to the development. The jPBC library provides us the ability to compute complex pairing operations over elliptic curves required by the group signature scheme.. As the group signature implementation uses pairing based cryptography and in order to unify the development, we have decided that the randoms, exponentiations and arithmetic operations use this kind of cryptography too. On the other hand, the common signatures and encryptions functions use the RSA algorithm using the Bouncycastle library 9 . The implementation is split into two key parts, that is, the client side and the server side. Furthermore, it is important the communications between each party which is developed in XML format. Next we briefly depict each side of the protocol.. • Client side. As we said, the user application (U). is developed over the Android operating system, using the API level 7 to accomplish compatibility for the two smartphones.. • Server side. This side compromises the Group TTP (M G ), the Payment TTP (M C ), the Source Station (P S ) and the Destination Station (P D ) servers. Each entity is developed over Java JDK 6.0 and all of them has his own MySQL database to store the useful information. Each entity exposes his service through a server TCP port.. • Communications.. The messages exchanged by the entities of the AFC infrastructure is serialized with XML and they are sent over a network communication. The XML format has a textual representation, it is portable and it is multiplatform, so it is suitable for our service.

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


Complex regulation of Hsf1-Skn7 activities by the catalytic subunits of PKA in Saccharomyces cerevisiae: experimental and computational evidences Background: The cAMP-dependent protein kinase regulatory network (PKA-RN) regulates metabolism, memory, learning, development, and response to stress. Previous models of this network considered the catalytic subunits (CS) as a single entity, overlooking their functional individualities. Furthermore, PKA-RN dynamics are often measured through cAMP levels in nutrient-depleted cells shortly after being fed with glucose, dismissing downstream physiological processes. Our results clarified the control of Hsf1 and Skn7 by the PKA-RN, demonstrating that in the W303 strain, PKA represses Hsf1 and also Skn7 via Ssa1, Ssa2 and a third unidentified repressor. No single component of the PKA-RN could be used to predict accurately the experimental levels of downstream targets (i.e., HSEdependent gene expression) in all the situations studied. Instead, modeling of the PKA-RN showed that the observed experimental dynamics arose from the complex interactions of the network making it necessary to analyze the system as a whole. It remains to be unveiled the exact molecular mechanisms by which the PKA CS inhibit Hsf1 and Skn7 activities. Our results indicate that such mechanism must exist and it depends on Ssa1, Ssa2, and at least a third unidentified repressor. During PKA-RN controlled processes, such as pseudohyphal growth and iron uptake, the PKA CS display similar antagonistic relationships to those observed during the control of HSE-dependent gene expression. Tpk2, but not Tpk1 or Tpk3, is required for the induction of pseudohyphal growth and for the inhibition of genes involved in iron uptake [61, 68, 69] . Additionally, the fact that various updating and averaging schemes produced essentially the same results is quite interesting (Additional file 2: Figure S3 ), as this means that the WDM really captured the population average in batch cultures regardless of the specific updating scheme. To our knowledge, this is the first model with this property. Thus, with simple modifications, it can pave the way for the analysis of many other cellular responses at the population level apart from the PKA-RN. The cyclic AMP (cAMP)-dependent protein kinase (PKA) regulatory network (PKA-RN) is found in protozoa, animals, algae, and fungi. It plays a central role in the control of different inter-and intra-cellular processes such as metabolism, cell proliferation, stress response, and development [57, 84] . In yeast, the PKA-RN is also involved in the control of growth in response to nutrient conditions, which in turn are known to influence the stress response [84] .. In S. cerevisiae, the PKA holoenzyme forms an inactive tetramer composed of two regulatory subunits (2 x Bcy1) [85] and two out of three CS (Tpk1, Tpk2, or Tpk3) [86] . When intracellular concentrations of cAMP increase, Bcy1 binds cAMP, promoting the activation by release of the CS. Two proteins, Gpa2 and Ras2, regulate adenylate cyclase, which catalyzes the synthesis of cAMP [14, 43, 84] . Formation of a Ras2⋅GTP complex [22] , the active state of Ras2, requires the GDP-GTP exchange activity of Cdc25 [6] . Moreover, the intracellular concentrations of cAMP are also controlled by the phosphodiesterases Pde1 and Pde2 [84] . The low affinity phosphodiesterase Pde1 reduces cAMP levels in nutrient depleted cells soon after glucose addition [55] , whereas the high affinity phosphodiesterase Pde2 lowers cAMP levels during the exponential and stationary phases of growth [62] . It is thought that the activity of the pathway increases at high levels of glucose (or other rapidly fermentable sugars) and declines when the cells deplete the sugars, or when entering stationary phase [84] . Therefore, the PKA activity is influenced by the amount of fermentable sugars and by the growth phase of the culture.. The growth phase of yeast liquid cultures impacts their level of thermotolerance. For instance, during the exponential phase cells are stress sensitive, whereas during the stationary phase they develop stress resistance [67, 91] . This behavior has been studied using genetic analysis. Stress resistance is explained through a reduced activity of the Ras-cAMP branch of the pathway (such as in cdc25Δ, cyr1 or ras1 ras2 ts strains). These mutants grow slowly and show elevated basal thermotolerance during exponential phase [23, 25, 42, 64, 83] . In contrast, mutants with high PKA activity, such as ira2, pde2, bcy1 or RAS2 val19 , are very sensitive to temperature stress [19, 55, 62, 84, 87] . In exponential phase, basal thermotolerance is negatively regulated by the Rim15 protein kinase [67] . However, acclimation to high temperatures during the exponential phase requires the concerted action of Hsf1 and Msn2/Msn4 transcription factors, and chromatin remodeling complexes such as SWI/SNF [3, 18] . These factors allow the rapid transcription of genes encoding stress proteins involved in prevention and repair of damages caused by stress [3, 19, 33] .. Hsf1 transcription factor is encoded by a single gene [76] and shows high affinity for the heat shock elements (HSE), found in the promoters of the heat shock genes [21] . The essentiality of Hsf1 indicates that -besides being important for the response to carbon starvation as well as heat, osmotic, and oxidative stress -it also plays important functions in normal growth [3, 4, 76, 81] . The widespread functions regulated by Hsf1 explain its binding to a large number of promoters (about 3 % of the genes in the yeast genome). Among the functions of its targets are: protein folding, degradation, trafficking, cell integrity maintenance, transport, signaling, and transcription [33] . Hsf1 contains DNA binding and trimerization domains and is hyper-phosphorylated in serine and threonine residues in response to heat and oxidative stress [39, 76] , modifications that activate its transcriptional activity [39, 76] . The PKA constitutively represses the activity of Hsf1, thereby inhibiting the expression of small heat shock protein genes [20] . It is documented that, in this regulation, the CS of PKA do not interact directly with Hsf1 [20] . Moreover, when the activity of the PKA is low, such as during glucose starvation, Hsf1 is phosphorylated and activated by Yak1 and Rim15 kinases [50, 51] . However, the factors that mediate the regulation of Hsf1 by the PKA in glucose-rich media, and in response to heat shock, are still unknown. In addition to Hsf1, Skn7 also recognizes HSE elements [66] and is part of a two-component system required for the signaling of the hypo-osmotic stress and the oxidative stress pathways [49, 82] . Previous reports have shown that the activity of Skn7 during the oxidative stress response is negativelyregulated by the PKA-RN [10] .. Recently, it has become evident that results based only in experimental approaches, and the static models derived from them, are not sufficient to fully understand the complex dynamics of a cellular system. Rather, the integration of experimental data with dynamical modeling has expanded our current knowledge of the cell by enabling the prediction of hidden cellular behaviors. Thus, computational modeling is becoming an indispensable tool to comprehend the organization of biological systems [48, 80] and the analysis of the dynamics of the PKA-RN is no exception. Some studies of the PKA-RN considered only its core components and focused on the feed-back regulation of cAMP levels that nutrient-depleted cells display during the short-term response (i.e., seconds) to a pulse of glucose [8, 63, 93] . More recently, PKA-RN models simulate long-term growth (i.e., hours) in glucose [28] and evaluate targets downstream of the PKA [24, 29] . However, in all these models the activity of the three CS (Tpk1, Tpk2, and Tpk3) is considered as a single entity, assumption that might be correct in certain scenarios. Nonetheless, in most situations, this assumption could be misleading, as it is known that each CS has unique target specificities [65] . Furthermore, the CS regulate certain physiological processes in an antagonistic fashion [61, 68, 69] , complicating even more the prediction of the dynamics of the PKA-RN.. In this work, we performed a genetic analysis of the Cdc25-Ras2 branch and some downstream components of the PKA-RN (Fig. 1) . We then incorporated these results into a dynamic computational model, to further understand the mechanistic nature of the network. HSEdependent gene expression was chosen as the end product of the PKA-RN and the performance of cells growing exponentially in glucose-rich media, both at optimal temperature and in response to heat shock, was evaluated. We tested how the different PKA subunits (regulatory and each CS) interacted with each other. Novel interactions, in addition to those already known, are described. Computational modeling of the PKA-RN was performed by extending the well-established "discrete dynamics modeling framework" [1, 38, 71, 90] in order to take into account the fact that gene expression measurements of batch cultures average out individual expression patterns. We named this extension, the Windowed Discrete Model (WDM) because it averages over a given time window the discrete values of the network elements in a given attractor, and weighs this average by the size of the corresponding basin of attraction. This process incorporates the whole set of steady states of the network and captures the inherent averages in In this scheme Cdc25, Ras2, Cyr1, Tpk1, Tpk3, Hsf1, and Skn7 act as positive regulators. Bcy1, an unidentified repressor of Hsf1/Skn7 (Repressor X), cAMP, and heat shock act as repressors. Interestingly, in this scheme Ssa1, Ssa2, and Tpk2 interactions are complex acting both as activators and as repressors. The experimental evidence that accounts for the activities and interactions of the components is described in the Background and Results and discussion sections population measurements. Although discrete dynamic models are intended to describe expression patterns at the single-cell level, our approach allowed us to make quantitative predictions of gene expression patterns taken at the population level for both WT and mutant strains. Furthermore, we showed that when the population average inherent to batch cultures was implemented in the WDM, the results were similar regardless of the use of synchronous or asynchronous updating of the network elements.. Our genetic analysis showed that the PKA-RN controls HSE-dependent gene expression via Hsf1/Skn7 transcription factors. Modeling the control of Hsf1-Skn7 by the PKA-RN predicted the existence of a repressor connecting the CS with Hsf1-Skn7 and encouraged new genetic analyses that proved that Ssa1 and Ssa2 chaperones repress Hsf1/Skn7 when activated by the CS of PKA. Additionally, novel functions of Skn7 and of the C-terminal domain of Hsf1, such as growth control, thermotolerance, and resistance to H 2 O 2 , were revealed whenever the activity of PKA was low. Our model also predicted the existence of a still unidentified third repressor of Hsf1/Skn7, active only in the absence of Tpk2. The WDM explained and predicted HSE-dependent gene expression in WT and mutant strains with and without high temperature stress. We believe that our WDM of the PKA-RN can be useful to simulate other biological processes where the CS of PKA show similar antagonistic interactions, such as in the control of pseudohyphal growth or iron uptake [61, 68, 69] .. Without further adaptations, the WDM is, to our knowledge, the first suitable tool based on discrete dynamics that can be used to simulate data obtained from population level measurements (batch cultures), despite of their known heterogeneity at the physiological and gene expression levels [23, 40, 53] .

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


Machine learning for medical diagnosis: history, state of the art and perspective The paper provides an overview of the development of intelligent data analysis in medicine from a machine learning perspective: a historical view, a state of the art view and a view on some future trends in this subfield of applied artificial intelligence. The paper is not intended to provide a comprehensive overview but rather describes some subeareas and directions which from my personal point of view seem to be important for applying machine learning in medical diagnosis. In the historical overview I emphasize the naive Bayesian classifier, neural networks and decision trees. I present a comparison of some state of the art systems, representatives from each branch of machine learning, when applied to several medical diagnostic tasks. The future trends are illustrated by two case studies. The first describes a recently developed method for dealing with reliability of decisions of classifiers, which seems to be promising for intelligent data analysis in medicine. The second describes an approach to using machine learning in order to verify some unexplained phenomena from complementary medicine, which is not (yet) approved by the orthodox medical community but could in the future play an important role in overall medical diagnosis and treatment. Artificial intelligence is a part of computer science that tries to make computers more intelligent. One of the basic requirements for any intelligent behaviour is learning. Most of the researchers today agree that there is no intelligence without learning. Therefore, machine learning (Shavlik and Dietterich, 1990; Michie et al., 1994; Mitchell, 1997; Michalski et al., 1998 ) is one of major branches of artificial intelligence and, indeed, it is one of the most rapidly developing subfields of AI research.. Machine learning algorithms were from the very beginning designed and used to analyse medical data sets. Today machine learning provides several indispensible tools for intelligent data analysis. Especially in the last few years, the digital revolution provided relatively inexpensive and available means to collect and store the data. Modern hospitals are well equipped with monitoring and other data collection devices, and data is gathered and shared in large information systems. Machine learning technology is currently well suited for analyzing medical data, and in particular there is a lot of work done in medical diagnosis in small specialized diagnostic problems.. Data about correct diagnoses are often available in the form of medical records in specialized hospitals or their departments. All that has to be done is to input the patient records with known correct diagnosis into a computer program to run a learning algorithm. This is of course an oversimplification, but in principle, the medical diagnostic knowledge can be automatically derived from the description of cases solved in the past. The derived classifier can then be used either to assist the physician when diagnosing new patients in order to improve the diagnostic speed, accuracy and/or reliability, or to train students or physicians non-specialists to diagnose patients in a special diagnostic problem.. The aim of this paper is to provide an overview of the development of the intelligent data analysis in medicine from a machine learning perspective: a historical view, a state of the art view and a view on some future trends in this subfield of applied artificial intelligence, which are, respectivly described in the following three sections. None of the three sections is intended to provide a comprehensive overview but rather describe some subeareas and directions which from my personal point of view seem to be important for medical diagnosis. In the historical overview I emphasize the naive Bayesian classifier, neural networks and decision trees. Section 3 presents a comparison of some state of the art systems, one or two representatives from each branch of machine learning, when applied to several medical diagnostic tasks. The future trends are illustrated by two case studies. Section 4.1 describes a recently developed method for dealing with reliability of decisions of classifiers, which seems to be promising for intelligent data analysis in medicine. Section 4.2 describes an approach to using machine learning in order to verify some unexplained phenomena from complementary medicine, which is not (yet) approved by the orthodox medical community but could in the future play an important role in overall medical diagnosis and treatment. The historical development of machine learning and its applications in medical diagnosis shows that from simple and straigtforward to use algorithms, systems and methodology have emerged that enable advanced and sophisticated data analysis. In the future, intelligent data analysis will play even a more important role, due to the huge amount of information produced and stored by modern technology. Current machine learning algorithms provide tools that can significantly help medical practitioners to reveal interesting relationships in their data. Our experiments show that in medical domains various classifiers perform roughly the same. So one of the important factors when choosing which classifier to apply is its explanation ability. Our experiments show that the physicians prefer explanations as provided by the Bayesian classifiers and decision tree classifiers: Assistant-R and LFC. However, instead of selecting a single best classifier, it seems that the best solution is to use all of them and combine their decision when solving new problems. The physicians found that the combination of classifiers was the appropriate way of improving the reliability and comprehensibility of diagnostic systems. The combination should be done in an appropriate way and the reliability of each classifier on the given new case should be taken into account, as the results of Kukar (2001) clearly demonstrate.. Regarding the future role of machine learning in medical diagnosis, our views are as follows:. • Machine learning technology has not been accepted in the practice of medical diagnosis to an extent that the clearly demonstrated technical possibilities indicate. However, it is hard to expect that this disproportion between the technical possibilities and practical exploitation will remain for very much longer.. • Among the reasons for slow acceptance perhaps the most reasonable one is that the introduction of machine learning technology will further increase the abundance of tools and instrumentation available to physicians. Any new tool has the undesirable side effect of further increasing the complexity of the physician's work which is already sufficiently complicated. Therefore machine learning technology will have to be integrated into the existing instrumentation that makes its use as simple and natural as possible.. • Machine learning based diagnostic programs will be used as any other instrument available to physicians: as just another source of possibly useful information that helps to improve diagnostic accuracy. The final responsibility and judgement whether to accept or reject this information will, as usual, remain with the physician.. • Complementary medicine is becoming in recent years more and more important, which can be seen also by the amount of money people spend on various complementary medicine treatments. Physicians are becoming aware of the efficiency and the benefits of complementary medicine and they need verification procedures in order to acknowledge the benefits and issue licences for the use of complementary approaches. Machine learning can play an important role in this process in praticular due to the transparency of data analysis.

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


Prediction

of

heterogeneous

differential

genes

by

detecting

outliers

to

a

Gaussian

tight

cluster

Background:

Heterogeneously

and

differentially

expressed

genes

(hDEG)

are

a

common

phenomenon

due

to

bio-logical

diversity.

A

hDEG

is

often

observed

in

gene

expression

experiments

(with

two

experimental

conditions)

where

it

is

highly

expressed

in

a

few

experimental

samples,

or

in

drug

trial

experiments

for

cancer

studies

with

drug

resistance

heterogeneity

among

the

disease

group.

These

highly

expressed

samples

are

called

outliers.

Accurate

detection

of

outliers

among

hDEGs

is

then

desirable

for

dis-ease

diagnosis

and

effective

drug

design.

The

standard

approach

for

detecting

hDEGs

is

to

choose

the

appropriate

subset

of

outliers

to

represent

the

experimental

group.

However,

existing

methods

typically

overlook

hDEGs

with

very

few

outliers.Results:

We

present

in

this

paper

a

simple

algorithm

for

detecting

hDEGs

by

sequentially

testing

for

potential

outliers

with

respect

to

a

tight

cluster

of

non-outliers,

among

an

ordered

subset

of

the

experimental

samples.

This

avoids

making

any

restrictive

assumptions

about

how

the

outliers

are

distributed.

We

use

simulated

and

real

data

to

illustrate

that

the

proposed

algorithm

achieves

a

good

separation

between

the

tight

cluster

of

low

expressions

and

the

outliers

for

hDEGs.The

proposed

algorithm

assesses

each

potential

outlier

in

relation

to

the

cluster

of

potential

outliers

without

making

explicit

assumptions

about

the

outlier

distribution.

Simulated

examples

and

and

breast

cancer

data

sets

are

used

to

illustrate

the

suitability

of

the

proposed

algorithm

for

identifying

hDEGs

with

small

numbers

of

outliers.

The

difficulty

in

identifying

hDEGs

arises

from

the

fact

that

only

a

small

number

of

experimental

samples

are

highly

expressed

at

a

much

higher

level

than

the

nonoutliers.

As

a

result,

various

modified

t

tests

target

the

subset

of

potential

outliers

which

are

then

tested

against

the

control

group.

In

practice,

for

hDEGs

with

very

few

outliers,

we

found

that

these

algorithms

often

identify

hDEGs

with

insignificant

deviations

between

the

outliers

and

the

tight

cluster

of

non-outliers.

Based

on

this

observation,

the

proposed

algorithm

assesses

each

potential

outlier

in

relation

to

the

Gaussian

tight

cluster

without

making

an

explicit

assumption

about

the

outlier

distribution.

At

each

step,

we

update

the

posterior

mean

and

variance

of

the

tight

cluster

which

are

then

used

to

evaluate

the

probability

of

an

outlier

being

a

random

sample

of

the

tight

cluster.

Examples

of

simulated

and

breast

cancer

data

sets

verify

the

suitability

of

the

proposed

algorithm

in

identifying

hDEGs

with

small

numbers

of

outliers.

An

extension

of

the

algorithm

which

fully

takes

into

account

gene

correlations

will

be

presented

in

future

work.

For

the

breast

cancer

data,

we

found

negligible

correlations

across

the

top

ranking

genes

and

very

low

correlations

among

the

less

significant

genes.

A

heterogeneously

and

differentially

expressed

gene

(hDEG)

is

a

gene

which

has

an

inconsistent

expression

pattern

across

its

experimental

samples.

Typically,

a

large

proportion

of

the

experimental

samples

and

the

control

samples

form

a

tight

cluster

in

low

expressions.

The

remaining

small

proportion

of

experimental

samples,

namely

the

outliers,

are

observed

to

significantly

deviate

from

the

tight

cluster

towards

high

expressions.

We

use

the

word

'tight'

to

describe

the

cluster

of

(or

low)

expressions

of

a

hDEG

as

the

variance

is

typically

small

compared

to

the

null-outlier

distance.

In

situations

where

the

few

highly

expressed

outliers

of

a

non-differential

gene

are

caused

by

measurement

error,

it

*Correspondence:

z.h.yang@qmul.ac.uk

Wolfson

Institute

for

Preventive

Medicine,

Queen

Mary

University

of

London,

Charterhouse

Square,

London

UK

Full

list

of

author

information

is

available

at

the

end

of

the

article

is

also

useful

to

distinguish

such

genes

with

hDEG

characteristics.

The

existence

of

hDEGs

has

been

established

in

various

experiments

Suppose

we

have

the

expressions

of

m

genes.

The

standard

t

statistic

under-estimates

the

significance

in

testing

the

difference

across

the

control

and

experimental

samples

of

a

hDEG.

COPA

(cancer

profile

outlier

analysis)

proposed

modifying

the

Student

t

statistic

to

be

a

ratio

of

the

distance

between

the

rth

(default

percentile

of

experimental

samples

and

the

median

of

all

samples

over

the

median

absolute

distance

(deviated

from

the

whole

sample

median),

i.e.,.

where

σ

i

med(x

i

λ

i

y

i

λ

i

x

i

and

y

i

represent

control

samples

and

experimental

samples

of

the

ith

gene

respectively,

q

r

(y

i

is

the

rth

percentile

of

y

i

and

λ

i

is

the

median

of

both

x

i

and

y

i

The

quantile-median

difference

in

summarises

the

null-outlier

distance

using

a

single

value

of

y

i

To

make

outlier

detection

more

efficient,

the

outlier-sum

(OS)

statistic

sums

over

outliers,.

where

the

outliers

are

defined

as

{y

y

i

Outlier

robust

t

statistic

(ORT)

uses

the

same

statistic

but

defines

the

outliers

in

relation

to

the

control

samples

only

{y

y

i

y

q

(x

i

IQR(x

i

Maximum

ordered

subset

t

statistic

(MOST)

defines

the

outliers

to

be

the

top

k

experimental

samples

and

chooses

k

by

optimising

a

normalised

t

statistic

The

least

sum

of

ordered

subset

square

t

statistic

(LSOSS)

also

compares

the

controls

with

a

subset

of

the

top

k

experimental

samples,.

wherex

i

is

the

mean

of

control

samples,ȳ.

is

the

mean

of

top

k

experimental

samples

and

S

i

is

the

pooled

standard

deviation

of

the

set

of

control

samples

plus

non-outlier

experimental

samples

and

the

set

of

outlier

experimental

samples.

k

is

optimised

iteratively

to

minimise

the

within-cluster

variance..

We

propose

a

new

algorithm

for

detecting

hDEGs

with

a

small

number

of

outliers

by

detecting

outliers

via

gap

(DOG)

maximisation.

What

makes

this

approach

different

from

the

existing

methods

is

that

we

assess

each

potential

outlier

in

relation

to

a

tight

cluster

of

non-outliers.

This

avoids

modelling

the

highly

expressed

outliers

explicitly.

This

is

especially

important

when

the

number

of

outliers

is

small.

The

proposed

algorithm

classifies

each

gene

as

a

hDEG

or

non-hDEG

by

locating

potential

outliers

and

summarises

it

using

the

average

of

the

standardised

outlier

expressions.

We

will

use

simulated

examples

and

a

breast

cancer

dataset

to

illustrate

the

effectiveness

of

the

proposed

algorithm

in

detecting

hDEGs

with

few

outliers.

We

will

also

show

how

effective

test

algorithms

are

when

varying

conditions.

The

proposed

algorithm

can

be

briefly

summarised

as

follows.

We

first

take

the

list

of

candidate

outliers

to

be

those

experimental

samples

whose

expressions

are

larger

than

the

maximum

expression

of

control

samples.

For

the

situation

when

control

samples

also

contain

outliers,

see

section

Allowing

control

samples

to

contain

outliers

for

a

description

of

the

necessary

extension.

The

samples

in

the

candidate

list

are

sorted

in

an

ascending

order.

The

Figure

Trends.

Breast

cancer

data:

trends

of

scaled

medians

(median

minus

the

minimum

across

each

sample

index)

across

the

experimental

samples

of

the

log

expressions

of

each

algorithm's

unique

top

hDEGs..

algorithm

then

updates

the

tight

cluster

of

non-outliers

by

testing

sequentially

the

samples

in

the

updated

candidate

list

of

outliers.

The

test

is

terminated

when

a

significant

deviation

between

a

candidate

sample

and

the

tight

cluster

is

detected.

We

now

give

the

steps

in

more

statistical

detail.

First,

let

us

introduce

some

notation.

Let

x

denote

the

control

samples

and

y

the

experimental

samples

of

a

gene

or

a

probe

set

(we

drop

the

gene

subscript

i

for

simplicity).

The

proposed

DOG

algorithm

has

the

following

steps:.

Candidate

outlier:

Given

the

union

of

x

and

y,

z

x

y,

we

divide

z

into

the

candidate

outlier

set

z

{z.

where

sorts

the

elements

of

a

set

in

an

ascending

order.

Detection:

Given

a

critical

tail

probability

α

and

the

corresponding

threshold

t

α

The

first

element

in.

is

classified

as

the

first

outlier

if.

in

which

case

the

algorithm

terminates

and

z

is

the

set

of

outliers.

We

use

a

default

value

of

α

The

parameters

μ

and

β

σ

−2

are

updated

using

iterative

Bayesian

learning,

i.e.,

by

maximising

the

posterior

probability

Given

z

N

(μ,

with

conjugate

priors

μ

N

(μ

and

IG(a,

b)

the

log-posterior

is.

where.

and

θ

(μ,

β)

and

α

(μ

σ

a,

b).

Suppose

n

is

the

number

of

expressions

in

the

tight

cluster

for

the

current

iteration.

For

simplicity,

we

set

μ

med(z

a

b

is

set

to

be

the

maximum

variance

of

expressions

calculated

gene

by

gene.

To

simplify

the

notation,

we

let

β

σ

−2

β

is

updated

recursively

but

we

set

its

initial

value

to

be

β

The

maximum

a

posteriori

probability

procedure

then

gives

the

updates.

Repeat

and

until

the

first

outlier

(with

the

lowest

expression)

is

detected

or

until

all

candidate

outliers

have

been

classified

as

non-outliers.

Classification:

A

gene

for

which

the

set

z

is

non-empty

is

classified

as

a

hDEG..

The

summary

statistic

for

a

gene

is

taken

to

be

the

average

of

the

outlier

statistics

j∈z

t

j

/|z

We

use

the

average

as

opposed

to

the

sum

of

outlier

contributions

as

we

prioritise

the

detection

of

hDEGs

with

few

outliers.

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


mstate:

An

R

Package

for

the

Analysis

of

Competing

Risks

and

Multi-State

Models

Multi-state

models

are

a

very

useful

tool

to

answer

a

wide

range

of

questions

in

survival

analysis

that

cannot,

or

only

in

a

more

complicated

way,

be

answered

by

classical

models.

They

are

suitable

for

both

biomedical

and

other

applications

in

which

time-toevent

variables

are

analyzed.

However,

they

are

still

not

frequently

applied.

So

far,

an

important

reason

for

this

has

been

the

lack

of

available

software.

To

overcome

this

problem,

we

have

developed

the

mstate

package

in

R

for

the

analysis

of

multi-state

models.

The

package

covers

all

steps

of

the

analysis

of

multi-state

models,

from

model

building

and

data

preparation

to

estimation

and

graphical

representation

of

the

results.

It

can

be

applied

to

non-and

semi-parametric

(Cox)

models.

The

package

is

also

suitable

for

competing

risks

models,

as

they

are

a

special

category

of

multi-state

models.This

article

offers

guidelines

for

the

actual

use

of

the

software

by

means

of

an

elaborate

multi-state

analysis

of

data

describing

post-transplant

events

of

patients

with

blood

cancer.

The

data

have

been

provided

by

the

EBMT

(the

European

Group

for

Blood

and

Marrow

Transplantation).

Special

attention

will

be

paid

to

the

modeling

of

different

covariate

effects

(the

same

for

all

transitions

or

transition-specific)

and

different

baseline

hazard

assumptions

(different

for

all

transitions

or

equal

for

some).

Recently,

multi-state

and

competing

risks

models

have

gained

considerable

popularity

in

survival

analysis.

In

the

first

place,

this

popularity

is

due

to

the

fact

that

in

comparison

to

classical

models,

these

models

describe

the

disease/recovery

process

of

patients

in

more

detail,

thus

yielding

more

insight.

In

the

second

place,

these

models

are

useful

in

a

clinical

setting

for

the

prediction

of

survival

duration

for

specific

patients.

These

predictions

can

eas-ily

be

updated

if

information

about

events

later

occurring

to

such

a

patient

becomes

available.

The

influence

of

covariates

can

be

taken

into

account..

Although

the

relevance

of

these

models

is

clearly

recognized,

their

application

by

non-statisticians

has

so

far

been

limited.

An

important

reason

for

this

is

the

lack

of

available

software.

For

this

reason,

we

have

developed

a

software

package

in

R

(R

Development

Core

Team

called

mstate,

which

can

be

used

for

the

different

phases

of

the

description

and

analysis

of

competing

risks

and

multi-state

models.

It

is

primarily

designed

for

non-and

semi-parametric

Cox

models.

However,

we

have

paid

special

attention

to

the

flexibility

of

the

functions:

they

can

be

used

independently

of

each

other

to

enable

users

to

combine

their

own

functions

with

those

of

mstate

when

considering

models

different

from

ours.

mstate

is

available

from

the

Comprehensive

R

Archive

Network

at

The

mathematics

underlying

the

package,

its

philosophy

and

features

and

an

example

have

been

discussed

in

our

previous

paper

de

Wreede

et

al.

A

more

general

introduction

into

competing

risks

and

multi-state

models

can

be

found

in

Putter

et

al.

The

current

article

builds

on

these

previous

articles.

It

describes

in

detail

how

the

functions

work

by

means

of

a

more

elaborate

example.

The

mathematical

concepts

related

to

the

functions

will

only

be

mentioned

briefly

in

the

relevant

places.

The

use

of

the

package

is

illustrated

by

the

analysis

of

a

model

describing

the

disease/recovery

process

of

leukemia

patients,

of

which

model

several

variants

will

be

discussed.

The

code

for

all

of

them

will

be

given,

and

it

will

be

explained

how

this

should

be

adapted

for

other

models.

Data,

clinical

questions

and

model

are

introduced

in

Section

We

consider

estimation

and

prediction

both

for

a

non-parametric

model

(Section

and

a

semi-parametric

model

including

several

relevant

clinical

covariates

(Section

The

use

of

transition-specific

covariates

will

be

explained.

As

a

special

semi-parametric

model,

we

consider

a

proportional

baseline

hazards

model,

which

is

useful

for

reducing

the

number

of

parameters

in

the

model

(Section

In

Section

we

discuss

reduced

rank

models

and

two

functions

for

simulation

and

bootstrapping

in

the

context

of

multi-state

models.

Finally,

the

analysis

of

competing

risks

models

by

means

of

mstate

is

discussed

briefly

in

Section

Although

multi-state

models

are

a

very

useful

tool

to

answer

a

wide

range

of

questions

in

survival

analysis,

they

are

not

frequently

applied.

So

far,

an

important

reason

for

this

has

been

the

lack

of

available

software.

For

this

reason

we

have

developed

a

package

in

R

that

offers

the

user

the

opportunity

to

explore

different

kinds

of

multi-state

models

and

estimate

their

parameters

of

interest

on

the

basis

of

a

regular

data

set

containing

the

times

to

event

of

the

events

of

interest

and

optionally

covariate

values.

The

functions

in

the

package

are

flexible,

which

means

that

they

can

easily

be

combined

with

user-written

software

in

cases

when

models

not

covered

by

mstate

are

studied..

In

mstate,

we

restrict

ourselves

to

non-and

semi-parametric

models.

This

means

that

for

parametric

models

other

software

is

needed,

such

as

the

R

package

msm

developed

by

Christopher

Jackson

(see

Jackson

Jackson

In

this

article,

we

have

explored

the

role

of

the

mstate

functions

in

the

different

phases

of

a

multi-state

analysis:

model

building,

data

preparation,

exploration

of

different

covariate

effects

and

baseline

assumptions,

estimation

of

hazards,

transition

probabilities

and

associated

standard

errors.

In

particular,

it

has

been

explained

how

predictions

can

be

updated

if

more

information

becomes

known

(dynamic

prediction).

This

possibility

is

an

important

extra

feature

of

multi-state

models

compared

to

classical

survival

models.

Moreover,

several

ways

of

presenting

the

outcomes

in

figures

have

been

shown.

Finally,

we

have

presented

some

functions

for

reduced

rank

modeling

and

for

bootstrap

and

simulation

procedures..

In

future

releases

of

mstate

we

plan

to

implement

prediction

in

Markov

renewal

models,

with

and

without

covariates.

Formulas

similar

to

the

Aalen-Johansen

estimator

currently

implemented

in

probtrans()

also

exist

for

this

type

of

models,

but

are

not

yet

available

in

any

software

package.

Other

methods

are

also

planned

to

be

included

in

mstate:

dynamic

prediction

using

landmarking

of

van

Houwelingen

vertical

modeling

in

competing

risks

models

of

Nicolaie

et

al.

the

Fine-Gray

regression

method

for

competing

risks

with

left

truncation

developed

by

Geskus

and

methods

for

quality-of-life

adjusted

survival

in

the

context

of

multi-state

models.

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


Data allocation on wireless broadcast channels for efficient query processing Abstract-Data broadcast is an excellent method for efficient data dissemination in the mobile computing environment. The application domain of data broadcast will be widely expanded in the near future, where the client is expected to perform complex queries or transactions on the broadcast data. To reduce the access latency for processing the complex query, it is beneficial to place the data accessed in a query close to each other on the broadcast channel. In this paper, we propose an efficient algorithm to determine the allocation of the data on the broadcast channel such that frequently co-accessed data are not only allocated close to each other, but also in a particular order which optimizes the performance of query processing. Our mechanism is based on the well-known problem named optimal linear ordering. Experiments are performed to justify the benefit of our approach. R APID advances in wireless communications and software/hardware technologies enable a client carrying a mobile device to access information without the restriction of time and location. Broadcast-based information systems provide dissemination of information with a cost independent of the number of clients, which compensates for the limited bandwidth in wireless communications. Moreover, the clients can retrieve the broadcast data by just tuning to the broadcast channel, which results in a certain degree of energy saving. Therefore, data broadcast has become an attractive solution for information dissemination. Database broadcast is first addressed in the Datacycle project [12] , where the communication medium is high-speed optical fiber. The queries are processed by a hardware device which filters the data on the channel. The Datacycle architecture is improved in [27] by maintaining only the needed data on the broadcast channel. Several forms of data broadcast have been used in commercial products [2] .. Assume the data on the broadcast channel are composed of data objects which may correspond to web pages or relation tuples. A client submits a query to retrieve data objects from the broadcast channel. The query may access one data object (called simple query) or more than one data object (called complex query). Many approaches have been proposed to schedule data objects for efficient processing of simple queries. In [17] , a broadcast program where the data objects are broadcast in a periodic fashion is proposed.. According to the access frequencies of the data objects, some frequently accessed data objects can be replicated in the broadcast program to reduce the access time. The methods to replicate data objects are presented in [1] , [13] , [26] . Moreover, in [14] , [16] , [18] , [19] , [23] , index techniques are used to reduce the tuning time. For efficient processing of complex queries, to allocate the data objects accessed together on the broadcast channel can also improve the performance. As discussed and justified in [6] , the traditional disk-based data allocation techniques perform poorly for the broadcast data due to the lack of the random-access feature on the broadcast channel. New channel-based data allocation techniques should be studied.. There exist relationships among the data objects to be broadcast. For example, the anchor relationship for the web pages, the referential integrity constraint for the relations in the relational database, and the composition relationship for the objects in the object database. In these cases, the related data objects for a complex query should be allocated in an order according to their relationships for a better performance, which complicates the data allocation problem. The issues of database broadcast in the mobile environment are studied in [24] . The data objects on the broadcast channel are relations in a relational database or classes in an object database. As mentioned before, clustering the data objects accessed in the complex queries frequently submitted can reduce the average access cost for processing the queries. The objective in [24] is to find an optimal broadcast order of the data objects such that the average access cost for a set of queries is minimized. This problem is formulated by a graph-based model. The optimal broadcast order is found by a branch-and-bound searching algorithm. However, as the number of data objects increases, the time needed to compute the optimal broadcast order increases exponentially. In fact, this kind of ordering problems can be proven to be NP-complete through the optimal linear ordering problem [8] . In [5] , the method for finding the optimal broadcast program for two dependent files is proposed. In [4] , a lower bound on the average access time of the optimal broadcast program for the complex queries is derived. Moreover, an algorithm to achieve a random permutation of the broadcast data is proposed whose corresponding average access time is twice of the lower bound on the average access time. A special case where there is no cyclic dependence among the dependent data is discussed in [6] . The broadcast order is decided by a set of heuristic rules. In [7] , the scheduling method for answering complex queries where there is no access order constraint among the required data objects is presented. The broadcast order is decided by a greedy method based on the frequencies of queries. Based on [7] , [21] , [22] propose a more efficient algorithm to solve this problem. The index issues for answering complex queries are discussed in [9] , where the client always waits for the index placed at the beginning of the broadcast cycle before any data access. In [11] , the issue of allocating dependent data on multiple channels is discussed. A heuristic algorithm is proposed to cluster related data objects to minimize overall broadcast time.. In this paper, database broadcasting with query optimization is considered. To measure the cost of query processing, two metrics introduced in [16] can be used. The access time is the time elapsed from the moment a client first tunes in the broadcast channel to the moment all the relevant data are downloaded. The tuning time is the time spent by the client listening to the broadcast channel, which is an indicator of the power consumption. To reduce the access time, relevant attributes accessed in a query should be allocated nearby in the broadcast channel. To reduce the tuning time, the amount of data involved in the query processing should be small. In our approach, a relational database is first vertically partitioned into fragments based on attributes. Given the information of a set of complex queries with their querying frequencies in the past, we predict future data accesses and allocate relevant attributes instead of the whole database on the broadcast channel. A client can retrieve the attributes involved in the query by directly listening to the broadcast channel. The query processing is performed during the access of the relevant attributes. For the case where the needed attribute is not allocated on the broadcast channel, the client can submit the query to the server and receive the needed data on the on-demand channel. Our problem is to allocate the attributes on the broadcast channel such that the average access time to access the attributes involved in the queries according to the query optimization order is minimized. Accessing attributes and processing queries according to the query optimization order minimizes the amount of downloaded data and, therefore, minimizes the tuning time.. The rest of the paper is organized as follows: Section 2 discusses the database broadcasting issues and introduces some existing problems related to our approach. A graph representation method for solving our problem is discussed in Section 3. In Section 4, how to allocate attributes on the broadcast channel is presented. A simulation model and the analysis of the simulation results are described in Section 5. Finally, Section 6 concludes this work. The data allocation problem on the disk storage has been widely studied in the past. As the application of data broadcast in the mobile environment becomes popular, the issue of data allocation on the broadcast channel for reducing the access latency receives much attention. In this paper, the database broadcast issues are discussed and the idea of the access graph is introduced to represent the data objects with a certain relationship. Moreover, heuristics are proposed to determine the broadcast order for data objects whose relationship is represented by an access graph. This problem can be proven to be NP-complete. We propose a heuristic to solve the problem based on the techniques of solving two well-known problems, the maximum branching problem and optimal linear ordering problem. We transform the access graph to a set of access trees, each of which can be arranged into an optimal broadcast order. Then, we merge these broadcast orders to form the final result. We take the effect of each removed edge from the access graph into consideration, which makes our approach more effective. Our proposed algorithm can deal with any access graph with different sizes of data objects. Experiments show that our approach has good performance. In the future, we will consider the data allocation problem on multiple broadcast channels and the issue of using data replication to increase the availability of popular data objects. . For more information on this or any computing topic, please visit our Digital Library at http://computer.org/publications/dlib.

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


Investigating the impact of sequential selection in the (1,4)-CMA-ES on the noisy BBOB-2010 testbed Sequential selection, introduced for Evolution Strategies (ESs) with the aim of accelerating their convergence, consists in performing the evaluations of the different offspring sequentially, stopping the sequence of evaluations as soon as an offspring is better than its parent and updating the new parent to this offspring solution. This paper investigates the impact of the application of sequential selection to the (1,4)-CMA-ES on the BBOB-2010 noisy benchmark testbed. The performance of the (1,4 s )-CMA-ES, where sequential selection is implemented, is compared to the baseline algorithm (1,4)-CMA-ES. Independent restarts for the two algorithms are conducted till a maximum of 10 4 D function evaluations per trial was reached, where D is the dimension of the search space.The results show that the sequential selection within the (1,4 s )-CMA-ES clearly outperforms the baseline algorithm (1,4)-CMA-ES by at least 12% on 7 functions in 20D whereas no statistically significant worsening can be observed. Moreover, the (1,4 s )-CMA-ES shows shorter expected running times on 6 functions of up to 32% compared to the functionwise best algorithm of the BBOB-2009 benchmarking (in 20D and for a target value of 10 −7 ). Evolution Strategies (ESs) are robust stochastic search algorithms for numerical optimization where the objective function to be minimized, f , maps the continuous search space R D into R. In ESs, a population of λ candidate solutions is sampled at each iteration by adding to a current solution λ random vectors following a multivariate normal distribution. In the local search (1, λ)-ES we are interested in, the best of the λ solutions, i.e., the solution having the smallest objective function value, is selected to become the new current solution.. Sequential selection has been recently introduced for Evolution Strategies with the aim of accelerating their convergence [2] . When sequential selection is applied in a (1, λ)-ES, the evaluations are carried out sequentially and the sequence of evaluations is stopped as soon as an offspring turns out to be better than its parent. The parent for the next iteration is then set to this offspring. In this paper, we evaluate the impact of sequential selection on the (1,4)-CovarianceMatrix-Adaptation Evolution-Strategy (CMA-ES) using the BBOB-2010 noisy testbed. The performance of the (1, 4 s )-CMA-ES implementing sequential selection is compared to the performance of the (1,4)-CMA-ES. The algorithms as well as the CPU timing experiments are described in a complementing paper in the same proceedings [1] . The idea behind the sequential selection scheme introduced in [2] is to finish the iteration as soon as an offspring is evaluated which is better than the current solution and thereby save some of the λ function evaluations per iteration in a (1 + , λ)-ES. Here, the concept of sequential selection has been integrated into a comma-strategy, the so-called Moreover, the (1,4 s )-CMA-ES even shows an improved performance over the overall best algorithm from the BBOB-2009 benchmarking on 6 functions (in 20D and for a target value of 10 −7 ). Interestingly, all those 6 functions belong to the class of functions with additional Cauchy noise. The largest improvements are obtained on f103 (18% faster than the best algorithm of the BBOB-2009 benchmarking on that function), on f109 (32% faster), and on f112 (26% faster).. 101 Sphere moderate Gauss. Step-ellipsoid Gauss. 102 Sphere moderate unif. 108 Sphere unif. Step-ellipsoid unif. 103 Sphere moderate Cauchy. 106 Rosenbrock moderate Cauchy. Step-ellipsoid Cauchy

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


Listing All Minimal Separators of a Graph Abstract. An e cient algorithm listing all minimal vertex separators of an undirected graph is given. The algorithm needs polynomial time per separator that is found. Given a graph, one is often interested in listing certain subsets of vertices, or their cardinality, which possess a certain property. For example the clique number of a graph G is the maximum cardinality of a subset S such that G S] is complete. Similar questions are the independence number, the domination number or the chromatic number. For many of these problems, it would be convenient if one could use a decomposition of the graph by means of certain separators. This is perhaps best illustrated by the recent results for classes of graphs of bounded treewidth. For these classes, linear time algorithms exist for many NP-complete problems exactly because a decomposition can be made using separators of bounded size 1, 2, 3, 4, 12] . A decomposition of this type can be found in linear time 5, 12] , however the huge constants involved in these algorithms do not make them of much practical use.. A closely related, but somewhat di erent approach was surveyed in 19] . In this paper (see also 8]) it is shown that for many classes of graphs (for example chordal graphs, clique separable graphs and edge intersection graphs of paths in a tree or EPT-graphs) a decomposition by clique separators is possible, and it is illustrated that such a decomposition can also be used to solve e ciently many NP-complete problems like minimum fill-in, maximum clique, graph coloring and maximum independent set. In 20] an algorithm is given for nding clique separators e ciently (the algorithm uses O(nm) time to nd one clique separator). Recent results have shown how the above mentioned results can be generalized in the sense that at least the NPcomplete problems treewidth and minimum fill-in can be solved by polynomial time algorithms for much more graph classes, i.e., certain graph classes for which the number of minimal separators is polynomial bounded, ( 6, 7, 12, 13, 14, 15, 17] ).. In 11] an algorithm is given which nds all, what the authors call minimum size separators. By this they mean that given a graph which is k-connected, the algorithm nds all separators with k vertices. Moreover, they show in this paper that the number of these separators is bounded by O(2 k n 2 k ). Their algorithm which lists all minimum size separators runs in O(2 k n 3 ) time. We call a subset of vertices S a minimal separator if there are non adjacent vertices x and y such that the removal of S separates x and y into disjoint connected components in such a way that no proper subset of S also does this (see De nition 1). A closely related concept which we call inclusion minimal separators lies more or less between the minimum size separators and the minimal separators, i.e., all minimum size separators are inclusion minimal and all inclusion minimal separators are minimal separators.. The following example shows that the minimum size separators and the inclusion minimal separators are only of limited use. Consider any graph G. Take a new vertex x and make this adjacent to all vertices of G. Take another new vertex y and make this adjacent to x. Call this new graph H. The only inclusion minimal separator which is also the only minimum size separator of H is fxg. However if S is some minimal separator of G, then S fxg is a minimal separator in H. Hence H has at least as many minimal separators as G.. In 6, 12, 13, 14, 15] it is shown that many important classes of graphs have a polynomial number of minimal vertex separators. These graph classes include permutation graphs, circular permutation graphs, trapezoid graphs, circle graphs, circular arc graphs, distance hereditary graphs, chordal bipartite graphs, cocomparability graphs of bounded dimension and weakly triangulated graphs. For some of these graph classes there are e cient algorithms listing all minimal vertex separators, often using so-called scanlines' (see e.g. 6, 12, 17] ). In this paper we present an algorithm for listing all minimal vertex separators of any given graph. Notice that, in general, the number of minimal separators can be exponential, as the following example shows. Consider the graph consisting of two non adjacent vertices s and t, and a set of n?2 algorithms computing the treewidth and minimum ll-in of a given asteroidal triple-free graph with n vertices and R minimal separators 16, 17] . (Notice that asteroidal triplefree graphs are a relatively large class of graphs containing cocomparability graphs and permutation graphs.) Furthermore it has been suggested in 18] to use a so-called`separator graph' for obtaining polynomial time treewidth and minimum ll-in algorithms. Thereby the vertex set of the separator graph is the set of all minimal separators of the given graph. Typically applications require our listing algorithm.. For listing other types of combinatorial structures we refer to 9]. It may be a bit surprising at rst sight that it is very well possible for one minimal separator to be contained in another one. An example of this can be found in 10]. However, for minimal a; b-separators things are di erent, since by de nition one minimal a; b-separator cannot be properly contained in another one.. We now show that at least some of the minimal separators are easy to nd. Lemma 5. Let S be a minimal a; b-separator close to a and let C a and C b be the connected components containing a and b respectively. Let S 6 = S be another minimal a; b-separator. Then S S C b . Proof. Since S is a minimal a; b-separator S C a C b S. Assume S has a vertex x 2 C a . S n fxg does not separate a and b hence there is a path P between a and b using x but no other vertex of S . Since S is a minimal separator, P goes through a vertex y 2 S. Since S is close to a, y is adjacent to a. Hence there is a path P 0 P between a and b that does not contain x. This is a contradiction since P 0 contains no vertex of S .. u t. In the next two sections we show how to obtain new minimal a; b-separators from a given one using so called minimal pairs. A minimal pair is in some sense the smallest step to go from one minimal a; b-separator to the next one. The main di culty is to prove that we indeed obtain all minimal separators by using small steps only.. In section 5 we describe an algorithm that computes all minimal a; b-separators for a given pair of non adjacent vertices a and b in a breadth-rst-search manner, we prove that it is correct and we analyse its time complexity. We end with some concluding remarks and some open problems. Lemma 11. A minimal pair is good.. Proof. Notice that x 2 N, hence N 6 = ;. Now, is a minimal x; a-separator in C a (x) and hence every vertex of has a neighbor in C 0 a .. Finally, if 2 then is adjacent to x since is close to x. Hence each vertex of has a neighbor in N.. u t. We want to prove that we can nd every minimal a; b-separator by starting with the minimal a; b-separator that is close to b and by recursively using minimal pairs. The following technical lemma proves this. Lemma 12. Let ( ; N) In this paper we have presented an algorithm to determine a list of all minimal vertex separators of a graph. The algorithm needs only polynomial time per separator that is found. We like to mention some open problems.. First of all, we feel that it should be possible to improve the running time of the algorithm presented here.. A related concept is that of an inclusion minimal separator. This is a minimal separator with the additional constraint that no proper subset is also a minimal separator. The following lemma shows that our algorithm can be used to nd all inclusion minimal separators. However, the example given in the introduction illustrates that this may not be an e cient way to do this. It follows that a list of all inclusion minimal separators can easily be obtained from the list of all minimal separators. Until now, we have not been able to nd an e cient algorithm which nds all inclusion minimal separators.

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