Forthcoming titles in the ACM Books Series are subject to change and will be published as they become available, with 25 titles to be published in Collection I and II. Upon publication, each of the following books will appear in the ACM Digital Library and be accessible to those with full-text access in both PDF and ePub formats. Individual titles will be made available for purchase at Morgan & Claypool and also available at Amazon and Barnes & Noble. Please click on the title name below for more information about each title.

Advanced Topics in Information Retrieval
Author(s): Omar Alonso and Ricardo Baeza-Yates

Information Retrieval technology powers a lot of the search functionality that runs the Web. As different web properties evolve over time and new services become mainstream, the ability to search for pages, people, music, messages, posts, and other objects is an essential part of our daily digital life. To make sure that such functionality works from any device at scale, new techniques and topics have emerged. In this book we describe in detail such techniques, use cases, and provide extensive bibliography. The book should be of interest to researchers, practitioners, and graduate students who want to understand the latest advances in this area.

Algorithms and Methods in Structural Bioinformatics - Nurit Haspel
Author(s): Nurit Haspel

Structural bioinformatics is the field related to the development and application of computational models for the prediction and analysis of macromolecular structures. The unique nature of protein and nucleotide structures has presented many computational challenges over the last three decades. The fast accumulation of data, in addition to the rapid increase in computational power, presents a unique set of challenges and opportunities in the analysis, comparison, modeling, and prediction of macromolecular structures and interactions.

The book is intended as a user's guide for key algorithms to solve problems related to macromolecular structure, with emphasis on protein structure, function and dynamics. It can be used as a textbook for a one-semester graduate course in algorithms in bioinformatics.

Applied Affective Computing
Author(s): Leimin Tian

The affective computing community is facing a major transformation as we leave the controlled lab environments and enter a new era of real world application of affective systems. We capture this process by proposing a novel concept Applied Affective Computing. We bring attention to the challenges of applying research findings to real-life scenarios in this book. We define applied affective computing by identifying unique characteristics that differ it from traditional affective computing research. Our extensive reviews of existing approaches to affective systems and social signal processing allow us to identify the state of the art and emerging themes in the field. Moreover, we cover in-depth case studies of applied affective computing in various domains, such as social robots and mental well-being. Our reviews and case studies allow us to summarize a set of guidelines for developing next generation affective systems that are effective, safe, and have a human-centered perspective.

Circuits, Packets, and Protocols: Entrepreneurs and Computer Communication, 1968-1988
Author(s): James L. Pelkey, Andrew L. Russell, Loring Robbins

It is hard to imagine, but as recently as 1968, computer scientists were uncertain how best to interconnect even two computers. The notion that within a few decades the challenge would be how to interconnect millions of computers around the globe was too farfetched to contemplate. Yet, by 1988, that is precisely what was happening. The products and devices developed in the intervening years—such as modems, multiplexers, local area networks, and routers—became the linchpins of the global digital society. How did such revolutionary innovation occur? This book tells the story of the entrepreneurs who were able to harness and join two factors: the energy of computer science researchers supported by governments and universities, and the tremendous commercial demand for internetworking computers. The centerpiece of this history comes from unpublished interviews from the late 1980s with over 80 computing industry pioneers, including Paul Baran, J.C.R. Licklider, Vint Cerf, Robert Kahn, Larry Roberts, and Robert Metcalfe. These individuals give us unique insights into the creation of multi-billion dollar markets for computer-communications equipment, and they reveal how entrepreneurs struggled with failure, uncertainty, and the limits of knowledge.

Data Series Management and Analytics: Time Series, Sequences, High-Dimensional Vectors
Author(s): Themis Palpanas and Kostas Zoumpatianos

There is an increasingly pressing need, by several applications in diverse domains, for developing techniques able to manage and analyze very large collections of sequences (also known as time series, or data series). Examples of such applications come from social media analytics and internet service providers, as well as from a multitude of scientific domains that need to apply machine learning techniques for knowledge extraction. It is not unusual for these applications to involve numbers of data series in the order of hundreds of millions to billions, which are often times not analyzed in their full detail due to their sheer size. In this book, we describe the theory and methods necessary for managing big data sequences, and for building corresponding systems that will enable scalable management of and complex analytics on very large sequence collections. To this effect, we describe recent developments in the areas of summarizing, indexing, searching for similar sequences, analyzing (motif discovery, anomaly discovery, classification, clustering), and visualizing large data series collections. Finally, we discuss the applicability of data series techniques on generic high-dimensional vectors.

Database Replication - Bettina Kemme
Author(s): Bettina Kemme

Database replication is widely used for fault-tolerance, scalability, and performance. The failure of one database replica does not stop the system from working as available replicas can take over the tasks of the failed replica. Scalability can be achieved by distributing the load across all replicas, and adding new replicas should the load increase. Finally, database replication can provide fast local access, even if clients are geographically distributed clients, if data copies are located close to clients. Despite its advantages, replication is not a straightforward technique to apply, and there are many hurdles to overcome. At the forefront is replica control: assuring that data copies remain consistent when updates occur. There exist many alternatives in regard to where updates can occur and when changes are propagated to data copies, how changes are applied, where the replication tool is located, etc. A particular challenge is to combine replica control with transaction management as it requires several operations to be treated as a single logical unit, and it provides atomicity, consistency, isolation and durability across the replicated system.

This book provides a categorization of replica control mechanisms, presents several replica and concurrency control mechanisms in detail, and discusses many of the issues that arise when such solutions need to be implemented within or on top of relational database systems. Furthermore, the book presents the tasks that are needed to build a fault-tolerant replication solution, provides an overview of load-balancing strategies that allow load to be equally distributed across all replicas, and introduces the concept of self-provisioning that allows the replicated system to dynamically decide on the number of replicas that are needed to handle the current load. As performance evaluation is a crucial aspect when developing a replication tool, the book presents an analytical model of the scalability potential of various replication solution.

Democratizing Cryptography: The Work of Whitfield Diffie and Martin Hellman
Author(s): Rebecca Slayton

Martin Hellman and Whitfield Diffie won the 2015 Turing Award for the development of public-key cryptography. This book provides original biographies of the award winners and describes the historical and political context and impact of their research, including its influence on the development of internet security, theoretical computer science, and national security. It also summarizes and compiles key documents, including the original research articles that led to the Turing Award, interviews with Hellman and Diffie, and the Turing Award lectures.

Foundations of Computation and Machine Learning: The Work of Leslie Valiant - by Rocco Servedio
Author(s): Rocco Servedio

ACM Books is pleased to announce the signing of a new book in our Turing Award series, Foundations of Computation and Machine Learning: The Work of Leslie Valiant, edited by Rocco Servedio of Columbia University.

Valiant received the prestigious ACM Turing Award in 2010 for 2010 "For transformative contributions to the theory of computation, including the theory of probably approximately correct (PAC) learning, the complexity of enumeration and of algebraic computation, and the theory of parallel and distributed computing."

The book will feature a short biography of Valiant, as well as analysis of his seminal works by today's leading computer scientists.

Geospatial Data Science: A Hands On Approach for Developing Geospatial Applications
Author(s): Manolis Koubarakis, Konstantina Bereta, Charalampos Nikolaou, George Stamoulis

The purpose of this book is to teach the readers how to develop geospatial applications easily based on the principles and software tools of geospatial data science. Geospatial data science is the science of collecting, organizing, analyzing, and visualizing geospatial data. The book introduces a new generation of geospatial technologies based on the Semantic Web and the Linked Data paradigms, and shows how data scientists can use them to build environmental applications easily. The book is aimed at researchers and practitioners who would like to know more about this research area and can also be used as a textbook for a last year undergraduate or graduate course. Every chapter of the book contains exercises that can help the readers master the material covered by the chapter.

The topics covered by the book in detail are: geospatial data modeling, geospatial data and metadata, geospatial data formats and OGC standards, geospatial ontologies and linked geospatial data models, querying geospatial data expressed in RDF, querying evolving linked geospatial data, visualizing linked geospatial data, transforming geospatial data into RDF, interlinking geospatial data sources, geospatial ontology-based data access and incomplete geospatial information.

Handbook of Socially Interactive Agents - Birgit Lugrin, Catherine Pelachaud, David Taum
Author(s): Birgit Lugrin, Catherine Pelachaud, David Taum

The research areas of Intelligent Virtual Agents (IVAs), Embodied Conversational Agents (ECAs), Socially Intelligent Agents (SIAs) and Social Robotics (SRs) have a common goal: to develop artificial agents (with either a physical or virtual embodiment) that are able to interact with human users and each other in a natural and intuitive manner. While the communities researching in these areas are aware of one another in principle, they do not yet benefit from each other’s research as much as they could. This comprehensive handbook on Socially Interactive Agents (SIAs) that will summarize the research that has taken place over the last 20 years in the fields of IVAs, ECAs (which will in the following be used interchangeably) and SRs, highlighting the similarities and differences of the different types of agents. With it the editors aim to bring the communities closer together and to attempt to close the gap between these very related research fields.

Introduction to Computational Advertising-by Ricardo Baeza-Yates, Prabakhar Krishnamurthy, Jian Yang
Author(s): Ricardo Baeza-Yates, Prabakhar Krishnamurthy, and Jian Yang

Online advertising has grown from almost nothing at the end of last century to an annual spend of over 200B dollars globally. Today, online advertising garners the most advertising dollars of any advertising channel including TV. Online advertising is computational advertising since most the decisions of which ads to show to a user in a given context are determined by algorithms. Indeed, computational advertising was one of the first big data applications. For this reason, the problems behind computational advertising have driven research into large-scale machine learning and algorithmic game theory and is responsible for many advances in those areas as well as in parallel computing architectures. This book covers the current state of the art of computational advertising. That includes the economics of online advertising, understanding and modeling consumer behavior, matching ads and consumers, user response prediction and measurement of ad effectiveness. We also cover ad allocation, campaign management and optimization, as well as fraud and privacy issues. Today, computational advertising intersects computer science, economics marketing and psychology. Hence, after 20 years of advances in this field we hope this book fills the needs of researchers, practitioners and graduate students who want to understand the state of the art in this multidisciplinary area.

Linking the World’s Information: Tim Berners-Lee’s Invention of the World Wide Web
Author(s): Oshani Seneviratne James Hendler

Sir Tim Berners-Lee was awarded the 50th anniversary ACM Turing Award "For inventing the World Wide Web, the first web browser, and the fundamental protocols and algorithms allowing the Web to scale." This new book, one in a series dedicated to Turing Award winners, looks at the life and work of Berners-Lee. It features a short biography, seminal research, and commentary from leading computer scientists on the evolution and impact of his work.

Logic and Computational Complexity: Works of Stephen A. Cook - Bruce Kapron
Author(s): Bruce Kapron

Stephen A. Cook was awarded the ACM Turing Award in 1982, in recognition of "his advancement of our understanding of the complexity of computation in a significant and profound way." Cook's theory of NP-completeness is one of the most fundamental and enduring contributions in computer science, and has a singificant impact outside the field. This volume will present works on NP-completeness and other contributions which, while perhaps not as well known, has also had a significant impact on computing theory and practice, as well as mathematical logic. With additional material, including a biographical chapter, Professor Cook's Turing Award address, and a full bibliography of his work, the volume will provide an excellent resource for anyone wishing to understand the foundations of Cook's work as well as its ongoing significance and relevance to current research problems in computing and beyond.

Pointer Analysis: Theory and Practice - by Uday Khedker and Pritam M. Gharat
Author(s): Uday Khedker and Pritam M. Gharat

Pointer analysis provides information to disambiguate indirect reads and writes of data through pointers and indirect control flow through function pointers or virtual functions. Thus it enables application of other program analyses to programs containing pointers. There is a large body of literature on pointer analysis. However, there is no material that brings out a uniform coherent theme by separating fundamental concepts from advanced techniques and tricks. This book fills this void.

The book focuses on fundamental concepts instead of trying to cover the entire breadth of the literature on pointer analysis. Bibliographic notes point the reader to relevant literature for more details.
Rather than being driven completely by pointer analysis’s practical effectiveness, the book evolves the concepts from the first principles based on the language features, brings out the interactions of different abstractions at the level of ideas, and finally, relates them to practical observations and the nature of practical programs.

Principles of Graph Data Management and Analytics - by Amol Deshpande and Amarnath Gupta
Author(s): Amol Deshpande and Amarnath Gupta

Principles of Graph Data Management and Analytics is the first textbook on the subject for upper-level undergraduates, graduate students and data management professionals who are interested in the new and exciting world of graph data management and computation. The book blends together the two thinly connected disciplines – a database-minded approach to managing and querying graphs, and an analytics-driven approach to perform scalable computation on large graphs. It presents a detailed treatment of the underlying theory and algorithms, and prevalent techniques and systems; it also presents textbook use cases and real-world problems that can be solved by combining database-centric and analysis-centric approaches. The book will enable students to understand the state of the art in graph data management, to effectively program currently available graph databases and graph analytics products, and to design their own graph data analysis systems.To help this process, the book supplements its textual material with several data sets, small and large, that will be made available through the book’s website. Several free and contributed software will also be provided for readers for practice.

Probabilistic and Causal Inference: The Works of Judea Pearl
Author(s): Rina Dechter, Hector Geffner and Joseph Halpern

Judea Pearl won the 2011 Turing Award "for fundamental contributions to artificial intelligence through the development of a calculus for probabilistic and causal reasoning." This book contains the original articles by Judea Pearl that led to the Turing Award, as well as other seminal works by Pearl along with a biography, interviews, and analyses of his works and influence provided by leading researchers in the fields of causal and probabilistic inference.
Prophets of Computing - Dick van Lente
Author(s): Dick van Lente

When electronic digital computers made their first public appearance after World War II, they were widely perceived as a revolutionary force. Business management, the world of work, the nation state, and soon enough everyday life were expected to change dramatically when these machines became widely used. Ever since those early days, prophecies of computing have continually emerged, through the present day.

As computing began to spread to countries with different political structures and cultural traditions, beyond the US and UK, questions arose about what a future society with computers would look like. This volume investigates to what extent the prophesies of computing in those countries also differed, how much they had in common, and how to understand these divergences and convergences.

This book contains case studies on thirteen countries, based on source material in ten different languages—the accomplishment of an international team of scholars. In addition to analyses of debates, political changes, and popular speculation in these countries, we also show a wide range of pictorial representations of “the future with computers.”

Software Evolution: Lessons Learned from Software History - by Kim Tracy
Author(s): Kim Tracy

Software history has a deep impact on current software designers, computer scientists and technologists. Decisions and design constraints made in past are often unknown or poorly understood by current students, yet modern software systems use software based on those earlier decisions and design constraints. This work looks at software history through specific software areas and extracts student-consumable practices, learnings, and trends that are useful in current and future software design. It also exposes key areas that are highly used in modern software, yet no longer taught in most computing programs. Written as a textbook, this book uses past and current specific cases to explore the impact of specific software evolution trends and impacts.

Spatial Gems
Author(s): John Krumm, Andreas Züfle, Cyrus Shahabi

A spatial gem is a brief description of fundamental, self-contained approach for processing spatial data. This diverse collection of spatial problem-solving techniques comes from active researchers in the field of spatial data processing. A gem falls in the gap between something commonly found in textbooks and something that is the focus of a research paper. While a research paper says, “Look at what I can do,” a spatial gem says, “Look at what you can do.” Example gems include how to make a heat map, how to compute speed from uncertain location data, K nearest search on road networks, and GPUs for computing 3D spatial predicates.

Static Programming Analysis - by Yannis Smaragdakis
Author(s): Yannis Smaragdakis

Static program analysis studies the behavior of programs under all possible inputs. It is an area with a wealth of applications, in virtually any tool that processes programs. A compiler needs static analysis in order to detect errors (e.g., undefined variables) or to optimize code (e.g., eliminate casts or devirtualize calls). A refactoring or a program understanding tool need global program analysis in order to answer useful questions such as “where could this program variable have been set?” or “which parts of the program can influence this value?'' A security analyzer needs program analysis to determine “can the arguments of this private operation ever be affected by untrusted user input?” A concurrency bug detector needs program analysis in order to tell whether a program can ever deadlock or have races. Static program analysis is practically valuable, but it is also hard. It is telling that the quintessential undecidable computing problem, the “halting problem”, is typically phrased as a program analysis question: “can there be a program that accepts another program as input and determines whether the latter always terminates?” Other program analysis problems have given rise to some of the best known techniques and algorithms in computer science (e.g., data-flow frameworks). This book offers a comprehensive treatment of the principles, concepts, techniques and applications of static program analysis, illustrated and explained. The emphasis is on understanding the tradeoffs of different kinds of static program analysis algorithms and on appreciating the main factors for critically evaluating a static analysis and its suitability for practical tasks.

Tangible and Embodied Interaction - by Brygg Ullmer, Ali Mazalek, Orit Shaer, and Caroline Hummels
Author(s): Brygg Ullmer, Ali Mazalek, Orit Shaer, and Caroline Hummels

User interfaces for our increasingly varied computational devices have long been oriented toward graphical screens and virtual interactors. Since the advent of mass market graphical interfaces in the mid-1980s, most human-computer interaction has been mediated by graphical buttons, sliders, text fields, and their virtual kin.

And yet, humans are profoundly physical creatures. Throughout our history (and prehistory), our bodies have profoundly shaped our activities and engagement with our world, and each other. Despite -- and perhaps also, because of -- the many successes of keyboard, pointer, touch screen, and (increasingly) speech modalities of computational interaction, many have sought alternate prospects for interaction that more deeply respect, engage, and celebrate our embodied physicality.

For several decades, tangible and embodied interaction (TEI) has been the topic of intense technological, scientific, artistic, humanistic, and mass-market research and practice. In this book, we elaborate on many dimensions of this diverse, transdisciplinary, blossoming topic.

Verification and Synthesis of Network Routing - Ryan Beckett
Author(s): Ryan Beckett

Modern trends in networking, such as the rise of cloud computing and progressive rollout of large datacenter networks, have complicated network management and created a great need in practice for tools that can ensure reliability of our physical networks. To address this need, in recent years many researchers, including myself, have explored how to apply formal methods techniques, including verification and synthesis, to validate the correctness of networks at scale. However, despite a lot of recent interest in the fields of network verification and synthesis, the topics remain inscrutable to most practitioners and researchers, requiring strong backgrounds in both networking principles and formal methods techniques. Moreover, the fields are relatively new and most of the knowledge is locked away in the heads of a small number of people.

The goal of this publication is the provide an in-depth exploration of the recent advances in formal methods as applied specifically to the area of network routing (layer 3). The monograph aims to also provide suitable background to be accessible to those lacking background in either networking or formal methods. The target audiences would be (1) researchers and new graduate students looking to work in the fields of either network verification or network synthesis, and (2) industrial practitioners looking to build practical tools to improve network reliability.

View Published Titles