Distributed cognition at the crime scene Abstract The examination of a scene of crime provides both an interesting case study and analogy for consideration of Distributed Cognition. In this paper, Distribution is defined by the number of agents involved in the criminal justice process, and in terms of the relationship between a Crime Scene Examiner and the environment being searched. The examination of a crime scene is subject to all manner of legal, ethical and scientific imperatives, and the evidence collected will be subjected to inspection by a variety of individuals with different intentions, skills and knowledge. In this paper, I will suggest that Crime Scene Examination presents an interesting and challenging domain in which to consider the notion of Distributed Cognition for the simple reason that it is not always apparent where the act of 'cognition' is situated. The ultimate aim of the criminal justice process, of course, is to acquire evidence which can be combined with information from other sources in order to produce a case that can be tried in Court. Contrary to its representation in popular fiction, the examination of a crime scene is unlikely to yield evidence that immediately links a suspect to a crime. Rather, the collection of evidence is part of a complex web of investigation that involves many individuals, each considering different forms of information in different ways. Thus, the paper begins with a cursory description of the role of the Crime Scene Examiner (CSE) within the criminal justice process.. The CSE is part of a much larger investigative system, each member of which has their own skills and roles (Smith et al. 2008) . In a sense, Crime Scene Investigation involves sets of ad-hoc teams pursuing independent goals with quite limited overlap (Smith et al. 2008) . Thus, there is typically a demarcation between roles. Having said this, the nature of this demarcation has been subject to significant shifting over the years, with the ongoing digitisation of Crime Scene Examination leading to further changes. For example, there used to be a specific role of Crime Scene Photographer whose function was to capture and process images of the crime scene (either prior to evidence recovery or at stages during the recovery process, depending on the nature of the crime). However, with the growing use of digital cameras by CSEs, this role has (in some Police Forces) changed. This has the interesting implication that the function of a photograph taken by the Crime Scene Photographer was to capture the scene as clearly as possible in order to aid discussion of the scene in Court (or during subsequent investigation), but the function of a photograph taken by the CSE could be to illustrate the evidence recovery process; I suggest this because the capturing of images by the CSE is part of the activity being undertaken rather than the sole focus of the activity. Whether or not similar changes might arise in terms of specialised analysis of fingerprints, footwear marks, DNA and other evidence is a matter of continued debate. For the time being, these analyses are generally performed by Forensic scientists rather than by CSEs. This means that one of the primary roles of the CSE is the recovery of evidence and its transportation in a usable state to the laboratory of the Forensic scientist. How this recovery and transportation is performed, and how closely the Forensic scientist and CSE cooperate depends very much on the nature of the crime being examined. For much of our work, we have focused on what is called 'Volume Crime' (e.g., robbery, burglary), as opposed to 'Serious Crime ' (e.g., murder, rape, kidnapping) . In Volume Crime, it is likely that the recovered evidence is passed onto the Forensic Scientist via a third party (sometimes called the 'Evidence Manager'). This means that any information pertaining to that item needs to be carefully and comprehensively recorded by the CSE prior to depositing with the Evidence Manager. It is this combined process of recovery, storing, labelling and transportation of evidence that forms the basis of several forms of computer-based CSE support (i.e., evidence management systems). Before exploring this further, we consider the archetypal detective and his approach to investigating crimes. In this paper, I suggest that, for Crime Scene Examination, cognition is distributed in three senses. First, there is the distribution of attention between the activities involved in searching, recovering and reporting. Second, there is the distribution of cognition between CSE personnel and the scene itself; the manner in which the scene is examined provides hints and cues to what evidence to recover, and interrupting this process (through the need to complete lengthy reports) could disrupt this process. For this activity, the environment and objects it contains become resourcefor-action that the experience and training of Crime Scene Examiners allow them to interpret in ways which might be different to that of the untrained observer. Furthermore, the manner in which recovered items are passed from one person to the next in the evidence chain can modify the role of these items as resources-for-action; each step in the process interprets the information from the previous step in terms of additional knowledge and information. Third, there is the distribution of information between CSE personnel and other people involved in the investigation. The notion of formal and informal narrative, and their development through the criminal justice process, sees these narratives as additional resources-for-action.. A 'weak' view of the Distributed Cognition argument might claim that what is being distributed is the collection of objects upon which the act of cognition can be focused. This would require objects-in-the-world to play a fairly passive role in the process of cognition and for them to function as vehicles for the storage or representation of information. The artefacts allow users to off-load information (Scaife and Rogers 1996) and also a record of previous activity. In this version, the objects have their states altered by the actions that their users perform on them (e.g., through note-taking, folding or other markings). Furthermore, not only do these objects provide a means of recording and storing information, but their design affords (or influences) the actions of the person using them.. A 'strong' view of Distributed Cognition posits that it is the tasks involved in cognition which are being distributed. One way in which the activity of the CSE differs from some of these domains, is in the initial definition of objects-inthe-world, and for these objects to be 'revealed' in order to be recovered. This would regard the role of the CSE is primarily one of induction, or rather, as one of providing the set of alternatives upon which a process of induction could be applied. I would suggest that the act of induction takes place in the Court (or at least in the Crown Prosecution Service which decides whether a Case can be presented to Court). Prior to this act of induction, there are initial acts of deduction which are formally assigned to the Forensic Scientists, in their analysis and interpretation of evidence, but also informally applied by the CSE in the decision as to where to look and what to recover. In this view, one would expect agents and objects-in-the-world to be more active and capable of either performing, or at least participating in, information processing tasks. For example, Hutchins (1995b) famously speaks about the ways in which the flightcrew and their instruments work together to monitor the speed at which an aircraft is flying; his assertion is that this knowledge does not reside in the head of one specific individual, but is derived from the collection of information that is available in the cockpit. Perhaps, a point to note here is that, ultimately, there needs to be some 'cognizing entity' that is capable of combining the various bits of data into a coherent 'whole' and that this requires a set of mental capabilities that are uniquely human.. Both views raise questions that relate to the manner in which cognition becomes a matter of sharing tasks. In terms of distributed cognition, the work reported in this paper covers both the 'weak' and 'strong' views of distributed cognition. From the 'weak' view, it is argued that the training, knowledge and experience of Crime Scene Examiners allow them to use the environment and the artefacts within it, together with the collection of narratives through the criminal justice process, as resources-foraction in a manner that might be alien to the non-expert. In this way, the Crime Scene Examiner will not only search for specific artefacts but also be able to identify locations which could yield non-visible materials (e.g., places to check for fingerprints, DNA and other evidence). The use of eye-tracking and verbal protocol from crime scene examination shows how the approach to searching a scene differs with experience. From the 'strong' view, the reporting and interpretation of evidence from a crime scene through the criminal justice process implies a collective activity (which might not be coordinated by a central agency) that accumulates information to a point at which its interpretation can be tested in Court. While neither approach should be taken to imply that mental states are distributed across individuals, both imply that the action of one individual will form the basis for actions of the next. In this manner, the criminal justice process is able to 'know' the collected evidence, even though it is unlikely that a single individual will have access to all of the information collected during the examination.

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


A lower bound for multicast key distribution Abstract-With the rapidly growing importance of multicast in the Internet there have been recent proposal, such as RFC 2627, for scalable key distribution such that when the nth user joins or leaves a group, broadcasting Θ(log n) encrypted messages is sufficient to redistribute keys. In this paper, we show that this bound is also necessary for a general class of key distribution schemes and under different assumptions on user capabilities. While key distribution schemes can trade addition cost for deletion cost, for any scheme there is a sequence of 2n insertion and deletions whose total cost is Ω(n log n). Thus, any key distribution scheme has a worst-case cost of Ω(log n) either for adding or for deleting a user.

O O O O B O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


A Predual Proximal Point Algorithm Solving a Non Negative Basis Pursuit Denoising Model Abstract This paper develops an implementation of a Predual Proximal Point Algorithm (PPPA) solving a Non Negative Basis Pursuit Denoising model. The model imposes a constraint on the l 2 norm of the residual, instead of penalizing it. The PPPA solves the predual of the problem with a Proximal Point Algorithm (PPA). Moreover, the minimization that needs to be performed at each iteration of PPA is solved with a dual method. We can prove that these dual variables converge to a solution of the initial problem.Our analysis proves that we turn a constrained non differentiable convex problem into a short sequence of nice concave maximization problems. By nice, we mean that the functions which are maximized are differentiable and their gradient is Lipschitz.The algorithm is easy to implement, easier to tune and more general than the algorithms found in the literature. In particular, it can be applied to the Basis Pursuit Denoising (BPDN) and the Non Negative Basis Pursuit Denoising (NNBPDN) and it does not make any assumption on the dictionary. We prove its convergence to the set of solutions of the model and provide some convergence rates.Experiments on image approximation show that the performances of the PPPA are at the current state of the art for the BPDN.

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


Paradoxes in distributed decisions on optimal load balancing for networks of homogeneous computers Abstract. In completely symmetric systems that have homogeneous nodes (hosts, computers, or processors) with identical arrival processes, an optimal static load balancing scheme does not involve the forwarding of jobs among nodes. Using an appropriate analytic model of a distributed computer system, we examine the following three decision schemes for load balancing: completely distributed, intermediately distributed, and completely centralized. We show that there is no forwarding of jobs in the completely centralized and completely distributed schemes, but that in an intermediately distributed decision scheme, mutual forwarding of jobs among nodes is possible, leading to degradation in system performance for every decision maker. This result appears paradoxical, because by adding communication capacity to the system for the sharing of jobs between nodes, the overall system performance is degraded. We characterize conditions under which such paradoxical behavior occurs, and we give examples in which the degradation of performance may increase without bound. We show that the degradation reduces and finally disappears in the limit as the intermediately distributed decision scheme tends to a completely distributed one. We consider systems that consist of a finite number of facilities and of threads or flows of customers that arrive from infinite sources and are served by the facilities. For example, distributed computer systems have continuing arrivals of jobs or transactions to be processed by computers, communication networks have flows of packets or calls to pass through communication links, transportation flow networks have incoming threads of vehicles to drive through roads, etc. In the following, we use the term system representing the set of a finite number of facilities such as distributed computer systems, communication networks, or transportation flow networks, and the term job representing each of continuously arriving customers such as jobs, packets, vehicles, etc. Thus, for a period of infinite length, infinitely many jobs pass through the system, and each job alone can have only an infinitesimal impact on the overall system performance.. We may have various issues on optimization, depending on the degree of distribution of the decisions. Among them, we have three typical optima corresponding to three typical decision schemes:. (A) [Completely Centralized Decision Scheme] : All jobs are regarded to belong to one group that has only one decision maker. The decision maker seeks to optimize a single performance measure such as the total cost over all jobs (e.g., the mean response time of the entire system). In the literature, the corresponding solution concept is referred to as a system optimum, overall optimum, cooperative optimum or social optimum. In this article, we shall refer to it as the overall optimum. This may reflect the situation where the entire system is used by a single unified organization.. (B) [Completely Distributed Decision Scheme] : Each of infinitely many jobs (or the user of each) optimizes its own cost (e.g., its own expected response time), independently of the others. In this optimized situation, each job cannot expect any further benefit by changing its own decision. It is also assumed that the decision of a single job has a negligible impact on the performance of the entire system. In the literature, the corresponding solution concept is referred to as an individual optimum, Wardrop equilibrium, or user optimum. In this article, we shall refer to it as the individual optimum.. (C) [Intermediately Distributed Decision Scheme] : Infinitely many jobs are classified into a finite number (N (>1)) of classes or groups, each of which has its own decision maker and is regarded as one player or user. Each decision maker optimizes noncooperatively its own cost (e.g., the expected response time) over only the jobs of its own class. The decision of a single decision maker of a class has a nonnegligible impact on the performance of other classes. In this optimized situation, each of a finite number of classes or players cannot receive any further benefit by changing its decision. In the literature, the corresponding solution concept is referred to as a class optimum, Nash equilibrium, or user optimum. In this article, we shall refer to it as the class optimum. This may reflect the situation where the system is shared by a finite number of mutually independent organizations each of which is totally unified. We may have different levels in intermediately distributed optimization.. Note that (C) is reduced to (A) when the number of players reduces to 1 (N = 1) and approaches (B) when the number of players becomes infinitely many (N → ∞) [Haurie and Marcotte 1985] .. Intuitively, we can think that the total processing capacity of a system will increase when the capacity of a part of the system increases, and so we expect improvements in performance objectives accordingly in that case. The famous Braess paradox tells us that this is not always the case; that is, adding capacity to the system may sometimes lead to the degradation in the benefits of all users in an individual optimum [Braess 1968; Murchland 1970; Frank 1981; Cohen and Kelly 1990; Calvert et al. 1997; Cohen and Jeffries 1997] . The Braess paradox has attracted the attention of many scholars, such as the economist Paul Samuelson [1992] . It has also attracted the attention of researchers in the field of software multiagent systems (see Arora and Sen [1997] , for example) and in the theory of computing (see Roughgarden and Tardos [2000] for example).. We can expect that, in a class optimum (i.e., Nash equilibrium) a similar type of paradox may occur (with large N ), whenever it occurs for the individual optimum (N → ∞). Indeed, Korilis et al. [1995] found examples wherein the Braess-like paradox appears in a class optimum where all user classes are identical in the same topology for which the original Braess paradox (for the individual optimum) was in fact obtained. Furthermore, Korilis et al. [1999] obtained a sufficient condition under which the Braess paradox should not occur in the more general model that has one source-destination pair and identical user classes.. As it is known that the class optimum converges to the individual optimum as the number of classes becomes large [Haurie and Marcotte 1985] , it is natural to expect the same type of paradox in the class optimum context (for a large number of classes), whenever it occurs for the individual optimum, although it never occurs in the overall optimum where the total cost is minimized. Kameda et al. [2000] have obtained, however, numerical examples where a paradox similar to Braess's appears in the class optimum but does not occur in the individual optimum in the same environment. These cases look quite strange if we note that such a paradox should never occur in the overall optimum and if we regard the class optimum as an intermediate between the overall optimum and the individual optimum. In models of distributed computer systems with class and individual optimization, Kameda et al. [1997a Kameda et al. [ , 1997b have already observed such (weaker) paradoxical cases that increased capacity of a part of a system may lead to increase in an overall measure such as the system-wide overall mean response time. (As to using overall measures in evaluating class optima, see also Koutsoupias and Papadimitriou [1999] , for example.) The methods and algorithms for obtaining the optima and the equilibria are described by Kameda et al. [1997b Kameda et al. [ , 2001a , Kim and Kameda [1990] , Li and Kameda [1998] , and Tantawi and Towsley [1985] . Some related results on class optima are given by, for example, Orda et al. [1993] .. Static load balancing in distributed computer systems means the balancing of loads, that is, jobs, over nodes, on the basis of statistically averaged performance values of nodes and interconnection networks. For formulation and analytic treatment of static load balancing in distributed computer systems, see, for example, Tantawi and Towsley [1985] . Its counterpart exists for packet routing in communication networks like the Internet. On the other hand, dynamic load balancing means the balancing of loads based on the information on performance values of nodes etc. at each instant of time. Apparently, dynamic load balancing would seem to outperform static load balancing, but would not easily be realizable, because it would require large overheads. For example, in the Internet and on-line transaction processing systems, respectively, many packets and small transactions move around within the network and systems. Therefore, dynamic load balancing would require frequent transfer of information from nodes etc. in order to react to ceaseless changes in their performance values that result from the moves of many packets and transactions. The frequent transfer of information would lead to large overheads, and then would result in overall performance degradation. Thus, load balancing based on the performance values of nodes etc., averaged over each time period of a certain length, may be reasonable. This is quasi-static load balancing. If the system is in a statistical equilibrium for a very long time period, quasi-static load balancing may be close to static load balancing. For static vs. dynamic load balancing, the reader is referred to Kameda et al. [1997b] for example. Note that the expressions of 'static' and 'dynamic' in computer networking, however, have somewhat different meanings from those in load balancing in distributed computer systems.. In this article, we present an analytic study of a model of static load balancing among homogeneous nodes each of which has an identical arrival process. It would be naturally anticipated that optimal static load balancing would lead to no forwarding of jobs among nodes and thus would bring neither benefit nor harm. We can confirm that this is actually true both in the completely centralized decision scheme and in the completely distributed decision scheme of optimal load balancing. In an intermediately distributed decision scheme for load balancing, however, we can find paradoxical cases where adding communication capacity among nodes to the system leads to mutual forwarding of jobs among nodes and thus brings the degradation of system performance for every decision maker. We refer to a system where the nodes are constituted by the same kind of equipment (e.g., servers with the same characteristics), each of which has an identical arrival process as a system of symmetrical nodes. We investigate a system of symmetrical nodes here because Kameda et al. [2001a Kameda et al. [ , 2001b have observed that in numerical and analytical investigations on systems of asymmetrical nodes, such counter-intuitive phenomena appear most strongly in systems of symmetrical nodes.. In the model studied in this article, each node (or processor) has at its disposition a communication means, which it may use to forward to other nodes an arbitrary portion of its job arrival stream. We show that in the overall and individual optima, there is no forwarding of jobs between nodes, but that in the class optimum, forwarding of jobs may or may not occur, depending on the values of certain system parameters. We thus characterize conditions under which the paradoxical behavior appears. As a measure of performance degradation, we consider the ratio of the mean response time for a decision maker when the communication means is available, to that when the means is not available at all. The situation where the ratio is not less than 1 for all decision makers and is greater than 1 for some decision makers, is considered paradoxical. In some class optimization where the values of parameters of all classes are identical, we see the existence of the paradoxical cases where the ratio of the performance degradation can increase without bound, and also see that the ratio of performance degradation decreases and finally disappears in the limit as the number of classes tends to infinity. We also obtain the solution of the class optimum when the paradox occurs. The analysis is performed under general assumptions on nodes and the interconnection network except for the symmetricity of nodes.. The network originally studied by Braess [1968] and the system we analyzed are both regarded as concrete examples of paradoxical cost degradation for all decision makers and, in more general terms, of Pareto inefficiency in noncooperative games.. We present here some differences, between these two paradoxes, other than what has been stated above, that is, the point that our paradox is observed only for class optimization but not for individual optimization. It has been shown that, in the Braess network and in extended Braess networks [Cohen and Kelly 1990; Cohen and Jeffries 1997] , the ratio of the performance degradation is bounded and less than 2 (see Kameda [2002] ). (To the best of our knowledge, there has not been reported any case where the ratio of the performance degradation can increase without bound.) This is contrastive to the existence of paradoxical cases where the ratio of the performance degradation can increase without bound in the system we studied. Furthermore, in the system of symmetrical nodes studied in this article, adding means of job forwarding looks apparently ineffective because the load on each node is already equalized without job forwarding. Thus, it is, in particular, counterintuitive, that, in some class optimum, adding the means causes mutual job forwarding among nodes and thus brings about the strongest paradox, in the case of symmetrical nodes. This is contrastive to the Braess network in which adding capacity itself does not look ineffective and may benefit all users even in some symmetrical cases.. The model considered in this paper may also be regarded as a model of communication networks. For example, assume the following situation. There are two continents, A and E. In continent A, there are port cities A 1 , A 2 , . . . , A m each of which is connected by a separate optical cable to the corresponding one of port cities E 1 , E 2 , . . . , E m in continent E. Cable i connects cities A i and E i , and is managed by an independent organization C i . The cables are of almost equal length. Consider the demand of sending packets from continent A to E. Almost the same rate of demand of sending packets comes to each organization C i . Within each continent, there is a communication means which every organization, say C i , may use to forward to another organization, say, C j ( j = i) an arbitrary portion of its demand and send it back. For example, the section of C i in city A i sends a portion of its demand from A i to A j through the communication means in continent A, which is sent through cable j to city E j and finally back to the section of C i in city E i through the communication means in continent E. This is regarded as a kind of bypath, which may be effective in the case where the demand to each organization C i highly fluctuates and/or each cable may breakdown at times. Our results imply that if each organization would strive to optimize the mean packet transmission time only for its demand, paradoxical cost degradation for all organizations might occur.. Section 2 presents the description of the model studied in this article and the assumptions used in the analysis. Section 3 gives the solutions of overall, individual, and two class optima, and their proofs. Section 4 gives examples of solutions. Section 5 gives numerical examples. Section 6 gives concluding remarks. The Appendix shows a glossary of symbols used in this article. In this article, we have examined the model of a system consisting of homogeneous nodes with identical arrival processes. In such a system, forwarding of jobs to the other nodes through communication means with nonzero delays may clearly lead to the degradation of performance. We have confirmed that in the overall optimization and in the individual optimization such forwarding never occurs. We have shown that, for some parameter setting of the local-class optimization (Nash equilibrium for one set of decision makers), there is mutual forwarding of jobs for remote processing, leading to an increase in the degree of performance degradation which may increase without bound, as observed in Example 1. We have also shown that in the global-class optimization (Nash equilibrium for another set of decision makers) such forwarding never occurs. That is, such a paradoxical behavior may occur only in the local-class optimum and does never occur for the overall, individual, and global-class optima, in the same setting of this symmetrical node model.. We have obtained unique solutions of local-class and global-class optima on the basis of some assumptions on communication means (i.e., dedicated lines and bustype connections). It has been quite hard to extend the proofs to the case of more general assumptions. It is not certain whether in some cases of the communication means the optima may still be unique. It has been also difficult for us to analyze asymmetrical models. These are open future problems.. In the system of symmetrical nodes, adding means of job forwarding looks apparently ineffective. We thus feel it counterintuitive that in some class optimum, adding the means causes mutual job forwarding among nodes and brings about the paradox, in such a symmetrical system. Moreover, we think that the phenomenon described in this paper is an example of "local decision making which does not lead to a globally best decision," which a very large number of people still do not seem to recognize. (A) Completely centralized decision scheme: Overall optimization The overall optimum is given byx that satisfies the following:. We define x −(iik) to be an m(m − 1)n-dimensional vector such that all elements x iik , for all i, k, are excluded from the mmn-dimensional vector x whereas all its elements are the same as the remaining m(m − 1)n elements of x.. SOLUTION. The solutionx is unique and given as follows:. The mean response time is. We refer to this solution as the solution of no job forwarding.. PROOF. This solution and its uniqueness are clear from the assumptions on D and G i jk .. (B) Completely distributed decision scheme: Individual optimization An individual optimum is given byx that satisfies the following for all i, k, (12) , and the mean response time by (13), both withx being replaced byx.

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


LunchTime: a slow-casual game for long-term dietary behavior change Abstract Eating out has recently become part of our lifestyle. However, when eating out in restaurants, many people find it difficult to make meal choices consistent with their health goals. Bad eating choices and habits are in part responsible for the alarming increase in the prevalence of chronic diseases such as obesity, diabetes, and high blood pressure, which burden the health care system. Therefore, there is a need for an intervention that educates the public on how to make healthy choices while eating away from home. In this paper, we propose a goalbased slow-casual game approach that addresses this need. This approach acknowledges different groups of users with varying health goals and adopts slow technology to promote learning and reflection. We model two recognized determinants of well-being into dietary interventions and provide feedback accordingly. To demonstrate the suitability of our approach for long-term sustained learning, reflection, and attitude and/or behavior change, we develop and evaluate LunchTime-a goal-based slow-casual game that educates players on how to make healthier meal choices. The result from the evaluation shows that LunchTime facilitates learning and reflection and promotes positive dietary attitude change. Eating out is increasingly becoming part of our lifestyle. A recent statistic from the United States indicates that the fast food industry serves more than 50 million Americans every day, generates $65 billion annually, and accounts for more than half of an average American's yearly food budget [1] . However, people find it difficult to make choices consistent with their health goals when eating away from home and the recent dramatic rise in health conditions, such as obesity and diabetes, has been attributed to poor dietary choices [2] . For example, the rise in obesity is often linked to an increase in consumption of high-energy dense and large portion sizes of 'away-from-home' food [2] . More generally, it has been shown that healthy eating choices and habits established by an individual can decrease the risk of some chronic diseases, while unhealthy choices lead to increased incidences of certain chronic diseases [2] . Hence, concern about food choices and their effect on health is of primary concern for well-being researchers; many of whom have suggested that most of the chronic diseases and health conditions that burden the health care system (e.g., diabetes (type 2), heart diseases, high blood pressure, and obesity) can be prevented through lifestyle changes [3, 4] . To help customers make healthy choices, many restaurants provide nutritional information for their menu, yet customers continue to eat unhealthy options from fast food restaurants. This may be partly because the information provided is superficial and gives no knowledge of how one option compares to another for managing choices.. Persuasive technology is a term used to describe technologies that change human behavior and/or attitude in an intended way without using deception or coercion [5] . To promote healthy lifestyle changes, many persuasive technological interventions have been proposed-mostly based on tracking and monitoring food intake (e.g., [4] ), or providing just-in-time information or messages to remind users of the need to make appropriate food decisions at the point of purchase [6] . However, hungry restaurant-goers are likely more influenced by the sight and smell of the foods than by just-in-time information, suggesting that knowledge-based decisions must be supported by information presented before people arrive at the restaurant [6] . Some researchers, for example, [7] , have investigated the benefit of educational games in helping adults learn how to make healthy food choices. Most of these games, however, are not tailored to induce behavior change in line with individuals' health goals but instead are based on a onegoal-fits-all approach. The interventions generally aim at helping people manage their weight, whereas lifestyle/ behavior change interventions need to address other health goals such as managing diabetes, managing blood pressure, building muscle, or even general well-being. Moreover, the games are built on a fast technology principle-which imposes some in-game time-related constraints, therefore allowing little or no room for reflection.. To address the shortcomings of previous solutions, we examined how a goal-based intervention can be used to encourage behavior change toward a healthy diet using a slow-casual (slow, simple, easy to learn, and easy to play) educational and reflective game, called LunchTime. Slow game is a term used to describe games that relax the time dynamics often used in ''fast games'' where the players are required to respond to a game challenge within a very limited amount of time. Slow games can be played occasionally and do not require undivided player attention.. In contrast to a generalized dietary intervention, LunchTime promotes lifestyle and/or attitude change in line with an individual's health goal. It helps users to learn how to make good decisions that are consistent with their health goal when eating out. The result from the evaluation of LunchTime shows that the game facilitates learning and reflection and promotes desirable dietary attitude change.. Our main contributions are as follows: First, we propose an approach for developing a persuasive game for dietary interventions (goal-based approach), which allows the player to move from goal to solution. Second, we formulate the slow-casual game technique that combines both casual and slow attributes to induce learning, reflection, attitude and/or behavior change. Third, we model two recognized determinants of well-being (away-from-home foods and portion sizes) into dietary interventions. Fourth, we design, implement, and evaluate LunchTime to demonstrate the feasibility of our proposed technique for sustained learning, reflection, and attitude change. In this work, we propose a slow-casual educational game and a goal-based approach for intrinsically motivating behavior change using learning and reflection. We demonstrated the suitability of our approach in the design, implementation, and evaluation of LunchTime. The preliminary evaluation shows that LunchTime is capable of educating people about healthy eating in line with their health goal. More importantly, it shows that playing LunchTime led to a positive attitude change toward healthy eating. The slow attribute of LunchTime allows players time to think, research, and reflect on their choices. This suggests that intentional slowness is an important attribute to consider in any intervention intending to change behavior using education and reflection. As future work, we will conduct a full-scale evaluation of LunchTime to find out its impact after playing for a long time. The next iteration of LunchTime will also put into consideration some of the insights and the suggestions from this preliminary evaluation. We will consider adapting the slowness to individual's capability. This will allow individuals to spend as much time as needed in the game without any penalty. Also it will allow the number of play times per day to be dependent on individual's motivation, thereby increasing its capability to engage players. We will also consider other ways making LunchTime more fun. Another area of interest for future work is to compare a simple casual game and slow-casual game. In this section, we present an overview of behavior-change theories. This is followed by a discussion of related research on persuasive technology for human well-being. We conclude with a brief overview of persuasive games with emphasis on the genres of casual and slow-casual games.

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


Parameter Exploration in Science and Engineering Using Many-Task Computing Abstract-Robust scientific methods require the exploration of the parameter space of a system (some of which can be run in parallel on distributed resources), and may involve complete state space exploration, experimental design, or numerical optimization techniques. Many-Task Computing (MTC) provides a framework for performing robust design, because it supports the execution of a large number of otherwise independent processes. Further, scientific workflow engines facilitate the specification and execution of complex software pipelines, such as those found in real science and engineering design problems. However, most existing workflow engines do not support a wide range of experimentation techniques, nor do they support a large number of independent tasks. In this paper, we discuss Nimrod/K-a set of add in components and a new run time machine for a general workflow engine, Kepler. Nimrod/K provides an execution architecture based on the tagged dataflow concepts, developed in 1980s for highly parallel machines. This is embodied in a new Kepler "Director" that supports many-task computing by orchestrating execution of tasks on on clusters, Grids, and Clouds. Further, Nimrod/K provides a set of "Actors" that facilitate the various modes of parameter exploration discussed above. We demonstrate the power of Nimrod/K to solve real problems in cardiac science. I N-SILICO design has become common practice in research and industry. Computer simulations are routinely used in engineering design, allowing for complex structures to be simulated with significant accuracy. For example, fluid flow, crack propagation, and electronic simulations are routinely used in product design and research. In-silico design has enormous impact, because it allows exploration before real experiments are conducted, cutting design times dramatically, and also enabling the consideration of dangerous or impractical real world experiments. Parameter exploration methods make it possible to evaluate many different designs fairly cheaply by performing multiple runs with different parameter values, and thus there is interest in developing tools and techniques that support this idea.. Many-Task Computing (MTC) provides a general framework for executing a large number of otherwise independent processes on high throughput parallel engines [42] . It provides a perfect environment to perform parameter exploration, because simulations often involve execution of different independent scenarios.. In the past few years, scientific workflows have emerged as a powerful technique for specifying and executing complex in-silico experiments. While there are many engines available, almost all share the ability to script data manipulation and computational pipelines that invoke a series of steps, often utilizing distributed resources. Pipeline steps can range from those that perform simple computations locally, to accessing external instruments and databases, through to significant simulations on remote parallel machines.. Most workflow engines, on the other hand, are designed for generalized application. They include components (which we will refer to as actors in this paper) that perform a wide range of activities. Most engines implement a dataflow execution mechanism that supports some amount of parallel execution. However, in general, most of them lack:. 1. Methods that facilitate parameter exploration; and 2. An MTC execution mechanism that supports high throughput evaluation of designs. In this paper, we discuss the development of actors that support parameter exploration, and consider a range of different design techniques-from complete enumeration to targeted search. Moreover, we discuss techniques that add MTC to existing engines. We have implemented a number of new actors in an existing workflow system called Kepler [6] , [7] , [20] , [34] , [35] . When coupled with a new parallel execution mechanism (called TDA) that supports MTC, we can explore multiple designs in parallel, using clusters, Grids, and Clouds. We demonstrate the power of a new tool called Nimrod/K, using case studies in quantum chemistry and cardiac science.

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


Improving 64-bit Java IPF performance by compressing heap references Abstract64-bit processor architectures like the Processor architectures such as the Intel® Itanium® Processor Family [8] (IPF) enable large applications (such as enterprise applications) to use a 64-bit address space instead of the traditional 32-bit address space. A wellknown drawback of 64-bit addressing is that pointerbased data structures consume more memory than their 32-bit counterparts, and the application therefore loses performance as a result of additional cache misses, TLB faults, and paging [13] . The increased memory footprint is especially troubling when running an application whose memory requirements actually fit entirely within a 32-bit address space, and yet the application is forced to pay the price of wide pointers.. In this paper, we describe our experience with compressing 64-bit pointers into 32 bits within the framework of a Java virtual machine [5] . Java programs offer a key advantage over arbitrary C programs in that pointers are always distinguishable from non-pointers. This gives us wide latitude in choosing a pointer compression scheme. Furthermore, the compression can be performed completely within application software (i.e., the virtual machine) without depending on platform-specific hardware or operating system features, making it more portable across different architectures and operating systems. In ORP, every object includes a standard header, which consists of a vtable pointer and a combined synchronization/hashcode value. The vtable pointer normally contains a raw pointer to a vtable structure. The synchronization value is partitioned into 16 bits to hold the thread ID of the current locker, 8 bits to hold the lock recursion count, and 8 bits to hold the default hashcode. If the recursion count overflows beyond 8 bits, the synchronization value is treated as a link to a fatter lock structure. This organization of the object header is fairly common across commercial and research VMs [9] [11] .. On a system with 64-bit pointers, it is natural to allocate 8 bytes for the vtable pointer. It is also convenient to allocate 8 bytes for the synchronization value, so that the virtual machine can assign object field offsets assuming an initial 8-byte alignment. This yields a per-object overhead of 16 bytes, compared to 8 bytes on a 32-bit system.. In the 64-bit implementation of ORP, we reduce the overhead to 8 bytes per object by using only 4 bytes for the vtable pointer and 4 bytes for the synchronization value. Instead of being a raw pointer, the value in the vtable slot is treated as an unsigned offset from the base of the vtable area in memory. Figure 1 depicts the layout of the object header for the raw and the compressed cases on a 64-bit system. At ORP startup time, the VM allocates a single contiguous chunk of memory for holding all vtables. The vtable space must be contiguous, generally meaning that the VM must put a bound at startup on the amount of vtable space available. (If such a bound is unacceptable, there are ways to relax this requirement, but that is beyond the scope of this paper.) The interface function orp_get_vtable_base() provides a pointer to the start of the vtable area. ORP guarantees that this is a constant function, so the value can be cached by the GC and emitted as a constant in JIT-generated code. The VM and GC components access an object's vtable information in similar ways, and both are similarly modified to support compressed object headers. Each time a vtable pointer is loaded from an object and dereferenced, we instead load the 32-bit value, decompress it, then dereference the resulting 64-bit pointer. Decompressing a 32-bit vtable pointer involves zero-extending it to 64 bits and adding the 64-bit value orp_get_vtable_base(). On many processor architectures including the IPF, the zero extension operation can be folded into the 32-bit load instruction.. During object allocation, the vtable pointer is set by subtracting orp_get_vtable_base() from the raw vtable address and storing the lower 32 bits into the object. Converting from raw to compressed vtable references may add an additional operation to the critical path, but in our experience, relatively few such operations are performed by the VM and GC components so the performance impact is not noticeable.. It is fairly common for a garbage collector (particularly a stop-the-world collector) to temporarily hijack part of the object header during garbage collection and use it for GC purposes. For example, it might overwrite an object's synchronization value with a forwarding pointer if the object is being moved. In this example, if the synchronization value is compressed to 32 bits, then the forwarding pointer can be treated as a compressed reference, using techniques described in Section 1.1.. Using similar techniques, the vtable pointer in an object could be narrowed even further, to 24 or perhaps 16 bits. If all vtables are aligned at 64-byte boundaries, then a 16-bit vtable pointer value can allow up to 4MB of total vtable space, which is more than adequate in our experience. However, this introduces an additional shift opera- tion into the critical path when dereferencing an object's vtable. Furthermore, to have any impact on the live heap size, the application must have classes that not only have many instances, but also have 1-or 2-byte fields, such that moving a field into the free space in the object header causes the aligned object size to decrease. To illustrate, Java's String class contains only reference and 32-bit integer fields, so it would not benefit from shrinking its header by an additional 2 bytes. This paper considers software techniques for pointer compression to improve Java performance on processors with 64-bit pointers. Our techniques include compressing both object headers and heap references.. We compress object headers to 8 bytes by compressing the 64-bit vtable pointer to a 32-bit offset into a memory region containing vtable structures. Because operations to decode the vtable offset can usually be overlapped or folded into other operations, this usually avoids decoding cost.. Similarly, we compress heap references in memory from 64 bits to a 32-bit offset from the base of the garbage-collected heap. While the concept is simple, we learned several lessons: the need for a special mapping for null references; that compiler optimizations are needed to reduce the cost of reference compression/decompression; and that garbage collection must support both compressed and raw pointers.. We studied the performance impact of these techniques on Java programs running on the ORP virtual machine on a 4-processor, 1.5 GHz Itanium® 2 machine with 16 GB memory. The two pointer compression techniques improved performance of SPEC JVM98 benchmarks overall. The improvements ranged from 68% on db to a 3% degradation on mpegaudio. For the SPEC JBB2000 benchmark, they improved the benchmark result by as much as 12% over a highly tuned baseline, and reduced heap space allocated by more than 27% and the number of garbage collections by 25%. We used the EMON 7.0 tool to examine performance counters and verified that memory dependence stalls, L1D pipeline stalls, and L3 cache misses were significantly reduced.. From previous studies of C programs, we anticipated that compressing pointers would reduce object sizes and the program working set, and so improve performance by reducing cache misses and TLB misses. The performance benefit we obtained for Java was even greater than had been reported for C. In particular, the ability in a managed runtime environment to recognize and compress heap references provides additional opportunities to reduce space usage. We expect our results will extend to other 64-bit processors and managed runtime environments. Supporting multiple pointer sizes has been considered before by teams porting code to architectures with larger pointer sizes. Reducing object size in Java and similar languages has also been considered. To our knowledge, the two topics have not previously been combined.. In [13] , Mogul, et al., studied the effects of using 64-bit pointers for programs that ran on 32-bit systems. They compared C programs on a Digital Alpha system; the architecture simply zero-extended 32-bit pointers to 64-bits. The code was unchanged, so only the data size was affected. They found that, while performance was often unaffected by larger pointers, some programs had much lower performance if, for example, their working set no longer fit in the L2 cache. If the working set was too large for the L2 cache using either size, the performance difference was much smaller. Similar effects were seen for each cache level, TLB faults, and paging. Further information on Digital's 32-bit to 64-bit address transition appears in [16] [17].. Bacon, et al., [11] compared several schemes to reduce Java object size by shrinking object header fields. They describe several methods (related to our vtable pointer compression) to reduce storage for vtable pointers. If certain bits of these in all object headers are constant, they "steal" those bits to store other information (e.g., GC state). This did not hurt performance, perhaps because vtable decoding can be overlapped with other operations on a multiple-issue processor. Our compressed vtable pointer scheme could be viewed as stealing 32 bits to pack the rest of the object header into 64 bits. We might compress headers further by stealing more bits and using other of their techniques, but we 64-bit align our object fields for better memory access performance. They also considered saving space with an index into a table of vtable pointers, but found this significantly hurt performance. Shuf, et al., [19] proposes vtable compression to a 4-bit index for the most common types; they show a space improvement, but omit other performance data.. Ananian and Rinard [12] describe additional techniques for reducing Java memory use. They use the index into a vtable pointer table scheme, as well as a number of other techniques. They use off-line program analysis to eliminate unused fields and bits of fields that are run-time constants, specialize classes and methods to increase the number of such fields, and reorder fields to improve object layout. Chen, et al., [14] focus on page-level compression to reduce program working set size. Dieckmann and Hölzle [15] did not try to optimize object size, but studied memory use in SPEC JVM98. They observed that object overhead can have a significant effect: there, one extra header word could increase allocation rate by about 20%.. A related technique is pointer swizzling [20] [18], which can be used to support very large virtual memory spaces with smaller pointers. Pages from a large address space stored on, e.g., a disk, are mapped into a smaller addressable memory as needed. References in the large address space must be translated before use by translating, or swizzling, them into addresses in the smaller memory Hardware compression techniques compress cache [23] [24] [25] or DRAM [22] contents, increasing the effective capacity of these structures. The software technique described in this paper compresses contents throughout the memory system; it not only increases the effective capacity of the cache and DRAM, but also improves DTLB performance. Software compression leverages metadata indicating which values are pointers and which prefix value is redundant across pointers. Software compression also eliminates the compression and decompression latencies via scheduling and other optimizations.

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


Designing Automated Handheld Navigation Support Map usage on handheld devices suffers from limited screen size and the minimal attention that users can dedicate to them in mobile situations. This work examines effects of automating navigation features like zooming and panning as well as other features such as rotation, path finding and artifact representation on the mobile navigation experience. Described are five claims and early support for these features in the police work domain. This research seeks to explore any correlation between the type of task and level of automation in handheld navigation to better support task performance for mobile workers. This is especially necessary for mobile users in critical domains, such as security officers, emergency response and utility repair units. However, automation should support the user. Thus, design choices regarding which features should be automated must be based on the type of task a user needs to perform [3] . Using an established framework, IRC, we aim to investigate suitability of our claims in the work domain of mobile security officers.

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


Hedonic prices in the German market for mobile phones Die Dokumente auf EconStor dürfen zu eigenen wissenschaftlichen Zwecken und zum Privatgebrauch gespeichert und kopiert werden.Sie dürfen die Dokumente nicht für öffentliche oder kommerzielle Zwecke vervielfältigen, öffentlich ausstellen, öffentlich zugänglich machen, vertreiben oder anderweitig nutzen.Sofern die Verfasser die Dokumente unter Open-Content-Lizenzen (insbesondere CC-Lizenzen) zur Verfügung gestellt haben sollten, gelten abweichend von diesen Nutzungsbedingungen die in der dort genannten Lizenz gewährten Nutzungsrechte. Sony. According to our estimations these brand name premiums may range from 57 to 172Terms of use:Euros.3 The demand for mobile phones has considerably increased over the past 20 years, in Germany as well as in other countries. The mobile penetration rate in Germany now exceeds 80 percent (see RegTP, 2004, p. 32/33) , which suggests that the majority of Germans now posses a mobile telephone. A similar picture has emerged in other European countries.. At the same time, fierce competition has emerged among mobile handset manufacturers, whose market shares vary heavily from month to month. Nevertheless, little empirical analysis has been carried out on the pricing of mobile handsets. This paper aims to fill this gap and to provide an empirical analysis of mobile telephone prices. More specifically, we will conduct a hedonic price analysis, using data on 302 different mobile handsets from 25 manufacturers.. The data has been collected from the magazine connect (a special interest magazine for mobile telephony in Germany) over the period from May 1998 to November 2003. The magazine publishes data on mobile phones that are sold in Germany and also gives prices for these handsets in the German mobile phone market. Apart from prices we have collected information on characteristics, such as weight, radiation, volume, battery duration, the number of ringtones, MMS, MP3, Bluetooth, WAP and the date of introduction. In order to estimate hedonic prices for the various characteristics, we have used simple pooled OLS regressions.. The remainder of this paper is now organized as follows: Section 2 will describe the market for mobile telecommunications handsets in more detail. The empirical analysis is presented in section 3, which contains more information on both the data used and the methodology employed as well as the results of our hedonic price analysis. Section 4 summarizes our findings and concludes. Other examples include paintings (see Chanel, Gérard-Varet & Ginsburgh, 1996) , cigars (Stover, 1996) , baby food (Maguire, Owens & Simon, 2004) , and crude oil (Wang, 2003) .. The variable PRICE consists of the handset's retail price in Germany at its date of introduction. We have taken the manufacturers recommended price for the mobile phone that consumers had to pay when they purchase the mobile phone as a single product without signing a contract or purchasing prepaid cards. That is, we have taken the unsubsidized handset price.. To take account of the decrease in handset prices over time, we have introduced a variable AGE, which is constructed by counting the number of months between December 2003 and the month when the handset was introduced. Hence, for a handset that has been introduced in December 2001 AGE would be set to 24, while for handsets that have been introduced in November 2003 (our most recent observation) AGE is set to 1.. The variable WEIGHT consists of the handsets weight in grams, RADI gives a handset's radiation, measured in SAR, which stands for "Specific Absorption Rate" and which is a measure of the amount of radio wave energy absorbed by the body when using a mobile phone. VOL gives the handsets' volume, measured in cubic millimeters (cmm), and DURA stands for the handset's talk time battery duration in minutes.

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


Coping with Noisy Search Experiences The so-called social Web has helped to change the very nature of the Internet by emphasising the role of our online experiences as new forms of content and service knowledge. User-generated content, from blogs and wikis to ratings and comments, all add an important layer of experiential knowledge to our online interactions. In this paper we describe an approach to improving mainstream Web search by harnessing the search experiences of groups of likeminded searchers. We focus on the HeyStaks system (www.heystaks.com) and look in particular at the experiential knowledge that drives its search recommendations. Specifically we describe how this knowledge can be noisy, and we describe and evaluate a recommendation technique for coping with this noise and discuss how it may be incorporated into HeyStaks as a useful feature.Experience is the name everyone gives to their mistakes.-Oscar Wilde The now familiar social Web reflects an important change in the nature of the Web and its content. The arrival of blogs in 1999, as a simple way for users to express their views and opinions, ushered in this new era of user-generated content (UGC) as many sites quickly began to offer a whole host of UGC alternatives including the ability to leave comments and write reviews, as well as the ability to rate or vote on the comments/opinions of others. The result has been an evolution of the Web from a repository of information to a repository of experiences, and an increased emphasis on people rather than content. In combination with social networking services, this has precipitated the growth of the social Web as a platform for communication, sharing, recommendation, and collaboration.. Web search has continued to play a vital role in this evolving online world and there is no doubting the success of the mainstream Web search engines as a key information tool for hundreds of millions of users everyday. Given the importance of Web search it is no surprise that researchers continue to look for new ways to improve upon the mainstream search engine. However, new tools are also needed to gather, harness, reuse and share, in the most efficient and enjoyable way, the experiences captured by UGC [4, 15] . One particular line of research has focused on using recommendation technologies in an effort to make Web search more personal: by learning about the preferences and interests of individual searchers, personalized Web search systems can influence search results in a manner that better suits the individual searcher [3, 18] . Recently, another complementary research direction has seen researchers explore the collaborative potential of Web search by proposing that the conventional solitary nature of Web search can be enhanced in many search scenarios by recognising and supporting the sharing of search experiences to facilitate synchronous or asynchronous collaboration among searchers [12, 8] . Indeed, the work of [13, 1] has shown that collaborative Web search can lead to a more personalized search experience by harnessing recommendations from the search experiences of communities of like-minded searchers.. Our recent work has led to the development of a new system to support collaborative Web search. This system is called HeyStaks (www.heystaks.com) and it benefits from providing a collaborative search experience that is fully integrated with mainstream search engines such as Google. HeyStaks comes in the form of a browser toolbar and, as users search as normal, HeyStaks captures their search experiences and promotes results based on their search experiences and the experiences of friends, colleagues, and other likeminded searchers. HeyStaks introduces the key concept of a search stak which serves as a repository for search experiences. Users can create search staks to represent their search interests and they can share their staks with others to create pools of search experiences. At search-time, recommendations are generated from the user's staks and presented alongside mainstream search results. In this way, HeyStaks harnesses the shared experiences of searchers to deliver an improved search experience by working with, rather than competing against, mainstream search engines. With HeyStaks, users search as normal but enjoy the benefits of being able to easily share their search experiences and the advantages of a new form of search collaboration.. The key contribution of this paper is to focus on an important challenge faced by HeyStaks and to propose a recommendation solution to meet this challenge. The challenge concerns the basic stak selection task that searchers must perform before they search: prior to a search, a HeyStaks user must select an active stak so that their search experiences can be correctly stored and so that they can receive appropriate recommendations. Many users have built this into their search workflow and HeyStaks does contain some simple techniques for automatically switching to the right search stak at search time. However, many users forget to choose a stak before they search and, as a result, search experiences are often misfiled in an incorrect stak -usually the searcher's default "My Searches" stak, which is not shared with other users. Ultimately this limits the effectiveness of HeyStaks and contributes significant experience noise to search staks.. In what follows we will describe the development of a stak recommendation technique as part of HeyStaks' stak maintenance features, which allow stak owners to review and edit stak content. In brief, our stak recommender is capable of highlighting potentially mis-filed experiences and offers the user a suggested target stak that is expected to provide a better fit. We will describe an evaluation on real-user search data to demonstrate the effectiveness of this technique. First however, we will briefly introduce the HeyStaks system. As the Web evolves to accommodate experiences as well as pure content it will become increasingly important to develop systems and services that help users to manage and harness their online experiences and those of others. In this paper we have focused on experience management in Web search by describing a case-study using the HeyStaks social search engine. HeyStaks is a browser toolbar that works with mainstream search engines such as Google and that allows users to create and share repositories of search experiences (search staks) which then act as a source of search result recommendation.. The main contribution of this work has focused on the nature of the search experiences that HeyStaks harnesses. We have argued that these experiences can be noisy and that this limits the effectiveness of its search recommendations. As a solution we have argued the need for a new form of recommender system which is designed to recommend search staks instead of search pages and we have argued that such a recommender can play a key role in supporting stak maintenance and selection. We have described a technique for identifying so-called stak kernels, as the non-noisy essence of stak knowledge -and described and evaluated a classification-based approach to stak recommendation that harnesses these kernels to make accurate stak recommendations. We are now considering using one such classifier to implement the actual recommending system in HeyStaks, in order to improve its stak selection mechanism. In this paper, we have focused on one kind of noise that we call mis-interpretation: experience is incorrectly filed, mostly because it is implicitly collected and because the user's behaviour is not always consistent with the idealized behaviour on which the collection process is based. This problem has long been studied in the case-based reasoning literature [16, 17] , where experience is also collected in a more or less implicit way. With case-base maintenance, however, existing techniques are usually designed to manage case bases with relatively low amounts of noise and work best when relying on an objective measure of when a case can be used to correctly solve some target problem. The same kind of approach, applied to recommender systems, is used by [10] , using the predictions of the system itself as a measure of likelihood. Hence, it relies on a "pristine" system, not yet polluted by noisy data. [9] , on the other hand, introduce a notion of trust to cope with noisy data (associated in this case with untrustworthy users).. Another kind of noise is malicious noise: unscrupulous users try to lure the system into recommending items for their own benefit [6] . Our notion of popularity is vulnerable to this kind of attack because hits in HeyStaks are anonymous: the popularity of a page can not be traced back to the (potentially malicious) users who selected it. It would seem safer to limit the influence of an individual user on the popularity of each page (even more in the standard workflow of HeyStaks where pages, not staks, are recommended).. A third kind of noise is opinion drift. Over time, people may change their mind about their experiences [5, 7] . Furthermore, in HeyStaks, once-relevant pages may become outdated, or be modified in a way that makes them less relevant. The problem with our popularity measure is that, once it has become popular, a page will be considered relevant for ever. This can easily be changed though, by applying ageing to our measure: the popularity of a page fades out as its last selection becomes older.. We have shown that our kernel-trained classifier can be used to implement the off-line stak recommender system described in Section 3. The problem in the case of the online phase, on the other hand, is that we have to deal with queries rather than full term vectors. A query is similar to a term vector describing a page, but is a boolean vector (no number of hits, each term is either present or absent), and much sparser (vectors describing pages in HeyStaks combine all the queries used to select the page). By training our classifier with boolean vectors rather than hit vectors, we solved the first part of the problem. However, we need to perform more tests to determine how the classifier deals with sparsity, a common problem for recommender systems [2] .

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


Computing Monodromy via Continuation Methods on Random Riemann Surfaces We consider a Riemann surface X defined by a polynomial f (x, y) of degree d, whose coefficients are chosen randomly. Hence, we can suppose that X is smooth, that the discriminant δ(x) of f has d(d − 1) simple roots, ∆, and that δ(0) = 0 i.e. the corresponding fiber has d distinct points {y 1 , . . . , y d }. When we lift a loop 0 ∈ γ ⊂ C − ∆ by a continuation method, we get d paths in X connecting {y 1 , . . . , y d }, hence defining a permutation of that set. This is called monodromy.Here we present experimentations in Maple to get statistics on the distribution of transpositions corresponding to loops around each point of ∆. Multiplying families of "neighbor" transpositions, we construct permutations and the subgroups of the symmetric group they generate. This allows us to establish and study experimentally two conjectures on the distribution of these transpositions and on transitivity of the generated subgroups.Assuming that these two conjectures are true, we develop tools allowing fast probabilistic algorithms for absolute multivariate polynomial factorization, under the hypothesis that the factors behave like random polynomials whose coefficients follow uniform distributions. In this paper we presented an original approach towards factorization and approximate factorization of high degree polynomials: considering the special (but not uncommon) case of a product of polynomials with random coefficients of limited size. This hypothesis simplifies the geometry: in particular, the curves corresponding to the factors are smooth. But it also implies several nice behaviors for the distribution of the discriminant and critical points of these curves. This deserves to be studied further and to be used to develop a new class of algorithms. We already developed and presented some programs to analyze the situations. Our preliminary study and results show that the subject is rich and promising.. We formulated two conjectures and explained our intuition behind the phenomena we propose to investigate.. There are several other directions of research. The main one is to investigate, with the hypothesis of uniformity, quantitative relations between exact and approximate factorizations. The second one is to investigate how our approach can be continued even if the curves corresponding to the factor have higher singularities; indeed, one can expect that if a random large loop in the complex plane encircles the projection of these singularities without meeting them, the combinatorial and algorithmic situation is roughly the same that the one considered here. However, the numerical phenomena of the perturbed situation are more complicated, since clusters resulting from deformations of higher order multiple points are more spread out.

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