Sketch-based Dynamic Illustration of Fluid Systems Figure 1: Illustrations created using our system to describe the surgical repair procedure of tricuspid atresia (TA). The user interactively edits the illustration and the system continuously presents the corresponding blood flow computed by simplified fluid simulation.This paper presents a lightweight sketching system that enables interactive illustration of complex fluid systems. Users can sketch on a 2.5-dimensional (2.5D) canvas to design the shapes and connections of a fluid circuit. These input sketches are automatically analyzed and abstracted into a hydraulic graph, and a new hybrid fluid model is used in the background to enhance the illustrations. The system provides rich simple operations for users to edit the fluid system incrementally, and the new internal flow patterns can be simulated in real time. Our system is used to illustrate various fluid systems in medicine, biology, and engineering. We asked professional medical doctors to try our system and obtained positive feedback from them. Fluid systems are ubiquitous. A typical fluid system includes a fluid to carry the materials to be transported, pipes and regions to distribute the fluid, and external sources and sinks to drive the flow through the system. In the fields of medicine, biology, and engineering, it is important to be able to illustrate how these systems work and how to operate on them dynamically. For example, a doctor may need to illustrate how blood flow patterns inside normal and abnormal hearts differ and how a defective heart can be repaired with a series of surgical operations [Runge and Ohman 2004] ; a biologist may need to explain how an animal circulatory system functions and how it transports materials; an engineer may need to explain to a customer how air circulates inside a house after installing new air conditioners. Even though these kinds of illustrations can be enhanced using simple fluid simulations and visualizations, standard simulation systems are too complicated for use in casual and interactive discussions. This paper presents a sketching system that incorporates a background fluid simulation for illustrating dynamic fluid systems (Figure 1) . Our method combines sketching, simulation, and control techniques in one user interface and can produce illustrations of complex fluid systems in real time. Users design the structure of the fluid system using basic sketch operations on a canvas and progressively edit it to show how flow patterns change. The system automatically detects and corrects the structural errors of flow simulation as the user sketches. A fluid simulation runs constantly in the background to enhance flow and material distribution in physically plausible ways.. We developed a hybrid fluid simulation method using multilayered two-dimensional (2D) space for the background simulation. We chose not to use three-dimensional (3D) simulation because this makes the simulation difficult to control and visualize. Twodimensional illustrations are easier to create and understand, and are therefore more widely used for depicting fluid systems in medical and engineering education. We developed a hybrid method because standard 2D hydrodynamics simulations are too slow for our purposes and cannot handle the multilayered structures typical in these illustrations. Our method combines a hydraulic network model and a multilayered hydrodynamics model to enable efficient flow simulation on different levels. We used a hydraulic graph to represent the entire system on a coarse level and mapped each fluid region onto a multilayered grid to calculate local flow. The flow in the hydraulic network is calculated first and is then used to drive the hydrodynamics model in various regions by providing boundary velocities. The structures inside regions can conversely influence the flow in the network to avoid topological errors in model coupling.. The main contributions are listed as follows:. • We propose a novel application: editable, dynamic fluid illustration for interactive discussion and communication of fluid systems.. • We present a novel 2.5D representation for such fluid illustrations consisting of regions and pipes, and present sketchbased user interfaces to edit them interactively.. • We present a novel hybrid algorithm for fluid simulation that couples hydraulic simulation for the global flow in a network with hydrodynamics simulation for regional fluid.. • We show the feasibility and effectiveness of the system by presenting a solid implementation with feedback from professional medical doctors. We demonstrated the effectiveness of the proposed system by applying it to clarify various fluid systems. The sketching interface and fluid simulation algorithms were implemented in C++ and rendered with OpenGL. We defined an 8-layer Euler grid with a resolution of 140 × 100 on each layer for background simulation. All illustrations ran on a PC with an 8-core 2.8 GHz CPU and 4 GB of memory. In real-time illustration, the system can reach the speed of approximately 30 frames per second (including interaction, simulation and rendering). Explanatory illustration is an effective way to communicate scientific and technical information visually. Many studies have focused on how to generate these illustrations automatically [Ebert et al. 2005] . Recently, researchers have been especially interested in generating illustrations to explain dynamic physics systems. Mitra et al. [2010] proposed a method based on shape and contact analysis to illustrate how mechanical assemblies function. Vainio et al. [2005] designed a virtual learning environment for explaining complex medical phenomena to medical students. Zhang et al. [2006] proposed a system for designing vector field on surfaces. Schroeder et al. [2010] designed a sketch-based interface for artists to illustrate 2D vector fields.. Flow visualization methods visualize the results of flow simulation by drawing arrows or streamlines [Turk and Banks 1996] , texture-based methods by applying flow patterns to random texutures [Cabral and Leedom 1993; Laramee et al. 2004] , geometric methods by extracting geometric objects such as streamlines or stream surfaces [McLouglin et al. 2010] , and feature-based methods by visualizing physically meaningful parts such as vortices [Post et al. 2003 ]. These techniques rely on offline simulation results and can provide accurate visual effects. However, preparing these kinds of illustrations is time consuming, and users cannot interactively edit the fluid system under consideration.. Sketching interfaces have been used for designing static 3D scenes, such as models of geometrical objects [Igarashi et al. 1999; Gingold et al. 2009 ], scene phototypes [Zeleznik et al. 1996] , and plants [Ijiri et al. 2006] . They have been combined with animation systems to illustrate dynamic phenomena [Davis 2007; Davis et al. 2008 ] including fluid phenomena [Angelidis et al. 2006; Okabe et al. 2009] . Certain physics engines such as Crayon Physics 1 , Phun 2 , and Physicafe 3 , also provide sketch interfaces that allow users to design their own physics systems. However, these systems are mainly designed to simulate fluid flow in an open space and are not directly applicable to flow in a closed circuit as typically found in medical and engineering illustrations.. Fluid simulation is an established technique widely used in many fields. Many researchers have worked to produce photorealistic 3D fluid effects in real-time applications [Cohen et al. 2010] . In addition to these 3D simulation techniques, 2D hydraulic models are also widely used to enable efficient simulation of system behavior on a macroscopic level. Yu et al. [2009] used a hydrographic network model to simulate rivers in real time. Sewall et al. [2010] used a graph model to simulate traffic flow in a city. Hydraulic models are also widely used in biomedical modeling, especially blood flow simulation [Formaggia and Veneziani 2003; Nobile 2009; Almeder 1999] . Hybrid methods have been proposed to model both macroscopic and microscopic fluid phenomena in one scene. Irving et al. [2006] coupled 2D and 3D simulation techniques to model large quantities of water with surface details. Nobile [2009] proposed a two-way coupled method to simulate blood flow at various resolutions and tested the system using a very simplified model. In contrast, our model couples the global hydraulic network and local hydrodynamics regions in one-way to provide plausible real-time enhancement for illustrations. Similar approach is used in human body simulation coupling local muscles and global skeletons [Lee et al. 2009 ]. This section describes the simulation algorithm running in the background to enhance the illustration. As shown in Figure 6 , the basic workflow of the algorithm contains hydraulic graph construction with structural error detection, a flow simulation coupling network Figure 6 : Basic workflow of the system.

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


Numerical simulation of 3D bubbles rising in viscous liquids using a front tracking method The rise of bubbles in viscous liquids is not only a very common process in many industrial applications, but also an important fundamental problem in fluid physics. An Multiphase flows are numerous in both everyday life and engineering practice [34] .. Typical examples in nature include raindrops in air and gas bubbles in water, whereas chemical reactions, combustion and petroleum refining are examples of multiphase flows in industry. One very basic example of such flow is the rise of a single gas bubble in an otherwise quiescent viscous liquid. The understanding of the flow dynamics of this system is of great importance in engineering applications and to the fundamental understanding of multiphase flow physics. Rising bubbles have long been studied theoretically [8, 25] , experimentally [1] as well as computationally through numerical modeling [36] . While all these efforts have provided us with valuable insights into the dynamics of bubbles rising in viscous liquids, there are still many questions that remain unanswered due to the involvement of complex physics. The behavior of a bubble rising in a viscous liquid is not only affected by the physical properties such as density and viscosity of both phases [6] , but also by the surface tension on the interface between the two phases and by the bubble shape evolution [27, 2] . The difficulties in describing and modeling the complex behavior of a rising bubble are to a large extent due to the strong nonlinear coupling of factors such as buoyancy, surface tension, bubble/liquid momentum inertia, viscosity, bubble shape evolution and rise history of the bubble. In addition, the physics of the behavior of bubbles is of a three-dimensional nature. Hence, most of the past theoretical works were done with a lot of assumptions, and the results are only valid for certain flow regimes [25, 43] . The experimental works were limited by the available technologies to monitor, probe and sense the moving bubbles without interfering with their physics [1, 38, 44] .. With the rapid advance of computing power and the development of robust numerical methods, first principle based numerical simulations promise great potential in extending our knowledge of the fundamental system of a single bubble rising in a viscous liquid.. However, there are still great challenges and difficulties in simulating such a system accurately. This may be attributed to the following facts: (i) the sharp interface between the gas bubble and the surrounding liquid should be tracked accurately without introducing excessive numerical smearing; (ii) the surface tension gives rise to a singular source term in the governing equations, leading to a sharp pressure jump across the interface; (iii) the discontinuity of the density and viscosity across the fluid interface may lead to numerical instability, especially when the jumps in these properties are high. For example, the density ratio of liquid to gas could be as high as 1000; (iv) the geometric complexity caused by bubble deformation and possible topological change is the main difficulty in handling the geometry of interface; a large bubble may break up into several small ones, and a bubble may also merge with other bubbles; (v) the complex physics on the interface, e.g. the effects of surfactants, film boiling and phase change (heat and mass transfer) and chemical reactions. Fortunately, various methods for multiphase flow have been developed to address these difficulties, and each method typically has its own characteristic strengths and weaknesses. Comprehensive reviews of numerical methods for multiphase/interfacial flow simulation have been given by Scardovelli and Zaleski [37] and Annaland et al. [41] . Most of the current numerical techniques applied in the simulation of multiphase/interfacial flows have been developed with focus on the following two aspects: (i) capturing/tracking the sharp interface, e.g. interface capturing, grid fitting, front tracking or hybrid methods; and (ii) stabilizing the flow solver to handle discontinuous fluid properties and highly singular interfacial source terms, e.g. the projection-correction method [41] and the SIMPLE algorithm [6, 17] .. The volume of fluid [14, 4] , level-set [28, 42, 29] and phase-field [19] approaches fall into the first category of front capturing methods. In these methods the interface is captured using various volume functions defined on the grid used to solve the "one-fluid" formulation of the governing equations for multiphase flow. Since interface capturing uses the same grid as the flow solver, it is relatively easy to implement. However, the accuracy of this approach is limited by the numerical diffusion from the solution of the convection equation of the volume function. Various schemes have been developed to advect, reconstruct / reinitialize the volume function to improve the accuracy in calculating the interface position. One example is the high-order shock-capturing scheme used to treat the convective terms in the governing equations [18] . Although the explicit reconstruction of the interface is circumvented, the implementation of such high-order schemes is quite sophisticated, and they do not work well for the sharp discontinuities encountered in multiphase/interfacial flows. In addition, a relatively fine grid is needed in the vicinity of the interface to obtain good resolution.. The second category of approaches tries to track the moving interface by fitting the background grid points to the interface. The fitting is achieved through re-meshing techniques such as deforming, moving, and adapting the background grid points. This method is also well-known as "boundary-fitting approach", and the "boundary" here refers to the interface between the fluids. The grid-fitting approach is capable of capturing the interface position accurately. Early development on this approach was done by Ryskin and Leal [36] . Curvilinear grids were used to follow the motion of a rising bubble in liquid. This method is suitable for relatively simple geometries undergoing small deformations, and applications to complex, fully three-dimensional problems with unsteady deforming phase boundaries are very rare. This is mainly due to difficulties in maintaining the proper volume mesh quality and in handling complex interface geometry such as topological change. In spite of these difficulties, recent work by Hu et al. [16] showed some very impressive results on 3D simulations of moving spherical particles in liquid.. The third category is the front tracking method. This approach solves the flow field on a fixed grid and tracks the interface position in a Lagrangian manner by a set of interface markers. These interface markers can be free particles without connection, or they can be logically connected elements, possibly containing accurate geometric information about the interface such as area, volume, curvature, deformation, etc. A front tracking technique was proposed by pioneer researchers Glimm and his coworkers [11, 12, 13] . They represent the front interface using a set of moving markers and solve the flow field on a separate background grid. The background grid is modified only near the front to make background grid points coincide with the front markers of the interface. In this case, some irregular grids are reconstructed and special finite difference stencils are created for the flow solver, increasing the complexity of the method and making it more difficult to implement. Independently, another front tracking technique was developed by Peskin and collaborators [31, 10] . In their method, the interface is represented by a connected set of particles which carry forces, either imposed externally or adjusted to achieve a specific velocity at the interface. A fixed background grid is kept unchanged even near the front interface, and the interface forces are distributed onto the background to solve the "one-fluid" formulation of the fluid flow.. A number of combinations and improvements of these basic approaches have been proposed to enhance the capabilities in dealing with the sharp, moving interface, where complex physical phenomena and processes could occur. One of the most promising approaches is arguably the front tracking method proposed by Tryggvason and his collaborators [46, 45] . Actually, this method may be viewed as a hybrid of the front capturing and the front-tracking techniques: a fixed background grid is used to solve the fluid flow, while a separate interface mesh is used to track the interface position explicitly. The tracked interface carries any jumps in the fluid properties, such as density and viscosity, and any interfacial forces, such as surface tension. Fluid properties are then distributed onto the fixed background grid according to the position of the interface. The surface tension can be calculated according to the geometry of the interface and is also distributed onto the background grid in the vicinity of the interface.. Besides the numerical techniques employed to capture/track the moving interface, it is also very important to develop a stable numerical method to solve the governing equations of the flow field. Some investigators have considered simplified models such as Stokes flow [33] , where inertia is completely ignored, and inviscid potential flow [15] , where viscous effects are ignored in. In both cases, the motion of deformable boundaries can be simulated with boundary integral techniques. However, when considering the transient Navier-Stokes equations for incompressible, Newtonian fluid flow, the so-called "one-fluid" formulation for multiphase flow has proved most successful [4, 42, 46] . Popular modern methods that use the "one-fluid" formulation include the projectioncorrection method [45, 41] and the SIMPLE algorithm [6, 17] . Various multiphase/interfacial flow problems have been successfully simulated by the front tracking method [45] with a projection-correction flow solver. It appears that previously reported results have been limited to flows with low to intermediate Reynolds numbers (<100) and small density ratios (<100) [5] . It is thus natural to re-examine the approach and to make it more robust and applicable to wider flow regimes. Some revised versions of the project-correction method have been proposed to improve its capability in handling situations with large density and viscosity ratios [41] . Recently, Hua and Lou [17] Therefore, a fully three-dimensional modeling approach is proposed in this paper. In addition, other features such as mesh adaptation, moving reference frame and parallel programming are introduced to enhance the model capability in simulating the rise of a 3D bubble in a viscous liquid.. The numerical algorithm proposed by Tryggvason and co-workers [46, 45] , and extended further by Hua and Lou [17] , is adopted in this paper. The handling of the moving interface in this method may be characterized as a hybrid of interface tracking and capturing. The governing Navier-Stokes equations are solved on a fixed Cartesian grid with an adaptive block structure, while the interface is represented by a set of explicitly tracked front markers. These markers form an adaptive triangular surface mesh that is advected with a velocity interpolated from the surrounding fluid. An illustration of such a mesh system is shown in Figure 1 . A single set of the governing equations are solved in the entire computational domain by treating the two fluids as one single fluid with variable fluid properties across the interface -often referred to as the "one-field" or "one-fluid" approach. The interface is assumed to have a given finite thickness (normally about two to four times the background grid size) so that jumps in the fluid properties across the surface can be reconstructed smoothly by solving a Poisson equation.. A parallel adaptive mesh refinement (AMR) tool, PARAMESH [24] , is integrated with the modified SIMPLE flow solver, and the governing equations are solved in a noninertial moving reference frame attached to the rising bubble. The AMR feature allows a relatively high-resolution mesh in the vicinity of the bubble surface. The non-inertial moving reference frame technique translates the computational domain with the rising bubble, allowing the computational domain to be relatively small and always centered around the bubble. The latter feature is particularly useful for studying the path instability of a rising bubble or the interaction of multiple bubbles, which may need very long simulation periods. For example, it is observed in experiments that the paths of millimeter-sized, rising air bubbles in water normally stabilize after a rise distance of 50-100 times the initial bubble diameter. If a stationary frame was to be applied to simulate this situation, the computational domain would be huge compared to the domain of interest. Even though an AMR feature is adopted, the total number of grid points can still be a big burden, slowing down the simulation.. The problem of a single bubble rising in a viscous liquid has been widely used as a typical validation case for the development of new numerical methods for multiphase flow [6, 40, 41] . Due to numerous experimental and numerical studies in the past, the physical understanding of the bubble rise behavior in liquid has been well-established in some flow regimes, e.g. regimes with lower Reynolds and Bond numbers [7, 1] .. However, due to the complexity in multiphase flow physics and the difficulties in both experiments and simulations, the behavior of a rising bubble with high Reynolds number is not understood well [26, 21] . In this paper, we first validate our model through comparing computational results of a single bubble rising with experimental results [1] in aspects of both bubble shapes and terminal velocities. In addition, we apply the 3D model to simulate air bubbles rising in water, and we compare the terminal velocities of the bubbles predicted in our simulations with experimental results within a large range of diameters: from 0.5 mm to 30 mm. There have been few numerical studies on this except some recent ones [9, 21] . However, since air bubbles rising in water is such a common process both in our daily life and in industrial applications, a better understanding of this process is of great importance.. The rest of this paper is organized as follows. In Section 2 we present the governing equations as well as the numerical method we apply to solve these equations. Numerical results presented in Section 3 include a detailed sensitivity analysis of the computational set-up as well as validation through a comparison of our numerical predictions with available experimental data. Finally, we recapitulate our main findings in Section 4. The numerical algorithm used in this paper is a further extension of the algorithm given in [17] for simulating 3D gas bubbles rising in viscous liquids at high Reynolds and Bond numbers for systems with large density and viscosity ratios such as air/water. To achieve this, mesh adaptation is implemented for both the front mesh and the background mesh, and a moving reference frame attached to the rising bubble is used to solve the governing incompressible Navier-Stokes equations. The solution method is a finite volume scheme based on the Semi-Implicit Method for Pressure-Linked Equations In addition, we use this model to simulate the interaction between two bubbles rising in liquid. The simulation results provide us with some physical insights into the complex behavior of bubbles rising in viscous liquids.

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


Particle methods for maximum likelihood estimation in latent variable models Abstract Standard methods for maximum likelihood parameter estimation in latent variable models rely on the Expectation-Maximization algorithm and its Monte Carlo variants. Our approach is different and motivated by similar considerations to simulated annealing; that is we build a sequence of artificial distributions whose support concentrates itself on the set of maximum likelihood estimates. We sample from these distributions using a sequential Monte Carlo approach. We demonstrate state-of-the-art performance for several applications of the proposed approach.

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


Using visual pages analysis for optimizing web archiving Due to the growing importance of the World Wide Web, archiving it has become crucial for preserving useful source of information. To maintain a web archive up-to-date, crawlers harvest the web by iteratively downloading new versions of documents. However, it is frequent that crawlers retrieve pages with unimportant changes such as advertisements which are continually updated. Hence, web archive systems waste time and space for indexing and storing useless page versions. Also, querying the archive can take more time due to the large set of useless page versions stored. Thus, an effective method is required to know accurately when and how often important changes between versions occur in order to efficiently archive web pages. Our work focuses on addressing this requirement through a new web archiving approach that detects important changes between page versions. This approach consists in archiving the visual layout structure of a web page represented by semantic blocks. This work seeks to describe the proposed approach and to examine various related issues such as using the importance of changes between versions to optimize web crawl scheduling. The major interesting research questions that we would like to address in the future are introduced. The approach proposed in Section 3 is related to different areas. We present below related works in these major areas; web archiving, visual web page analysis, changes detection and web crawling.. Web Archiving. There are several projects launched by different archiving institutes (national libraries, historical data archives, etc.) around the world to preserve their country's web heritage. Most of the web archiving initiatives are described at [1] . Some studies [2, 4] focus on the selection of web pages to be archived by defining the web perimeter. Others [9, 8] work on modeling and evaluating the frequency of web changes. They propose change frequencies estimators and various refresh policies to improve the archive freshness. Some researchers [7, 13] address issues concerning the format of information to be stored and indexed by proposing their own storage system. Others studies [2, 3] focus on the control and the representation of changes. They propose a change detection algorithm and/or a delta format for an efficient query and storage of the web archive.. Though interesting, those approaches do not take the visual aspect and the relative importance of pages parts, which are at the core of our approach.. Visual Web Page Analysis. Several methods have been proposed to analyze the visual representation of web pages. Most approaches discover the logical structure of a page by either analyzing the rendered document or analyzing the document code. Gu et al. [14] propose a top down algorithm which detects the web content structure based on the layout information. Kovacevic et al. [12] define heuristics to recognize common page areas (header, footer, center of the page, etc.) based on visual information. Cai et al. [5] propose the algorithm VIPS which segments the web page into multiple semantic blocks based on visual information retrieved from browser's rendering. Cosulshi et al. [11] propose an approach that calculates the block correspondence between web pages by using positional information of DOM tree's elements. Compared to existing methods, VIPS method described above seems to be the most appropriate for our approach because it allows an adequate granularity of the page partitioning. It builds a hierarchy of semantic blocks of the page that better simulates how a user understands the web layout structure based on his visual perception. Thus, VIPS is used to build the visual structure of documents.. Changes Detection. Several algorithms have been designed to detect changes between two (versions of) semistructural documents (HTML, XML). They find a minimum set of change operations (insert, delete, . . .) that transform one data tree to another. These changes operations are often gathered in a delta script or a delta file. The design of diff algorithms depends on the purposes and the requirements (time complexity, operations to be handled, quality of the delta, etc.). Cobéna et al. [10] propose the XyDiff algorithm to improve time and memory management. XyDiff supports move operation and achieves a time complexity of O(n * log(n)). Despite its high performance, it does not always guarantee an optimal result (i.e. minimal edit script). Wang et al. [19] propose X-Diff which can detect the optimal differences between two unordered XML trees in quadratic time O(n 2 ) but it does not handle a move. DeltaXML [15] can compare, merge and synchronize XML documents for ordered and unordered trees by supporting basic operations but it does not detect a move. There are several other algorithms like DTD-Diff [16] , etc. After studying these algorithms, we decided to not use existing methods for our web archiving approach because they are generic-purpose. As we have various specific requirements related to the visual layout structure of documents, we prefer proposing our ad'hoc algorithm (Vi-DIFF). This algorithm enables for a better trade-off between complexity and completeness of the detected operations set.. Web Crawling. Several existing studies address the problem of optimizing web crawling by either developing scheduling strategies [6, 17] or by estimating the frequency of changes [9, 8] . However, as far as we know, those studies do not consider the importance of changes that have occurred between already analyzed versions. If we can predict important changes frequencies much more accurately, we may avoid indexing unimportant information and wasting space storage. This is the goal of our work through the proposed approach to improve the effectiveness of the web archive system.

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


Quantifying human reconstruction accuracy for voxelcarving in a sporting environment Whilst voxel carving approaches exist that allow non-invasive 3D human reconstruction, their performance is heavily dependent on the number of cameras used and the placement of these cameras around the subject. We present a technique to quantify the fall-off in accuracy of spatially carved volumetric representations of humans based on real world constraints. We describe an example of such a quantitative evaluation using a synthetic dataset of typical sports motion in a tennis court scenario, created using computer graphics techniques and motion capture data. Experiments are performed using a baseline voxel carving technique that includes player tracking, background subtraction and player voxel carving. This type of quantitative evaluation could be used by amateur sporting clubs without a sophisticated capture infrastructure to understand how best to instrument a camera network in order to obtain a good trade-off between reconstruction accuracy and installation cost. In order for coaches to both technically and tactically improve a player's performance they must be able to ascertain the deficiencies in an athlete's abilities and effectively communicate to the player how to correct these. In our on-going * Area chair: Qi Tian Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. work, we aim to maximise the impact of coaching feedback by developing tools for both performance analysis and visualisation of player performance. In tennis, for example, 3D visualisation could be used to provide detailed feedback on an athlete's biomechanical movement during specific actions crucial to overall performance. Such a visualisation would be useful for coaches for identifying faults in a player's stroke mechanics during serves, drop shots, etc as well a useful means of conveying this information back to the athlete.. Clearly, 3D human reconstruction is a key component in achieving this, as it forms a core element of both performance analysis and visualisation. For example, Zhao et.al.. [10] fit a human skeletal poses to a temporal series of 3D volumetric representations, resulting in the acquisition of the movement of a human's limbs and body over time. This technique could be employed as the basis for the evaluation of sporting performance, for example determining how parameters, such as fatigue, affect an athlete technique over time. However, the accuracy of such skeletal fitting techniques are intrinsically linked to the precision of the 3D human representations. Similarly, an accurate reconstruction of the player at any point in time would allow the coach flexibility when clarifying a tactical or technical issue by allowing the game to be viewed from any angle; or enabling highly beneficial tactical information to be obtained by an athlete from reliving a match from their own viewpoint, a spectator's viewpoint, and from their opponent's viewpoint. The usefulness of this depends on the accuracy of the visualisation.. In an ideal scenario, the 3D human volumetric models would be acquired from voxel carving techniques using a camera network consisting of numerous high quality cameras, with the cameras in the network positioned on the surface of a virtual sphere around the athlete. Real world constraints, however, do not normally allow for this. In a low cost amateur set-up, the quality and number of cameras available is limited. Furthermore, the physical constraints of retro-fitting a camera network to an existing environment will often mean the non-linear placement of cameras that do not provide full 360 degree encirclement. For such a scenario, deciding the optimum camera placement positions can lead to significant gains in the accuracy of generated volumetric models. To the best of our knowledge, however, no tools exist to help inform how best to instrument the camera network in order to ensure maximum quality given a limited budget (number of cameras) and real world practical mounting constraints.. In this work, we describe a technique that, starting from an idealized capture scenario, can quantify the fall off in accuracy of a 3D reconstruction as the number of cameras is reduced. Using this as a tool, the number, placement and cost of the camera network could be optimised, allowing the highest quality 3D volumetric models to be acquired given a defined budget and the physical constraints of the capture environment (note that we do not claim to address this complex optimization problem here, it is targeted for future work). The paper is organised as follows: Section 2 provides a brief overview on previous work conducted in the area 3D reconstruction techniques. Section 3 gives an overview of the proposed approach. Section 5 provides quantitative and subjective evaluation of the approach and conclusions and future work are outlined in section 6. In this study we presented a technique to quantify the accuracy achievable via spatially carved volumetric representations based on real world constraints. We used a 3D reconstruction technique developed for an amateur sporting environment and illustrated how we could quantitatively evaluate its performance by simulating realistic human motion and virtual placement of a large number of cameras. The 3D reconstruction techniques described in the literature range from emerging techniques based on wearable cheap sensors [8] to well-known and broadly used light scanning and infra-red optical motion capture systems. Although systems such as Vicon [2] are generally regarded as being the gold standard in accurate motion reconstruction, they can be impractical and cumbersome in some scenarios. Athletic motion, in particular, is challenging because subjects often move very quickly through large spatial volumes that may be difficult to densely and safely populate with enough cameras to ensure adequate coverage and resolution. The practicalities of installing a large number of expensive cameras in such spaces may also be impractical due to the inherent cost of the hardware. Within the context of real world sporting environments, where athletes tend not to be permitted to be instrumented or wear restrictive motion capture suits, a non-invasive technique that does not disturb or distract the athlete is the most desirable solution.. Space carving [3, 5, 6, 7] , or voxel (a 3D pixel) carving, techniques can provide such a non-invasive solution and can be implemented on a low-cost camera network allowing the approach to be feasibly employed by both amateur and elite level sports clubs. Space carving techniques create a 3D representation of a subject from a temporally calibrated sequence of 2D images captured from a number of cameras at multiple viewing angles. In each image, a silhouette of the region of interest (i.e. the athlete) is identified and segmented. A virtual cube is drawn around the volume a subject occupies in 3D space and this volume is subsequently populated with voxels. Each voxel is analogous to a virtual lump of clay that is carved by iterating through each of the cameras and eliminating inconsistent voxels from this predefined initial volume using the extracted silhouettes from each image [6] . The resultant voxels occupy the space that corresponds to the most probable 3D spatial location of the subject. However, the accuracy of the resultant 3D representation is heavily dependent on the number of cameras used and their placement.

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


Analyzing a Class of Pseudo-Random Bit Generator through Inductive Machine Learning Paradigm Abstract. Random number generation is an integral part of strong cipher systems. If a pseudo-random sequence can be predicted with better than chance probability then the generator is considered to be cryptographically weak. This paper deals with next bit prediction of pseudo-random binary sequences generated by Linear Feedback Shift Register (LFSR) and LFSR-based pseudo-random bit generators (PRBG), using Inductive Machine Learning (ML) paradigm, namely C4.5 the most common and widely used inductive data mining algorithm. This machine learning technique has been introduced to convert the theoretical prediction problem into a classification problem, which we coined as Classificatory Prediction problem. We further extended the use of 2 Corresponding Author 2 this technique to predict next bit without having any knowledge of subsequent bits of the PRBG and can be termed as true Next Bit Predictor. The technique used is independent of the parameters and domain knowledge of the pseudo-random bit generators. The present study is a comprehensive extension of the work done by Hernandez et al [15] . We performed meticulous experiments (over wide range of LFSRs) and came out with a more explanatory analysis. Our classificatory prediction results paved the way for the evolution of the next bit prediction model. Random number generation is a critical issue in cryptography. Generating true random numbers, especially on computers that are typically designed to be deterministic is a real challenge in the cryptographic world. The best a computer can produce are pseudorandom numbers, which are generated from some random initial values. The pseudorandom numbers look like random numbers and have good statistical properties [5] .. The period of the pseudo-random number generator should be very high and should not repeat for a large length. Normally in cryptographic applications, random number is a number that cannot be predicted by an eavesdropper before it is generated. It must be computationally infeasible to predict the next bit of cryptographically secure pseudorandom sequences, given complete knowledge of the algorithm or hardware generating the sequence and all of the previous bits in the stream [1] . Typically, if the pseudorandom numbers are to be in the range [ ]. , an adversary cannot predict that number with probability slightly better than n 1 (i.e. chance probability). A more formal definition is given in [23] . Let Machine learning techniques are very widely used by data mining community for knowledge discovery, pattern enumeration and acquiring the predictive ability / knowledge in real-life applications. This paper deals with prediction of next bit of a pseudo-random bit generator of a class of Pseudo-random Number Bit Generator namely Linear Feedback Shift Register (LFSR) and LFSR-based PRBGs, using In this paper we have improved upon the alternative approach of prediction of next bit of a pseudo-random generator using machine learning technique as proposed by Hernandez et al [15] . We also proposed a model for next bit prediction for PRBG. The utility of the presented approach of predicting next bit for LFSR's and Geffe Generators by Classificatory Prediction and true Next Bit Prediction (with few bits in hand) has its impact on finding the flaw with other crypto primitives. There exist techniques to predict and cryptanalyze the above considered PRBG's, but they are domain specific.. The advantage of our proposed approach is that it is domain independent and does not rely on the type of generator and the parameters used by PRBG. In a more practical application scenario, most of the time a cryptanalyst has little knowledge about the PRBG and he is inquisitive about the future bit sequences. In this case, he can take a lead from the higher prediction accuracy of the proposed model for true next bit prediction. By predicting better than chance probability the analyst would be left with reduced set of unknown bits that can be subjected to a brute force attack in real time.

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


Negotiating exchanges of P3P-labeled information for compensation Abstract. We consider private information a commodity, of value to both the information holder and the information seeker. Hence, a customer can be enticed to trade his/her private information with a business in exchange for compensation. In this paper we propose to apply utility theory to allow each participant to express the value they place on each private datum and, separately, on combinations of data. The PrivacyPact protocol transmits messages that are comprised of possible exchanges. Each participant is prevented from making offers that necessarily have lower utility for the other partner than previous ones. The protocol is complete in that if an exchange exists that is acceptable to both, it will be found as long as neither partner exits the negotiation early. While the space of possible offers grows exponentially on the number of negotiable items, experimentation with simple strategies indicates that negotiations can converge relatively quickly. People are often reluctant to engage in electronic commerce interaction because they fear loss of private information. Often a website will request personal information such as name, home address, browser type, etc., from a user accessing the site. This information can be used to improve the website's content or organization, or the services offered. However, occasionally a website's policy might include less desirable practices, such as the transmission of private information to third parties. In either case, the information holds some value to the requestor. Consequently, the requestor may be willing to provide incentives such as inclusion in a rewards program, a free product, a discount on a future purchase, etc., in exchange for this private information.. Recent work in privacy economics research shows that people are typically willing to share their private information if they foresee a sufficient reward in return. Chellappa and Sin [2] and Culnan and Bies [7] argue that, when attempting to collect user data in order to personalize web sites, consumers are willing to share preference information in exchange for benefits such as convenience, if the quantified value of services outweighs the quantified loss of privacy. Hann et al. [11] show that economic incentives affect users' willingness to share information, and derive consumers' monetary worth of secondary use of personal information. Moreover, Culnan and Armstrong [6] argue that consumers are more willing to share their private information if they believe that fair information practices are in place. Fair information practices are those that 1) reveal why the information is being collected and how it will be used, and 2) give consumers control over its possible uses.. The Platform for Privacy Preferences Project (P3P) [4] enables websites to express their data-collecting practices in a standard format, indicating which data is to be collected, for what purposes, with whom it will be shared, and for how long it will be retained. P3P user agents then allow users to be informed of these website practices and automate the decision on whether or not to share the requested information based on the user's pre-defined privacy policy. While this mechanism constitutes a fair information practice, it is quite rigid. If the website and the user do not completely agree on the terms of the exchange, then the relationship is terminated. To alleviate this, earlier drafts of P3P included a protocol for multi-round negotiation. However, it was believed that this made P3P too complicated, and was thus dropped from the specification. Furthermore, Cranor and Resnick [5] show that under reasonable assumptions of user anonymity, publicly known website strategies, and no negotiation transaction costs for users, take-it-or-leave-it offers yield just as much website profit as any negotiation strategy.. On the other hand, if the negotiation includes rewards in exchange for the private information, the assumption of publicly-known website strategies becomes less reasonable. A business requesting personal information on their website might have several strategies that may be employed, depending on what sort of reward is being requested or offered, and also what type of user is involved in the negotiation. A user who has a long history of dealing with the business may be offered a higher reward, since his/her information may be worth more. This last point can provide incentive to the user to reveal herself, thus removing the assumption of user anonymity.. In this paper, we propose a multi-issue automated negotiation [8, 9, 12] protocol where the owner of the website (the business) can offer a certain level of service (e.g. 10% discount, free delivery) in exchange for information about the user (the customer). If this offer is not acceptable, the user may make a counteroffer, possibly consisting of a subset of the requested information for some higher level reward. Businesses whose privacy policies are less flexible or too complicated to negotiate may choose to negotiate only the reward, while other businesses may choose to negotiate policies or a combination of both.. Multi-attribute utility theory is used to help the parties rank their preferences. The exchange of counteroffers continues until either a deal is reached, or the negotiation is terminated by either participant. A participant might terminate negotiation if it appears impossible or unlikely that the other participant will make an acceptable offer, or if the negotiation is taking too long. We show analytically that our protocol is guaranteed to converge if a mutually acceptable agreement exists and neither party terminates the negotiation prematurely. We also give experimental evidence under normal settings that it can converge in a reasonable amount of time when simple negotiation strategies are used.. The paper is organized as follows. Section 2 provides some background on P3P, while section 3 presents a discussion on the elements of the negotiation, namely the information sought and the types of rewards to be offered in exchange. Section 4 then presents our proposed protocol. Section 5 provides an example negotiation session. Section 6 discusses the protocol's usage and properties. Section 7 describes a working prototype and a set of experiments. Section 8 then discusses conclusions and related work, and finally section 9 discusses future work. As we apply the PrivacyPact protocol to general multi-issue negotiation, we will investigate heuristically-based negotiation strategies. The negotiation space we have identified is exponentially large in the number of issues under negotiation, but this does not mean systems that use the protocol must enumerate this entire space. Systems employing heuristics, such as [8] , could provide a means of ordering that space by identifying fruitful negotiation paths. If the heuristics do not lead to an acceptable offer, the remainder of the space can still be explored. A computerized agent will run on behalf of each of the participants to create a conversation that adheres to the protocol described. Each agent is directed by the interests of the participant it serves, but according to the protocol each agent and its participant is free to communicate messages that may or may not be closely related to those of the other participant. The offers of one participant are required only to not be the same or less attractive than previous offers by the same participant.. The PrivacyPact protocol is guaranteed to allow the participants to find an exchange, assuming they search for it exhaustively. But it is open to abuses. If D, R, P and T are the sets of data, recipients, purposes and tokens, respectively, then for any given retention time, there are (2 |D| − 1)(2 |R| − 1)(2 |P | − 1)|T | different possible offers (assuming there is always at least one element from each of D, R and P and exactly one from T in any offer). All of these could be exchanged in a session that adheres to the protocol in this way. The first n messages for the business would request to exchange all items for the token of lowest value, then next lowest, etc. It would repeat this series of offers removing one item from the list, then repeat again removing another item. In this way it could traverse, from top to bottom in level order, the lattice of subsets of S with n offers at each subset. The customer would offer to exchange a singleton set of information for the highest valued token, then the next highest, etc., and produce offers in accordance with a bottom to top traversal of the subset lattice. This much traffic is clearly not feasible for a busy e-commerce system.. Given that this exhaustive strategy is to be avoided, we advocate that each participant calculate its next offer according to the following criteria:. 1. For the business, initially suggest all the items wanted in the exchange; this is the only chance to put items "on the table". For the customer, reduce this initial set by removing any items from S not to be divulged and any tokens from T not of interest. 2. The business's initial offer should be fair. Offering to buy everything in S for the lowest token is likely to make the customer lose interest and close the port. Similarly the first counteroffer from the customer should not offer to exchange some singleton set for the highest token. 3. Every offer a participant sends to its partner should be acceptable to itself, as per Equation 2. 4. If the partner's offer meets a participant's acceptability criteria in Equation 2, it is permissible to try to improve the exchange by continuing with a counteroffer, but this has to be weighed against the risk of the partner closing the port. 5. Before an acceptable offer has been received, a participant may pursue almost any offer still allowed by the protocol. After an acceptable offer has been received, the participant may look for ways to improve that offer, but should limit the length of the conversation. 6. Depending on a participant's utility function, a directed search might create counteroffers more quickly. As in standard AI practice, the search would consider a set of offers that are near to some selected previous offer. Before an acceptable offer has been received, this selected previous offer would be chosen from among those given by this participant, seeking to make one of them less useful but still acceptable to itself. After one or more acceptable offers is received from the partner, the directed search would proceed from among these; the participant would seek to make it increase its utility.

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


Practical morphological antialiasing on the GPU The subject of antialiasing techniques has been actively explored for the past 40 years. The classical approach involves computing the average of multiple samples for each final sample. Graphics hardware vendors implement various refinements of these algorithms. Computing multiple samples (MSAA) can be very costly depending on the complexity of the shading, or in the case of raytracing. Moreover, image-space techniques like deferred shading are incompatible with hardware implementation of MSAA since the lighting stage is decorrelated from the geometry stage. A filter based approach called Morphological Antialiasing (MLAA) was recently introduced [2009]. This technique does not need multiple samples and can efficiently be implemented on CPU using vector instructions. However, this filter is not linear and requires deep branching and image-wise knowledge which can be very inefficient on graphics hardware. We introduce an efficient adaptation of the MLAA algorithm running flawlessly on medium range GPUs. The subject of antialiasing techniques has been actively explored for the past 40 years. The classical approach involves computing the average of multiple samples for each final sample. Graphics hardware vendors implement various refinements of these algorithms. Computing multiple samples (MSAA) can be very costly depending on the complexity of the shading, or in the case of raytracing. Moreover, image-space techniques like deferred shading are incompatible with hardware implementation of MSAA since the lighting stage is decorrelated from the geometry stage. A filter based approach called Morphological Antialiasing (MLAA) was recently introduced [2009] . This technique does not need multiple samples and can efficiently be implemented on CPU using vector instructions. However, this filter is not linear and requires deep branching and image-wise knowledge which can be very inefficient on graphics hardware. We introduce an efficient adaptation of the MLAA algorithm running flawlessly on medium range GPUs.

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


Improving query translation for cross-language information retrieval using statistical models Dictionaries have often been used for query translation in crosslanguage information retrieval (CLIR). However, we are faced with the problem of translation ambiguity, i.e. multiple translations are stored in a dictionary for a word. In addition, a word-by-word query translation is not precise enough. In this paper, we explore several methods to improve the previous dictionary-based query translation. First, as many as possible, noun phrases are recognized and translated as a whole by using statistical models and phrase translation patterns. Second, the best word translations are selected based on the cohesion of the translation words. Our experimental results on TREC EnglishChinese CLIR collection show that these techniques result in significant improvements over the simple dictionary approaches, and achieve even better performance than a high-quality machine translation system. With the explosion of on-line non-English documents, crosslanguage information retrieval (CLIR) systems have become increasingly important in recent years.. Research in the area of CLIR has focused mainly on methods for query translation. In particular, dictionary-based translation has been a commonly used method because of its simplicity and the increasing availability of machine readable bilingual dictionaries. However, besides the problem of completeness of the dictionary, we are also faced with the problem of ambiguity in translation, i.e. the selection of the correct translation word(s) from the dictionary.. In this paper, we explore several methods to improve query translation for English-Chinese CLIR. First, we try to identify noun phrases (NP) in a query and translate them as units. Phrases usually have fewer senses, thus the translation of a multi-word concept as a phrase is more precise. In addition to the NPs stored in the dictionary, new multi-word NPs are identified automatically using a statistical model. They are translated using translation patterns and a language model. Second, to deal with the translation ambiguity problem, we propose a method based on statistics of co-occurrences. The method tries to select the best translation according to its coherence with the other translation words. Finally, to increase the coverage of the bilingual dictionary, additional words and translations are automatically generated from a parallel bilingual corpus. We tested our methods using TREC Chinese documents. Our results show that each of the methods can bring significant improvement over simple dictionary approaches. A combination of the methods achieves even better retrieval performance than a high-quality machine translation (MT) system. The remainder of this paper is organized as follows. In Section 2, we provide a brief survey on related work. In Section 3, we describe in detail our techniques for NP identification and translation. In Section 4, we describe the method of translation selection. In Section 5, experimental results are presented. Finally, we present our conclusion in Section 6. Dictionary-based query translation has been widely used in CLIR because of its simplicity and the increasing availability of machine-readable bilingual lexicons. However, besides the problem of completeness of the lexicon, we are also faced with the problem of selecting the best translation word(s) from the dictionary.. In this paper, we proposed several approaches to improve dictionary-based query translation for CLIR. We focused on translation of phrases, which has been demonstrated to be one of most effective ways to obtain more accurate translations. We presented a method to identify and translate unknown NPs. English NPs in queries are first identified statistically, and then translated into Chinese phrases using a new method that combines translation patterns and a Chinese language model. We also presented a method of translation selection based on the cohesion among translation words.. Through our experiments, we showed that each of the above methods leads to some improvement, and that the combined approach significantly improves CLIR performance. The fact that our approach outperformed one of the best commercial MT systems indicates that some specific translation tools designed for query translation in CLIR may be better than on-the-shelf MT systems. The combination of our approach with the MT system leads to a high effectiveness of 105% of that of monolingual IR. This shows that even if a high-quality MT system is available, our approach can still lead to additional improvement.. Though our method shows very promising improvement in experiments, we are faced with some unsolved problems. First, the lack of large amount of word/phrase-aligned parallel corpus prevents us from extracting more reliable translation patterns. Second, to translate queries in a specific domain, it would be better to use a domain-specific translation and language model. This could help with selecting the correct domain-specific translations. Then there come the problems of building domain- specific translation/language models, and activating the corresponding model when a specialized query is submitted. These are some of the topics of our future work. In order to analyze the effectiveness and remaining problems of our query translation approach, for the 25 queries of TREC 9, we display in Figure 7 a comparison of the long query retrieval results of row 1 and row 5 in Table 1 . We observe that the queries may be classified into three categories: 1) 5 queries that have both monolingual and CLIR result of average precision lower than 0.1 (#58, #61, #67, #69, and #77). The bad effectiveness in these cases is not due to translation, but to the high difficulty of query topics. 2) 11 queries with monolingual average precision lower than CLIR. There might be two possible reasons. One is that by accepting several translations for a key concept, we are in fact making query expansion. Some examples are: "public key" in query #68 is translated to 公共密钥 as well as 公共密码, "Olympics" in query #71 to 奥林匹克 (Olympic) and 奥运会 (Olympic games), and "Panda bear" in query #76 to 大熊猫 and 大 猫 熊 , etc. The second reason is that sometimes, the translations obtained are more natural expressions than those given in the original Chinese queries. For example, "violation" in query #56 is translated to a more common word 侵害 rather than 违反 in the manually translated Chinese query (provided with the corpus).. 3) 9 queries with monolingual average precision higher than CLIR. Most of them are due to the bad translations of key concepts, which are not stored in the dictionary as a phrase. We divide NP into two types: compositional NP and noncompositional NP.. Compositional NP is the phrase whose translation can be assembled by translations of words within the phrase, such as "computer hacker" (电脑黑客), "public key" (公共密钥), and "environmental protection laws" (环境保护法), etc. Generally speaking, our method is good for compositional NP translation. For some domain-specific NPs, it failed. For example, "stealth technology" (隐秘技术) and "stealth countermeasure" (反隐秘 技术) in #59, and "synthetic aperture radar" (合成孔径雷达) in #66 have special terminology in Chinese and are not translated correctly.. A non-compositional NP is a phrase whose translation cannot be assembled by translations of its component words. Our method is unable to deal with the translation of non-compositional NPs.. Examples include "three-links" ( 三 通 ) in #65, "vehicle fatalities" (车祸) in #68, "most-favored nation" (最惠国), and "World Conference on Women" (世妇会), etc. A large portion of non-compositional NPs in queries are political abbreviations. If these NPs are not stored in the dictionary, they are most likely to be translated incorrectly. This indicates that the coverage of the dictionary is still an important problem to be solved to improve the performance of CLIR.

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