Introduction to Computer Science provides a comprehensive foundation in core computer science concepts and principles, aligning with the scope and sequence of most introductory computer science courses. The offering serves as an engaging entry point for students pursuing diverse fields of study and employment, including computer science, business, engineering, data science, social scienc
Artificial intelligence (AI) robots can learn from their experiences, make decisions in real time, understand natural language and human gestures, and utilize computer vision to perceive and comprehend their environments. Beginning with the rudimentary concepts of AI, AI Robotics: Ethics, Algorithms, and Technology of Artificial Intelligence-Powered Robots explores the intersection of ro
This book bridges theoretical computer science and machine learning by exploring what the two sides can teach each other. It emphasizes the need for flexible, tractable models that better capture not what makes machine learning hard, but what makes it easy. Theoretical computer scientists will be introduced to important models in machine learning and to the main questions within the fiel
How can we capture the unpredictable evolutionary and emergent properties of nature in software? How can understanding the mathematical principles behind our physical world help us to create digital worlds? This book focuses on a range of programming strategies and techniques behind computer simulations of natural systems, from elementary concepts in mathematics and physics to more advan
This open book is a general introduction to the statistical analysis of networks, and can serve both as a research monograph and as a textbook. Numerous fundamental tools and concepts needed for the analysis of networks are presented, such as network modeling, community detection, graph-based semi-supervised learning and sampling in networks. The description of these concepts is self-con
In this book, you'll find information about a set of libraries developed within the Apache Commons (also referred to as "Commons"). Commons is a set of small, popular components which forms a Top-level Project at the Apache Software Foundation. Ranging from the elementary to the complex, many would consider some of these libraries indispensable to any Java project. These components are s
This open access book bridges the gap between playing with robots in school and studying robotics at the upper undergraduate and graduate levels to prepare for careers in industry and research. Robotic algorithms are presented formally, but using only mathematics known by high-school and first-year college students, such as calculus, matrices and probability. Concepts and algorithms are
A new edition of a graduate-level machine learning textbook that focuses on the analysis and theory of algorithms. This book is a general introduction to machine learning that can serve as a textbook for graduate students and a reference for researchers. It covers fundamental modern topics in machine learning while providing the theoretical basis and conceptual tools needed for the discu
A modern practical book about cryptography for developers with code examples, covering core concepts like: hashes (like SHA-3 and BLAKE2), MAC codes (like HMAC and GMAC), key derivation functions (like Scrypt, Argon2), key agreement protocols (like DHKE, ECDH), symmetric ciphers (like AES and ChaCha20, cipher block modes, authenticated encryption, AEAD, AES-GCM, ChaCha20-Poly1305), asymm
Recursion has an intimidating reputation: it's considered to be an advanced computer science topic frequently brought up in coding interviews. But there's nothing magical about recursion. The Recursive Book of Recursion uses Python and JavaScript examples to teach the basics of recursion, exposing the ways that it's often poorly taught and clarifying the fundamental principles of all rec