Memory-Scalable GPU Spatial Hierarchy Construction Abstract-Recent GPU algorithms for constructing spatial hierarchies have achieved promising performance for moderately complex models by using the breadth-first search (BFS) construction order. While being able to exploit the massive parallelism on the GPU, the BFS order also consumes excessive GPU memory, which becomes a serious issue for interactive applications involving very complex models with more than a few million triangles. In this paper, we propose to use the partial breadth-first search (PBFS) construction order to control memory consumption while maximizing performance. We apply the PBFS order to two hierarchy construction algorithms. The first algorithm is for kd-trees that automatically balances between the level of parallelism and intermediate memory usage. With PBFS, peak memory consumption during construction can be efficiently controlled without costly CPU-GPU data transfer. We also develop memory allocation strategies to effectively limit memory fragmentation. The resulting algorithm scales well with GPU memory and constructs kd-trees of models with millions of triangles at interactive rates on GPUs with 1 GB memory. Compared with existing algorithms, our algorithm is an order of magnitude more scalable for a given GPU memory bound. The second algorithm is for out-of-core bounding volume hierarchy (BVH) construction for very large scenes based on the PBFS construction order. At each iteration, all constructed nodes are dumped to the CPU memory, and the GPU memory is freed for the next iteration's use. In this way, the algorithm is able to build trees that are too large to be stored in the GPU memory. Experiments show that our algorithm can construct BVHs for scenes with up to 20 M triangles, several times larger than previous GPU algorithms. C URRENT many-core GPUs have evolved into incredible computing processors for general-purpose computation, and this evolution is likely to continue in the future. Recently, GPU construction of hierarchical data structures, such as kd-trees [1] and BVHs [2] , has shown great promise in a variety of applications, including ray tracing, photon mapping, point cloud modeling, and simulations. Unlike traditional CPU-based algorithms, which build hierarchical data structures following the depth-first search (DFS) order, the GPU algorithms achieve interactive construction by using the breadth-first search (BFS) order, which best exploits the massive parallelism on the GPU. These algorithms exploit the multiple cores and high memory bandwidth in terms of building hierarchies of moderately complex models at interactive rates. Unfortunately, this parallel computation comes at the cost of excessive memory consumption overhead because the GPU algorithms need to maintain and process a large amount of data simultaneously. This becomes a serious issue for interactive applications involving complex models with more than a few million triangles [1] , [2] . Current GPUs have a different memory architecture than CPUs. The on-board memory on GPUs is limited to a few GBs. Moreover, GPUs have high memory bandwidth, much smaller per-thread caches and GPU's memory limitation cannot be virtualized by on-demand paging. As a result, it is important to design GPU-based algorithms that can cope with these memory architecture characteristics of GPUs for interactive applications.. An important characteristic of many-thread algorithms running on parallel processing platforms is that the memory consumption is correlated with the level of parallelism. GPU's architecture exaggerates this issue as it requires significantly more parallel threads than physical execution units to perform efficiently. Executing more computations in parallel requires simultaneously maintaining more intermediate data and thus consumes more memory. The key idea of this paper is to make proper trade-offs between memory consumption and level of parallelism to control memory consumption while maximizing performance. For hierarchy construction, such trade-offs are facilitated by the partial breadth-first search (PBFS) order. Unlike the BFS and DFS, the PBFS allows the set of tree nodes being processed simultaneously to be explicitly controlled in each iteration, and thereby enables management of the memory consumption and level of parallelism. By carefully tuning the set of nodes being processed simultaneously, we can achieve a good balance between them. Note that the PBFS only affects the order of node processing and does not impact the quality of the resulting hierarchy.. We apply the PBFS order to two hierarchy construction algorithms. The first algorithm is a GPU kd-tree algorithm that achieves superior performance for a given memory bound. The algorithm uses PBFS to automatically adapt the level of parallelism based on available memory and thus allows the peak memory consumption to be controlled without swapping any data out of the GPU. On an NVIDIA GeForce GTX 280 GPU with 1 GB memory, we can construct kd-trees of scenes with up to several million triangles at interactive rates. The second algorithm is an out-of-core BVH construction algorithm on the GPU. Compared to kdtree construction, BVH construction has a relatively small memory overhead. It does not split triangles and does not need to dynamically allocate GPU memory. Consequentially, the primitive storage remains static throughout the construction and the final tree size can be bounded prior to construction. However, the memory consumption will still exceed the available GPU memory for very large scenes. We use PBFS to extend BVH construction to handle such scenes. At each PBFS iteration, all constructed nodes are dumped to the CPU memory or disk, and the GPU memory is freed for the next iteration's use. In this way, the algorithm is able to build trees that are too large to be stored in the GPU memory. Our algorithm can construct BVHs for scenes with up to 20 M triangles.. As far as we know, ours are the first GPU hierarchy construction algorithms that are designed with a memory bound in mind. Our methods can handle scenes nearly an order of magnitude larger than previous GPU methods. For small scenes that previous GPU methods can handle, our algorithm achieves similar construction performance. For large scenes, our method performs comparably to the stateof-the-art multicore CPU algorithms in terms of construction time while maintaining tree quality similar to high quality methods. In general, our methods scale well with respect to the amount of available memory, and hierarchy construction can be performed within user-specified memory bounds at a modest performance cost.. We will briefly review previous work relevant to fast spatial hierarchy construction in Section 2. In Section 3, we describe our memory-scalable kd-tree construction algorithm. Section 4 describes how to use the PBFS order to support out-of-core BVH construction on the GPU. Finally, we present results in Section 5. We have presented two GPU algorithms for constructing spatial hierarchies with controllable memory consumption, one for in-core kd-tree construction and the other for out-ofcore BVH construction. Both algorithms are based on the PBFS construction order, and can handle scenes several times larger than previous GPU methods. The construction time is comparable with the state-of-the-art multicore CPU methods and our tracing performance outperforms these methods.. The PBFS scheme provides an effective approach for balancing memory usage while exploiting the parallelism in general-purpose GPU computation. In the future, we would like to apply this scheme to other GPU algorithms in scientific computations and related applications. Although promising, our kd-tree algorithm still has some limitations-it does not control the final tree size. To cope with available memory less than the tree size, tree-size-controlling techniques as in [11] have to be incorporated into our PBFS scheme.. Data transfer between GPUs and CPUs consumes significant time in the out-of-core BVH construction. In this paper, we focus on using the PBFS scheme to reduce in-core peak memory requirement. Data transfer techniques, like host-mapped GPU memory, are orthogonal to our work. In the future, we would like to incorporate such techniques to improve the overall efficiency of construction.. The problem of memory consumption on GPUs is fundamentally different from its counterpart on single-core or multicore CPUs, because hundreds of thousands of threads are launched simultaneously on GPUs. The same problem should be present on other kinds of manycore platforms, such as Fermi and Larrabee. The PBFS Christian Lauterbach received the diploma in computer science from the University of Bremen, Germany and the PhD degree in computer science from the University of North Carolina at Chapel Hill under the advice of Dinesh Manocha. He is currently working at Google.. Dinesh Manocha received the PhD degree in computer science from the University of California at Berkeley 1992. He is currently the Phi Delta Theta/Mason Distinguished professor of computer science at the University of North Carolina at Chapel Hill. He has received Junior Faculty award, Alfred P. Sloan Fellowship, the US National Science Foundation (NSF) Career award, Office of Naval Research Young Investigator award, Honda Research Initiation award, Hettleman Prize for Scholarly Achievement. Along with his students, he has also received 12 best paper and panel awards at the leading conferences on graphics, geometric modeling, visualization, multimedia, and high-performance computing. He is a fellow of the ACM. He has published more than 280 papers in the leading conferences and journals on computer graphics, geometric computing, robotics, and scientific computing. He has also served as a program committee member and program chair for more than 75 conferences in these areas, and editorial boards of many leading journals. Some of the software systems related to collision detection, GPU-based algorithms, and geometric computing developed by his group have been downloaded by more than 100,000 users and are widely used in the industry. He has supervised 18 PhD dissertations. Several CPU-based algorithms have been proposed for fast construction of surface area heuristic (SAH) kd-trees [3] , [4] , which are commonly regarded to offer optimal ray tracing performance. Hunt et al. [5] approximated the SAH cost function to achieve subinteractive construction with minimal degradation in tree quality. Shevtsov et al. [6] developed an interactive parallel construction algorithm with a modest memory footprint on multicore CPUs. However, their tree suffers from considerable quality loss. Soupikov et al. [7] recently introduced approximate triangle clipping to compensate for this quality loss within a similar construction time. However, with both algorithms, tests show serious scalability issues at more than a few hundred threads. This makes them inappropriate for massively parallel architectures like GPUs.. Zhou et al. [1] proposed the first kd-tree construction that runs entirely on the GPU. The algorithm maximizes parallelism in the construction process and scales well to GPUs with hundreds of cores. High-quality trees can be constructed in rapid time. However, the high parallelism is achieved at the cost of excessive memory consumption. This results in a scene size limitation one order of magnitude smaller than previous methods. We use the node splitting schemes of [1] to maintain tree quality and construction performance but introduce novel parallelization and memory management techniques to bound the memory consumption.. BVH is an alternative spatial hierarchy for ray tracing that favors build time over tracing performance. Efficient construction has been demonstrated on both CPU and GPU [8] , [9] , [2] . Recent work also demonstrates ray tracing performance improvement by incorporating kd-tree-like features into BVHs [10] . The state-of-the-art GPU BVH construction algorithm [2] has a workflow resembling GPU kd-tree construction. We apply the PBFS construction order to the hybrid algorithm described in [2] for out-of-core BVH construction of very large scenes.. Wachter and Keller [11] tackled the memory problem of kd-trees from a different perspective. They terminated the splitting node when necessary to bound the final hierarchy size. Their approach puts the tree quality at risk and does not apply to hierarchies with naturally bounded size like BVH. In contrast, our work seeks to control the work memory requirement during construction while maintaining tree quality. Lauterbach et al. [12] reduced the memory consumption by using triangle strips. We still use triangle lists because they are more general and widely used in computer graphics. Paging systems like virtual memory can be used to handle large data within limited physical memory, effectively providing out-of-core support for any algorithm. Built-in virtual memory support can be expected in future GPUs, such as Larrabee [13] . A general paging-like out-of-core system also has been demonstrated on current hardware [14] . While paging systems can be very efficient when handling large input/output, paging intermediate work memory can result in significant performance overhead. Our PBFS aims to overcome this problem by bounding work memory within available physical memory. PBFS can also be used in combination with paging systems to handle out-of-core input/output more efficiently.. Memory-bounded situations have been investigated in traditional parallel programming research [15] . The main focus there is the trade-off between data replication and communication in distributed systems. Our work controls peak memory usage by limiting the creation of new data and does not involve data replication.

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


An adaptive finite element procedure for fully-coupled point contact elastohydrodynamic lubrication problems This paper presents an automatic locally adaptive finite element solver for the fullycoupled EHL point contact problems. The proposed algorithm uses a posteriori error estimation in the stress in order to control adaptivity in both the elasticity and the lubrication domains. The implementation is based on the fact that the solution of the linear elasticity equation exhibits large variations close to the the fluid domain on which the Reynolds equation is solved. Thus the local refinement in such region not only improves the accuracy of the elastic deformation solution significantly but also yield an improved accuracy in the pressure profile due to increase in the spatial resolution of fluid domain. Thus, the improved traction boundary conditions leads to even better approximation of the elastic deformation. Hence, a simple and an effective way to develop an adaptive procedure for the fully-coupled EHL problem is to apply the local refinement to the linear elasticity mesh. The proposed algorithm also seeks to improve the quality of refined meshes to ensure the best overall accuracy. It is shown that the adaptive procedure effectively refines the elements in the region(s) showing the largest local error in their solution, and reduces the overall error with optimal computational cost for a variety of EHL cases. Specifically, the computational cost of proposed adaptive algorithm is shown to be linear with respect to problem size as the number of refinement levels grows. The use of lubricants between the moving components of mechanical systems helps protect them from direct contact, and therefore reduces both friction and wear. This in turn leads to less energy consumption and increased life of the machine components respectively. To keep the moving components apart in the presence of a thin lubricant film, a pressure is generated in the film due to the relative motion of the components. Generally, for non-conforming contacts, the pressure generated is very high, which causes a significant elastic deformation in the contact surfaces and hence defines a new shape of the lubricant film. Such a class of problem is known as elastohydrodynamic lubrication (EHL) [1, 2, 13, 18, 42, 43] .. The shape of the lubricant film depends upon the geometry of the contacts and the resultant elastic deformation of the contacting surfaces. A most commonly used method to calculate the elastic deformation of the surfaces is based upon evaluation of an elastic deformation integral [13, 19, 29, 42, 43] which is obtained by an analytical solution of the linear elasticity equation on a semi-infinite domain. A number of efficient numerical techniques have been developed over the past few decades using this half-space approach, for example the multilevel multi-integration (MLMI) method [9] . Historically, the most common approaches for discretizing the lubrication equation have been based on finite difference schemes [17, 42] . These methods limit the discretization process to regular structured rectangular meshes using low order approximations, and have been combined effectively with the use of multigrid method [29] . Typically, these difference schemes are loosely coupled with the elastic deformation equation, which allows the efficient combination of multigrid and MLMI [42, 43] , but with a slowly converging outer iteration for heavily-loaded cases.. An alternative solution technique is the fully-coupled approach, which consists of solving the discretized elasticity and lubrication equations simultaneously, see for example [25, 33, 34] , with the goal of obtaining a faster convergence rate for the iterative solution. These examples are based on the half-space approach for the elastic deflection. The drawback of this approach is that it uses the pressure from all points in the domain to calculate the deflection at each point, which makes the resulting linearized system matrix dense. Furthermore, for heavy loads, the Jacobian matrix becomes almost singular, which makes it hard to reach the solution. A "differential deflection method" was introduced by Evans and Hughes [15, 23, 24, 26] . The advantage of this method is that it uses information from comparatively fewer points in the domain to calculate the elastic deflection at each point. In other words the influence of pressure acting at a point is reduced to a limited locality of that point. Therefore this approach results in a less dense matrix compared to the traditional half-space approach for elastic deflection.. Habchi et al. [20] [21] [22] also used a fully-coupled approach to solve the EHL problems. This technique is different however since it replaced the half-space solution method with the direct finite element approximation of the linear elasticity equation on a finite contact domain. The resultant system of discrete equations is therefore very large but is sparse. The author used a sparse direct solver to solve the linearized system at each Newton iteration. Sparse direct solvers are very efficient for small systems but as the resolution and/or the dimension of the problem increases their performance deteriorates and a large amount of memory is required. Recently Ahmed et al. [2, 3] introduced an efficient preconditioned iterative method for such large and highly sparse fully-coupled systems. This solution method leads to substantial savings in memory and time. Most importantly, both the memory and the time growth, with respect to problem size, is shown to be linear. For circular point contact cases, the authors used manually-generated 3D meshes for the linear elasticity approximation, which were based on a large number of experiments in order to obtain a satisfactory EHL solution at the lowest cost as possible. Note that, in the selection of those meshes, smaller mesh spacings were used only in the contact region where the pressure solution exhibits the largest variation [17, 28] . Similarly, the solution of the linear elasticity equation also exhibits large variations close to the contact region. Hence, the mesh elements closest to the contact region are shown to have the largest errors both in the pressure and the linear elasticity solutions [1] .. In this paper, the development of an automatic locally adaptive finite element solution scheme for the fully-coupled EHL point contact problems is discussed, which refines the mesh in the contact as well as the elasticity domain based upon local error estimates for the stress. This proposed algorithm therefore combines the several efficiency techniques [2, 38, 48, 49 ] to obtain performance results that are comparable to those of multigrid and MLMI [42, 43] , but with the side effect of predicting the interior deformation and stresses for the contacting elements. It will be shown that the proposed procedure effectively refines the elements in the region(s) showing the largest error in their solution, and reduces the overall error with optimal computational cost.. Specifically, the growth in the computational cost of the whole adaptive solution process is shown to be linear with respect to problem size as the number of adaptive levels grows. In this paper, an adaptive finite element solution to a fully-coupled EHL problem has been discussed. A ZZ-error estimator has been used to find the local and global approximations to the stress errors. These error estimations have been used to mark elements for refinement which were exhibiting larger errors than a prescribed tolerance. The local refinement of the meshes was carried out using the algorithm that is described in Section 3. The accuracy appraisal of all three variants of the solver were made using two different initial meshes against the use of uniformly refined meshes (both optimized and non optimized) and against the hand-tuned meshes [3] . The results showed that both the variant 2 and the variant 3 perform best in terms of accuracy. In other words, variant 2 & 3 have close resemblance with an hr-adaptive algorithm (at least at the final level) resulting in superior results. Although optimization of the meshes results in a loss of the nested grid property, the unchanged surface meshes allowed us to generate a high quality initial guess (by solving a linear elasticity problem with the interpolated boundary condition) to reduce the computational work at the subsequent levels.. Moreover, all three variants of the solver show essentially linear growth in their computational time. Significantly, it is shown that an approximate solve at each of the intermediate levels leads. to a slower linear growth in the computational time.. Furthermore, due to additional time required for the optimization process of meshes, variants 2 & 3 require a slightly longer time than the variant 1 (for a fixed problem size). However, both the variants 2 & 3 of adaptive algorithm are comparatively better than the variant 1 in reducing the overall error at a fixed computational cost. Indeed, it is demonstrated that the performance of proposed adaptive algorithm is maintained for heavily-loaded EHL cases, with the optimality of the preconditioned iterative solver [2] being preserved despite a slight increase in the solution times.. Perhaps the most important observation is that our computational experiments clearly demonstrate that using the error in the stress to control the mesh adaptivity is appropriate for fullycoupled EHL problems. The resulting adaptation of the surface mesh in the contact region allows the pressure profile to be captured accurately and with many fewer degrees of freedom than is possible with a conventional finite difference scheme. Moreover, since stress information can not be obtained using a surface integral solver based upon a half-space approximation, this adaptive approach can only be applied when a finite element approximation to the linear elasticity problem is used.. The key contributions of this work may be summarised as follows. We have introduced a new adaptive procedure for the fully-coupled EHL problem, based solely upon a local error estimate for the stress due to the elastic deformation, and demonstrated that this provides a robust mechanism for adapting the mesh in both the elasticity and the Reynolds discretizations. We have developed an adaptive strategy that combines h-refinement and r-refinement (node movement) in a manner that allows locally optimal mesh refinement. The combination of local adaptivity and our novel multigrid-based preconditioner, for the inner iterations of the Newton-Krylov solver, allow this fully-coupled EHL problem to be solved with linear time complexity for the first time:. hence providing the first demonstration of the competitiveness of the fully-coupled approach with less general, but also optimal, half-space approximations such as [42] . Finally, and importantly, we have shown that the proposed technique is robust for heavily-loaded cases, which are by far the most computationally challenging.

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


Development

and

validation

of

an

epitope

prediction

tool

for

swine

(PigMatrix)

based

on

the

pocket

profile

method

Background:

T

cell

epitope

prediction

tools

and

associated

vaccine

design

algorithms

have

accelerated

the

development

of

vaccines

for

humans.

Predictive

tools

for

swine

and

other

food

animals

are

not

as

well

developed,

primarily

because

the

data

required

to

develop

the

tools

are

lacking.

Here,

we

overcome

a

lack

of

T

cell

epitope

data

to

construct

swine

epitope

predictors

by

systematically

leveraging

available

human

information.

Applying

the

"pocket

profile

method",

we

use

sequence

and

structural

similarities

in

the

binding

pockets

of

human

and

swine

major

histocompatibility

complex

proteins

to

infer

Swine

Leukocyte

Antigen

(SLA)

peptide

binding

preferences.

We

developed

epitope-prediction

matrices

(PigMatrices),

for

three

SLA

class

I

alleles

and

and

one

class

II

allele

based

on

the

binding

preferences

of

the

best-matched

Human

Leukocyte

Antigen

(HLA)

pocket

for

each

SLA

pocket.

The

contact

residues

involved

in

the

binding

pockets

were

defined

for

class

I

based

on

crystal

structures

of

either

SLA

(SLA-specific

contacts,

Ssc)

or

HLA

supertype

alleles

(HLA

contacts,

Hc);

for

class

II,

only

Hc

was

possible.

Different

substitution

matrices

were

evaluated

(PAM

and

BLOSUM)

for

scoring

pocket

similarity

and

identifying

the

best

human

match.

The

accuracy

of

the

PigMatrices

was

compared

to

available

online

swine

epitope

prediction

tools

such

as

PickPocket

and

NetMHCpan.Results:

PigMatrices

that

used

Ssc

to

define

the

pocket

sequences

and

to

score

pocket

similarity

demonstrated

the

best

predictive

performance

and

were

able

to

accurately

separate

binders

from

random

peptides.

For

and

PigMatrix

achieved

area

under

the

receiver

operating

characteristic

curves

(AUC)

of

and

respectively,

which

were

equivalent

or

better

than

PickPocket

and

and

NetMHCpan

version

and

and

version

and

In

addition,

we

developed

the

first

predictive

SLA

class

II

matrix,

obtaining

an

AUC

of

for

existing

epitopes.

Notably,

PigMatrix

achieved

this

level

of

predictive

power

without

training

on

SLA

binding

data.

Conclusion:

Overall,

the

pocket

profile

method

combined

with

binding

preferences

from

HLA

binding

data

shows

significant

promise

for

developing

T

cell

epitope

prediction

tools

for

pigs.

When

combined

with

existing

vaccine

design

algorithms,

PigMatrix

will

be

useful

for

developing

genome-derived

vaccines

for

a

range

of

pig

pathogens

for

which

no

effective

vaccines

currently

exist

(e.g.

porcine

reproductive

and

respiratory

syndrome,

influenza

and

porcine

epidemic

diarrhea).

Immunoinformatics

tools

have

accelerated

the

identification

of

epitopes

and

design

of

human

vaccines.

However,

comparable

tools

have

not

been

applied

extensively

to

pigs.

During

the

last

two

decades,

swine

T

cell

epitope

discovery

has

been

based

on

experimental

studies

of

numerous

overlapping

peptides

While

these

studies

are

essential

for

validating

T

cell

epitope

prediction

tools,

they

can

be

expensive

and

time

consuming.

To

reduce

experimental

effort

and

expedite

the

process,

algorithms

developed

for

human

T

cell

epitope

prediction

have

also

been

used

to

identify

porcine

epitopes

However,

the

substitution

of

HLA

predictions

for

SLA

predictions

may

not

reflect

the

fine

specificity

of

SLA

binding,

which

limits

the

efficacy

of

this

oversimplified

approach.

To

overcome

this,

we

have

developed

PigMatrix,

a

simple

yet

effective

method

that

leverages

available

data

(SLA-binding

peptides,

SLA

structures

and

HLA

binding

data)

and

pocket

profiles

already

constructed

for

HLA-based

epitope

prediction

in

EpiMatrix

to

predict

potential

T

cell

epitopes

for

SLA

class

I

and

II

alleles.

Using

the

pocket

profile

method

and

the

concept

that

pockets

that

have

similar

amino

acids

will

share

similar

binding

preferences,

we

built

and

validated

matrices

that

were

able

to

separate

SLA-restricted

peptides

from

random

peptides

and

non-binders.

Fig.

Matrix

performance

comparison.

AUCs

of

the

matrices

built

for

SLA

class

I

and

II

alleles

are

shown.

The

highest

AUC

for

each

method

is

shown

above

the

bars.

For

AUC

of

Ssc

ModB

a

matrix

with

a

pocket

B

profile

different

than

the

best

human

match,

is

shown

in

a

dashed

rectangle

to

illustrate

the

impact

of

pocket

B.

If

one

or

more

matrices

for

the

same

approach

(Ssc

or

Hc)

have

equal

AUC,

it

is

indicated

with

Human

pan-specific

tools

based

on

the

pocket

profile

method

have

been

described

for

prediction

of

class

I

(PickPocket)

and

class

II

T

cell

epitopes

(TEPITOPEpan)

These

methods

defined

the

amino

acids

in

the

pockets

from

HLA

crystal

structures.

Similarly,

we

defined

SLA-specific

contacts

(Ssc)

from

two

crystal

structures

available

for

Additionally,

we

extrapolated

the

pocket

residues

from

crystal

structures

of

HLA

class

I

and

II

crystal

structures

(Hc).

Both

approaches

assume

for

a

given

pocket

that

all

contact

residues

are

conserved

across

all

class-specific

MHC

molecules.

However,

because

there

are

differences

in

the

pocket

residues

between

MHC

alleles

and

even

between

the

same

allele

structures

depending

on

the

ligand

this

simplification

is

a

limitation

of

the

peptide:MHC

modeling

approach.

Even

so,

it

is

a

reasonable

approximation

when

structural

information

is

limited.

For

class

I,

differences

in

the

pocket

residues

using

the

Hc

and

the

Ssc

approaches

were

noticeable

and

impacted

the

subsequent

selection

of

the

best

human

match

to

build

the

prediction

matrices.

Matrices

based

on

pockets

defined

from

SLA

structure-specific

contacts

performed

better

than

HLA-derived

pockets.

While

a

definition

of

the

contact

residues

based

on

several

HLA

structures

account

for

the

intra-and

inter-allelic

variability

of

binding

pockets,

it

also

dilutes

the

importance

of

key

residues

in

the

peptide:MHC

interaction.

We

speculate

that

more

allele-specific

pockets

could

potentially

improve

the

selection

of

the

best

human

match

and

therefore

the

predictions.

Selection

might

be

also

improved

by

weighting

the

similarity

score

by

conservation

of

key

contact

residues..

PickPocket

and

TEPITOPEpan

use

a

method

based

on

to

calculate

a

weighted

score

of

specificity

to

define

the

most

similar

HLA-derived

pocket.

For

Pig-Matrix,

in

addition

to

we

used

which

is

considered

equivalent

to

for

comparison

of

distantly

related

proteins

to

calculate

pocket

similarity.

We

also

included

and

which

are

both

designed

to

score

similarity

between

closely

related

protein

sequences.

The

SLA

matrices

with

highest

AUC

were

based

on

using

both

Hc

and

Ssc,

with

only

one

exception.

If

we

consider

the

pocket

contact

residues

as

short

pseudo-sequences,

the

better

performance

of

matrices

might

be

explained

because

low-numbered

PAM

matrices

are

more

efficient

for

searches

involving

short

sequences.

on

the

other

hand,

performs

better

to

identify

distant

homologs

using

longer

sequences.

like

is

used

for

closely

related

sequences;

however,

it

is

not

recommended

for

short

peptides

and

unsurprisingly

did

not

perform

as

well

as

in

these

studies..

Predictive

methods

for

porcine

T-cell

epitopes

are

limited,

and

existed

previously

for

SLA

class

II..

PigMatrix

is

the

first

tool

to

make

binding

predictions

for

an

SLA-DR

allele.

Class

II

predictions

were

limited

to

the

Hc

method

because

no

SLA-DR

molecule

has

been

crystallized.

Since

SLA-DR-specific

binding

data

are

scarce,

predictions

require

further

prospective

validation.

While

it

is

not

possible

at

this

time

to

benchmark

the

SLA-DR

matrix

against

other

predictors,

a

comparison

can

be

made

for

the

SLA

class

I

matrices

developed

here.

NetMHCpan

has

been

used

for

SLA

binding

predictions.

PickPocket,

which

is

also

based

on

the

pocket

profile

method,

has

been

described

primarily

for

HLA

class

I

but

predictions

are

also

available

for

SLA

alleles.

In

this

study,

for

an

existing

set

of

published

peptides,

PigMatrix

performed

equally

or

better

than

two

versions

of

NetMHCpan

and

PickPocket

for

and

While

PigMatrix

and

PickPocket

derive

SLA

binding

preferences

from

HLA

binding

data,

NetMHCpan

artificial

neural

networks

are

trained

using

information

derived

from

available

binding

data

as

well

as

peptide

sequences

and

MHC

sequence

information

It

was

previously

demonstrated

that

in

a

scenario

where

the

quantitative

binding

data

were

limited

for

human

and

non-human

MHC

alleles,

PickPocket

performed

better

than

NetMHCpan

This

is

also

evident

when

NetMHCpan

results

are

compared

to

NetMHCpan

predictions.

NetMHCpan

was

trained

with

a

limited

set

of

SLA

binders

and

its

predictions

were

equivalent

to

random

selection

(average

AUC

Version

on

the

other

hand,

was

trained

with

more

data

and

its

performance

improved

for

the

alleles

we

evaluated

(average

AUC

Conversely,

PigMatrix

was

not

trained

with

SLA-specific

binding

data

and

performed

similarly

or

better

than

NetMHCpan

predictions

for

two

of

three

class

I

alleles

we

tested.

Moreover,

because

the

number

of

published

peptides

is

limited,

we

were

not

able

to

compile

a

test

dataset

of

peptides

known

to

be

different

from

the

training

set

used

by

NetMHCpan

Hence,

it

is

possible

that

NetMHCpan

performance

was

overestimated..

For

PickPocket

and

NetMHCpan

outperformed

PigMatrix.

Upon

closer

analysis,

these

results

provided

an

example

of

how

PigMatrix

could

be

improved.

We

were

able

to

build

a

better

performing

model

by

modifying

pocket

B

in

the

matrix

constructed

using

This

might

be

explained

by

the

role

of

the

amino

acid

in

position

two

of

the

peptide

as

a

binding

anchor

and

its

specific

interaction

with

this

pocket.

It

is

also

worth

noting

that

the

HLA

pocket

library

we

used

was

limited

to

class

I

and

eight

class

II

supertypes

alleles

available

in

EpiMatrix.

It

is

possible

that

pocket

sequences

from

other

HLA

alleles

and

their

profiles

are

more

similar

to

SLA

pockets.

Therefore,

if

the

number

of

HLA

alleles

in

the

library

is

increased,

we

might

find

better

human

matches

for

SLA

pockets,

which

could

potentially

improve

matrix

performance..

So

as

to

illustrate

the

PigMatrix

approach,

we

built

initially

matrices

for

only

three

SLA

class

I

alleles

and

one

class

II

SLA

allele

for

which

quantitative

binding

data

were

available.

These

alleles

are

commonly

expressed

in

different

porcine

breeds

and

cell

lines

for

in

vitro

culture

However,

like

HLA,

SLA

diversity

is

considerable.

These

results

demonstrate

the

potential

of

the

approach

to

be

extended

to

SLA

alleles

with

limited

or

nonexistent

epitope

binding

data.

Thus,

future

versions

of

PigMatrix

will

include

a

more

comprehensive

and

representative

set

of

matrices

for

SLA

alleles

expressed

in

outbred

porcine

populations.

Moreover,

prospective

in

vitro

and

in

vivo

evaluation

of

PigMatrix

predictions

will

help

to

refine

the

matrices..

We

developed

the

PigMatrix

tool

with

the

intent

to

integrate

it

into

the

iVAX

toolkit,

which

is

a

comprehensive

set

of

tools

for

computational

vaccine

design

that

includes

EpiMatrix,

Conservatrix,

ClustiMer,

EpiAssembler,

Janus-Matrix,

and

VaccineCAD

When

the

PigMatrices

are

used

to

substitute

for

HLA

matrices

(EpiMatrix)

in

iVAX,

all

of

the

existing

suite

of

iVAX

vaccine

design

tools

can

be

used

with

the

SLA

epitope

predictions,

which

makes

it

possible

to

envision

accelerated

development

of

novel

T

cell

epitope-based

vaccines

or

whole

subunit

vaccines

optimized

for

epitope

content

that

protect

against

infectious

disease

in

swine.

The

interaction

of

Major

Histocompatibility

Complex

(MHC)

proteins

with

peptides

derived

from

protein

antigens

plays

a

key

role

in

the

adaptive

immune

response

mediated

by

T

cells.

The

MHC:peptide

complex

presented

on

the

surface

of

a

cell

is

recognized

by

the

T

cell

receptor

(TCR),

which

activates

the

T

cell

and

drives

the

immune

response.

There

are

two

classes

of

MHC

molecules:

MHC

class

I

presents

peptides

of

intracellular

origin

to

T

cells

(cytotoxic

T

cells,

or

CTL)

and

MHC

class

II

presents

peptides

of

extracellular

origin

to

T

cells

(T-helper

cells,

or

Th).

Both

classes

of

molecules

have

similar

tertiary

structure.

Class

I

molecules

have

a

transmembrane

(α)

chain

noncovalently

associated

with

β

-microglobulin

where

the

α

and

α

domains

form

the

peptide-binding

groove;

class

II

molecules

have

two

transmembrane

chains

(α

and

β)

where

the

α

and

β

domains

form

the

peptide-binding

groove.

The

MHC

class

I

binding

groove

is

closed,

which

restricts

the

length

of

bound

peptides

to

residues;

the

MHC

class

II

binding

groove

on

the

other

hand,

is

open,

and

peptides

can

extend

beyond

the

ends

of

the

groove,

allowing

binding

of

longer

and

more

flexible

peptides

of

variable

lengths

(typically

amino

acids)

The

tertiary

structure

of

MHC

molecules

is

relatively

conserved,

even

across

species.

For

example,

crystallographic

studies

have

shown

similarity

between

Human

Leukocyte

Antigen

(HLA;

human

MHC)

and

Swine

Leukocyte

Antigen

(SLA;

swine

MHC)

molecules

The

class

I

allele

has

been

crystallized

in

complex

with

peptides

derived

from

swine-origin

influenza

A

virus

(S-OIV)

and

Ebola

virus.

A

structural

comparison

revealed

that

the

SLA

class

I

molecule,

contains

six

pockets

in

its

binding

groove,

similar

to

HLA

class

I

molecules.

The

root-mean-squared

deviation

(RMSD)

for

all

of

the

Cα

atoms

in

and

which

has

the

highest

identity

with

was

Å

indicating

a

similar

arrangement

of

their

backbones.

Furthermore,

three

out

of

influenza

binders

were

identical

to

previously

defined

peptides

presented

by

For

SLA

class

II,

no

crystal

structures

are

available,

but

amino

acid

SLA-DR

sequences

are

highly

similar

to

their

human

counterparts.

For

example,

the

amino

acid

sequences

of

and

are

identical..

Due

to

the

importance

of

peptide

binding

to

MHC

molecules

in

the

immune

response,

human

T

cell

epitope

prediction

tools

have

been

developed

based

on

a

range

of

approaches

and

are

widely

used

in

vaccine

development

and

experimental

immunology

The

availability

of

a

large

and

expanding

database

of

validated

MHC

ligands

has

contributed

to

the

development

of

more

accurate

algorithms.

Epitope

predictions

using

these

tools

reduce

the

time

and

effort

required

to

identify

T

cell

epitopes

The

number

of

epitope

prediction

tools

is

more

limited

for

pigs

due

to

the

paucity

of

experimental

data

available.

To

overcome

the

lack

of

quantitative

measurements

of

MHC

interaction

for

a

large

number

of

HLA

alleles,

'pan-specific'

methods

have

been

implemented

for

prediction

of

T

cell

epitopes

that

bind

to

MHC

for

which

experimental

data

are

limited

or

not

available.

Pan-specific

methods

use

experimental

binding

data

and

amino

acid

sequences

of

multiple

MHC

alleles

to

infer

binding

preferences

to

uncharacterized

MHC

molecules.

These

methods

have

been

used

for

development

of

prediction

tools

for

MHC

class

I

and

II

alleles

but

only

NetMHCpan

has

been

used

for

prediction

of

SLA

class

I-restricted

peptides

This

method

is

based

on

artificial

neural

networks

(ANN)

trained

using

as

input

a

pseudosequence

composed

of

the

polymorphic

residues

in

the

binding

groove

of

a

given

MHC,

a

peptide

sequence

and

the

experimental

affinity

data.

To

our

knowledge,

there

are

no

in

silico

tools

that

are

available

for

SLA

class

II..

Sturniolo

et

al.

first

described

a

method

for

using

existing

data

to

develop

new

epitope

predictors,

the

pocket

profile

method,

in

It

has

been

used

to

develop

pan-specific

methods

for

predicting

binding

of

peptides

to

HLA

class

I

and

II

alleles

The

approach

depends

on

the

identification

of

certain

polymorphic

regions

within

HLA

molecules

that

are

known

to

be

the

areas

of

contact

between

peptides

and

the

binding

groove

of

HLA

Contact

residues

from

the

HLA

molecule

that

bind

the

R

group

(side

chain)

of

a

specific

amino

acid

within

a

linear

peptide

can

be

considered

to

form

a

pocket

for

that

R

group.

Thus,

each

'pocket'

can

also

be

described

in

terms

of

its

amino

acid

binding

preferences

('pocket

profile').

The

pocket

profiles

are

nearly

independent

of

the

remaining

binding

groove.

So

this

method

assumes

that

two

MHC

alleles

with

identical

pocket

residues

will

have

the

same

pocket

profile.

Therefore,

given

sufficient

information

about

the

contact

residues

of

the

set

of

pockets

in

the

binding

groove

of

an

MHC

and

experimentally

determined

pocket

profiles,

it

is

possible

to

compose

predictive

matrices

in

silico.

The

method

was

originally

applied

to

develop

TEPITOPE,

an

algorithm

for

prediction

of

peptide

ligands

to

HLA

class

II

alleles

with

known

pocket

residues

and

then

extended

to

any

HLA-DR

molecules

with

similar

pockets

(TEPITOPEpan)

A

similar

method

has

also

been

used

in

the

PickPocket

algorithm

for

MHC

class

I

prediction

Whereas

TEPITO-PEpan

uses

pocket

profiles

from

TEPITOPE,

PickPocket

generates

binding

preferences

using

position-specific

scoring

matrices

(PSSMs)

from

binding

data

directly.

Although

no

publications

exist

using

these

algorithms

for

SLA

binding

predictions,

SLA

alleles

are

available

for

use

in

the

PickPocket

server

(www.cbs.dtu.dk/services/Pick-Pocket/)..

EpiMatrix

is

a

matrix-based

algorithm

that

uses

the

pocket

profile

method

to

predict

potential

HLA

class

I

and

II

T

cell

epitopes.

The

first

version

of

this

algorithm

was

developed

in

and

newer

versions

have

been

extensively

validated

in

vitro

in

HLA

binding

assay

and

human

T

cell

assays

and

in

animal

studies

using

HLA

transgenic

mouse

models

For

common

class

II

alleles,

EpiMatrix

appears

to

predict

more

accurately

than

many

available

epitope-mapping

algorithms

Comparative

performance

for

EpiMatrix

class

I

predictions

has

not

been

published;

however,

the

tools

have

been

successfully

applied

to

identify

class

I-restricted

T

cell

epitopes

in

human

pathogens

The

pocket

profile

method

was

used

to

develop

a

matrix

for

a

bovine

MHC

class

I

allele

and

in

the

early

this

method

was

also

used

to

derive

SLA

class

II

prediction

matrices

from

EpiMatrix,

but

this

work

was

not

published..

This

paper

describes

the

development

and

retrospective

validation

of

predictive

matrices

to

map

T

cell

epitopes

for

SLA

class

I

alleles

and

a

class

II

allele.

"PigMatrix"

matrices

are

built

based

on

the

pocket

profile

method

using

EpiMatrix

pocket

profiles

for

HLA

epitope

prediction.

While

these

alleles

represent

a

small

subset

of

commonly

expressed

alleles

in

pigs

they

were

selected

for

their

available

peptide

binding

data

As

before,

we

assumed

that

predictive

matrices

developed

for

HLA

alleles

should

function

as

reasonable

proxies

for

the

prediction

of

ligands

to

SLA

molecules

with

similar

pocket

profiles.

Thus,

we

developed

'composite

matrices'

by

selecting

the

most

similar

HLA

pocket

(best

human

match)

for

each

SLA

pocket,

and

built

matrices

composed

of

the

corresponding

HLA

binding

preferences

Fig.

Two

methods

were

used

to

define

the

pocket

contact

residues

considering

different

scenarios

of

availability

of

SLA

crystal

structures.

In

the

first

scenario,

SLA

crystal

structures

were

available,

so

pockets

were

defined

from

these

structures.

In

the

second,

no

SLA

crystal

structures

were

available;

therefore,

contact

residues

were

selected

based

on

crystal

structures

of

HLA.

We

also

tested

different

substitution

matrices

(PAM

and

BLO-SUM)

to

score

pocket

similarity

to

define

the

best

human

match.

PigMatrix

was

benchmarked

against

existing

SLA

prediction

tools

for

class

I

alleles.

Benchmarking

against

other

SLA

class

II

predictors

was

not

possible

as

no

other

prediction

algorithms

are

available.

The

results

demonstrate

the

potential

of

this

approach

to

develop

matrices

to

make

accurate

predictions

for

both

SLA

class

I

and

II

alleles

for

which

experimental

binding

data

are

limited

or

even

non-existent.

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


Dynamics of the urban lightscape The manifest importance of cities and the advent of novel data about them are stimulating interest in both basic and applied "urban science" (Bettencourt et al., 2007 [4]; Bettencourt, 2013 [3]). A central task in this emerging field is to document and understand the "pulse of the city" in its diverse manifestations (e.g., in mobility, energy use, communications, economics) both to define the normal state against which anomalies can be judged and to understand how macroscopic city observables emerge from the aggregate behavior of many individuals (Louail, 2013 [9]; Ferreira et al., 2013 [6]). Here we quantify the dynamics of an urban lightscape through the novel modality of persistent synoptic observations from an urban vantage point. Established astronomical techniques are applied to visible light images captured at 0.1 Hz to extract and analyze the light curves of 4147 sources in an urban scene over a period of 3 weeks. We find that both residential and commercial sources in our scene exhibit recurring aggregate patterns, while the individual sources decorrelate by an average of one hour after only one night. These highly granular, stand-off observations of aggregate human behavior -which do not require surveys, in situ monitors, or other intrusive methodologies -have a direct relationship to average and dynamic energy usage, lighting technology, and the impacts of light pollution. They may also be used indirectly to address questions in urban operations as well as behavioral and health science. Our methodology can be extended to other remote sensing modalities and, when combined with correlative data, can yield new insights into cities and their inhabitants. A nighttime image of the Manhattan skyline (see Fig. 1a ) contains thousands of artificial light sources, including windows, buildings, streets, vehicles, and billboards. While virtually all of these sources are stationary in position, many are dynamic in time, changing in color and intensity throughout the night. The origins and timescales of variability are diverse, ranging from the 30 Hz flickers of a display screen to the few-Hz flickering induced by starting motors to discontinuities as shades are drawn or lights are turned on and off. Changing atmospheric conditions (for example the motions of clouds across the sky) also contribute variability. At low resolution, window lights in an urban night scene are analogous to variable stars on the night sky and so the techniques of observational astronomy Contents lists available at ScienceDirect journal homepage: www.elsevier.com/locate/infosys can be applied to analyze the urban lightscape. In this paper, we demonstrate the utility of that approach in providing a new measure of urban activity and in revealing the dynamics of individual light sources.. While satellite observations of urban lights have been used to study city morphology, development, land use [12] , energy consumption [14] , and night lights [7] , they are necessarily episodic and cannot probe dynamics on timescales shorter than a week. Observations from urban vantage points offer persistent coverage and an unchanging perspective, together with easy and low cost operations. Such images have been acquired for aesthetic purposes [13] but have not been analyzed for the scientific study of cities, with impacts from energy use and efficiency [8] to sleep patterns (which are a significant public health concern; see for example, [1, 11] ). in situ measurements with a comparable coverage, while perhaps more accurate, would be intrusive and would further entail the cost and operational difficulties of a large-scale sensor deployment.. In this work, visible light images were acquired from a rooftop in downtown Brooklyn, the first site of the Urban Observatory facility created by New York University's Center for Urban Science þ Progress (CUSP). The northern view across the East River covers the east side of lower and midtown Manhattan and offers a diversity of features, including the tops of the Empire State Building (at a distance of 6.1 km) and the Chrysler Building, major and minor building lights, and street and river lights. There are roughly 20,000 residential and commercial windows in the scene, and we estimate that some 100,000 people reside in the 4.4 km 2 covered by our images.. In Section 2 we describe our data acquisition and analysis pipeline which draws heavily from astronomical image processing and time series procedures, while in Section 3 we identify patterns in the light variability and the implications for aggregate versus individual behavior. We conclude in Section 4. We have described a fundamentally new methodology for quantifying the "pulse" of a city via time-dependent changes in the urban lightscape. Our use of astronomical techniques to analyze the dynamics of city lights applies physics to the new realm of urban science and human behavior, complementing the use of statistical physics for scaling and modeling of urban growth [10, 2] . The latter studies use existing data sources and examine slow phenomena (e.g., urban sprawl) while our work focuses on rapidly varying urban signals.. Furthermore, we have demonstrated that an astronomy-inspired analysis of persistent synoptic imagery of an urban scene leads to insights into aggregate light activity. In particular, we have discovered a repeatable pattern of behavior characterized by the aggregate on/ off transition times of lights in the scene which recurs night-to-night and week-to-week. Despite the strong repeatability of that pattern, the individual sources which comprise it do not strictly repeat night-to-night or weekto-week. Specifically, a full 50% of our sample decorrelates by more than an hour after only one night. This decorrelation does not significantly increase when comparing nights separated by 2, 3, or 7 days. The same qualitative behavior is seen for both residential and commercial light sources and for both weekdays and weekends.. Interestingly, however, the individual source dynamics of our urban lights sample is more complex than a simple random draw from the aggregate parent distribution of off transitions which repeats night-to-night. We find that the distribution of nightly correlations in our sample of residential sources is broader than that expected from an independent and identically distributed draw from the repeating pattern.. Our results represent the regularity and variability of one component of the pulse of the city. A much more random, but temporally correlated, individual behavior has been found to underlie that regularity. The method we have described in this paper represents a first step in a new approach to studying urban functioning. Correlations of the kind of data we have presented with such variables as demographics, energy use, season, income, and meteorological conditions are of clear interest and will be the focus of our future work. Disturbances in these patterns by light pollution and noise pollution will give insights into the public health affects on the circadian rhythms of city dwellers while building level aggregation will inform measurements of occupancy (a strong correlate for energy consumption). Further, beyond basic urban science, applications include emergency response, environmental monitoring, and urban operations, and the CUSP Urban Observatory will push this methodology to other observational modalities including broadband infrared and hyperspectral observations. A typical light curve is shown in Fig. 1b . Small highfrequency noise fluctuations are interrupted by clear discontinuities (transitions) that signal activity. While we have not attempted to analyze the causes of any particular transition, we note that large discontinuities could be caused by turning a light on/off or by opening/closing a shade or drape, while small discontinuities might be associated with a small light (e. g., desk lamp) or a translucent curtain or an interior room light. As described in Section 2, transitions where the intensity decreases (increases) are referred to as "off" ("on") transitions, and we denote by t off the time of that "off" each night having the largest decrease in average intensity before and after (the orange vertical line in Fig. 1b ; similarly the largest "on" occurs at t on ). This transition detection drastically reduces the data volume from several TB of images to a few transition times per night for each source observed. The aggregate of these transitions over many nights is one dimension of the pulse of the city. This is evident in Fig. 4 which shows four approximately repeating patterns obtained from the on and off transitions for our complete sample. Given the very different use cases for commercial versus residential buildings in urban environments and the anticipated difference in weekdays versus weekends, residential/commercial and weekday/weekend subdivisions of our sample are discussed below. The images analyzed in this paper were acquired with a Point Grey Flea 3 8.8 megapixel camera (equipped with a 25 mm lens) every 10 s between 19:00 and 05:00 h on each of the 22 nights between October 26 and November 16, 2013. Daylight Saving Time ended during this period on November 3rd. Upon acquisition, each image ( $ 25 MB in three-color raw format) was timestamped, encrypted, and Vertical green (red) lines indicate on (off) transitions. The off transition corresponding to the largest change in average intensity, as measured before and after the transition (the t off time), is shown in orange. (For interpretation of the references to color in this figure caption, the reader is referred to the web version of this paper.) stored for analysis. A total of 70,560 images were acquired (equipment failure terminated observations at 00:00 on five nights), yielding a total data volume of $ 4.5 TB.. As we describe in detail below, images were processed in a two-stage pipeline: data reduction and data analysis. Our data reduction pipeline to extract light curves for each source begins by registering each image to a reference image to account for camera vibration and pointing drift. With good conditions frame-to-frame offsets were a few pixels (vertical drifts were of order 10 pixels over the 22 days). Registration failed if the shift exceeded 20 pixels in either direction and the correlation was not sufficiently close to unity, which could be caused by poor visibility due to weather or excessive vibration. Some 4147 rectangular window apertures were defined manually on a stacked image, comprising $ 20% of the total number visible ( $ 40% of the near scene and $ 20% of the far scene). The intensity of each source within each frame was calculated by averaging the intensity of the pixels within the corresponding aperture in three colors (RGB). We refer to the time history of a source's intensity as its "light curve". The light curves were assembled with the time stamps of the individual images. Their accuracy is significantly higher than the 10 s cadence of our observations making that a negligible source of uncertainty.. The data analysis stage identifies on/off transitions in each light curve for each night and then from those, determines t on=off , the on/off transition with the largest change in average intensity as measured before and after. For each light curve and for each night our algorithm first convolves the light intensity with a Gaussian filter of standard deviation 5 min, thereby reducing small-scale noise. On/off transitions are identified as peaks in the derivative of the convolved light curve. The situation is analogous to identifying edges in noisy images, so we use a variant of the well-known Canny edge detector [5] . This definition of on/off transitions minimizes effects due to drift and further cross checks were performed to guard against spurious on/off detections.. Protecting the privacy of those in our field of view has been paramount in our image acquisition and analysis and strict protocols have been observed toward that end. No more than a few pixels cover the closest sources in our scene, and atmospheric effects significantly blur the images further (see Fig. 2 ), ensuring that no personal detail is ever captured. In addition, all analyses have been performed at the aggregate level and any human inspection of an individual light curve has been done in ignorance of the precise location of that source within the scene.

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