The ultimate aim of artificial intelligence (A.I.) is to understand intelligence and to build intelligent software and robots that come close to the performance of humans. On their way towards this goal, A.I. researchers have developed a number of quite different subdisciplines.
This concise and accessible Introduction to Artificial Intelligence supports a foundation or module course on A.I., covering a broad selection of the subdisciplines within this field. The textbook presents concrete algorithms and applications in the areas of agents, logic, search, reasoning under...
The ultimate aim of artificial intelligence (A.I.) is to understand intelligence and to build intelligent software and robots that come close to th...
Observing the environment and recognising patterns for the purpose of decision making is fundamental to human nature. This book deals with the scientific discipline that enables similar perception in machines through pattern recognition, which has application in diverse technology areas--character recognition, image processing, industrial automation, internet searches, speech recognition, medical diagnostics, target recognition, space science, remote sensing, data mining, biometric identification--to name a few. This book is an exposition of principal topics in pattern recognition using an...
Observing the environment and recognising patterns for the purpose of decision making is fundamental to human nature. This book deals with the scienti...
Semantics will have an important role to play in the future development of software systems and domain specific languages, and there is a real need for an introductory book that presents the fundamental ideas behind these approaches; stresses their relationship by formulating and proving the relevant theorems; and illustrates the applications of semantics in computer science.
This book investigates the relationship between the various methods and describes some of the main ideas used, illustrating these via interesting applications. Historically important application areas...
Semantics will have an important role to play in the future development of software systems and domain specific languages, and there is a real need...
Many textbooks on computer vision can be unwieldy and intimidating in their coverage of this extensive discipline. This textbook addresses the need for a concise overview of the fundamentals of this field.
Concise Computer Vision provides an accessible general introduction to the essential topics in computer vision, highlighting the role of important algorithms and mathematical concepts. Classroom-tested programming exercises and review questions are also supplied at the end of each chapter.
Topics and features: provides an introduction to the basic notation...
Many textbooks on computer vision can be unwieldy and intimidating in their coverage of this extensive discipline. This textbook addresses the need...
This book provides insights drawn from the authors' extensive experience in teaching Puzzle-based Learning. Practical advice is provided for teachers and lecturers evaluating a range of different formats for varying class sizes. Features: suggests numerous entertaining puzzles designed to motivate students to think about framing and solving unstructured problems; discusses models for student engagement, setting up puzzle clubs, hosting a puzzle competition, and warm-up activities; presents an overview of effective teaching approaches used in Puzzle-based Learning, covering a variety of class...
This book provides insights drawn from the authors' extensive experience in teaching Puzzle-based Learning. Practical advice is provided for teachers ...
This clearly structured and easy to read textbook explains the concepts and techniques required to write programs that can handle large amounts of data efficiently.
Project-oriented and classroom-tested, the book presents a number of important algorithms supported by motivating examples that bring meaning to the problems faced by computer programmers. The idea of computational complexity is also introduced, demonstrating what can and cannot be computed efficiently so that the programmer can make informed judgements about the algorithms they use. The text assumes some basic experience...
This clearly structured and easy to read textbook explains the concepts and techniques required to write programs that can handle large amounts of ...
This easy-to-follow and classroom-tested textbook guides the reader through the fundamentals of programming with Python, an accessible language which can be learned incrementally. This revised and updated new edition will teach students how to recognize and apply abstract patterns in programming through the extensive use of illustrative examples and practical exercises. The book also demonstrates the benefit of using a debugger to inspect the state of a program while it is executing.
Topics and features: incudes numerous examples and practice exercises throughout the text, with...
This easy-to-follow and classroom-tested textbook guides the reader through the fundamentals of programming with Python, an accessible language whi...
This book is about the harmonious synthesis of functional programming and numerical computation. It shows how the expressiveness of OCaml allows for fast and safe development of data science applications. Step by step, the authors build up to use cases drawn from many areas of Data Science, Machine Learning, and AI, and then delve into how to deploy at scale, using parallel, distributed, and accelerated frameworks to gain all the advantages of cloud computing environments.
To this end, the book is divided into three parts, each focusing on a different area. Part I begins by...
This book is about the harmonious synthesis of functional programming and numerical computation. It shows how the expressiveness of OCaml allows fo...
Knowledge of automata theory and formal languages is crucial for understanding human-computer interaction, as well as for understanding the various processes that take place when manipulating knowledge if that knowledge is, indeed, expressed as sentences written in a suitably formalized language. In particular, it is at the basis of the theory of parsing, which plays an important role in language translation, compiler construction, and knowledge manipulation in general.
Presenting basic notions and fundamental results, this concise textbook is structured on the basis of a...
Knowledge of automata theory and formal languages is crucial for understanding human-computer interaction, as well as for understanding the various pr...