Welcome to Loot.co.za!
Sign in / Register |Wishlists & Gift Vouchers |Help | Advanced search
|
Your cart is empty |
|||
Books > Computing & IT > General theory of computing > Data structures
A remarkable look at how the growth, technology, and politics of high-frequency trading have altered global financial markets In today's financial markets, trading floors on which brokers buy and sell shares face-to-face have increasingly been replaced by lightning-fast electronic systems that use algorithms to execute astounding volumes of transactions. Trading at the Speed of Light tells the story of this epic transformation. Donald MacKenzie shows how in the 1990s, in what were then the disreputable margins of the US financial system, a new approach to trading-automated high-frequency trading or HFT-began and then spread throughout the world. HFT has brought new efficiency to global trading, but has also created an unrelenting race for speed, leading to a systematic, subterranean battle among HFT algorithms. In HFT, time is measured in nanoseconds (billionths of a second), and in a nanosecond the fastest possible signal-light in a vacuum-can travel only thirty centimeters, or roughly a foot. That makes HFT exquisitely sensitive to the length and transmission capacity of the cables connecting computer servers to the exchanges' systems and to the location of the microwave towers that carry signals between computer datacenters. Drawing from more than 300 interviews with high-frequency traders, the people who supply them with technological and communication capabilities, exchange staff, regulators, and many others, MacKenzie reveals the extraordinary efforts expended to speed up every aspect of trading. He looks at how in some markets big banks have fought off the challenge from HFT firms, and how exchanges sometimes engineer technical systems to favor certain types of algorithms over others. Focusing on the material, political, and economic characteristics of high-frequency trading, Trading at the Speed of Light offers a unique glimpse into its influence on global finance and where it could lead us in the future.
Genetic Algorithms in Java Basics is a brief introduction to solving problems using genetic algorithms, with working projects and solutions written in the Java programming language. This brief book will guide you step-by-step through various implementations of genetic algorithms and some of their common applications, with the aim to give you a practical understanding allowing you to solve your own unique, individual problems. After reading this book you will be comfortable with the language specific issues and concepts involved with genetic algorithms and you'll have everything you need to start building your own. Genetic algorithms are frequently used to solve highly complex real world problems and with this book you too can harness their problem solving capabilities. Understanding how to utilize and implement genetic algorithms is an essential tool in any respected software developers toolkit. So step into this intriguing topic and learn how you too can improve your software with genetic algorithms, and see real Java code at work which you can develop further for your own projects and research. Guides you through the theory behind genetic algorithms Explains how genetic algorithms can be used for software developers trying to solve a range of problems Provides a step-by-step guide to implementing genetic algorithms in Java
'A manual for the 21st-century citizen... accessible, refreshingly critical, relevant and urgent' - Financial Times 'Fascinating and deeply disturbing' - Yuval Noah Harari, Guardian Books of the Year In this New York Times bestseller, Cathy O'Neil, one of the first champions of algorithmic accountability, sounds an alarm on the mathematical models that pervade modern life -- and threaten to rip apart our social fabric. We live in the age of the algorithm. Increasingly, the decisions that affect our lives - where we go to school, whether we get a loan, how much we pay for insurance - are being made not by humans, but by mathematical models. In theory, this should lead to greater fairness: everyone is judged according to the same rules, and bias is eliminated. And yet, as Cathy O'Neil reveals in this urgent and necessary book, the opposite is true. The models being used today are opaque, unregulated, and incontestable, even when they're wrong. Most troubling, they reinforce discrimination. Tracing the arc of a person's life, O'Neil exposes the black box models that shape our future, both as individuals and as a society. These "weapons of math destruction" score teachers and students, sort CVs, grant or deny loans, evaluate workers, target voters, and monitor our health. O'Neil calls on modellers to take more responsibility for their algorithms and on policy makers to regulate their use. But in the end, it's up to us to become more savvy about the models that govern our lives. This important book empowers us to ask the tough questions, uncover the truth, and demand change.
An object-oriented learning framework for creating good software design.
Recursion is one of the most fundamental concepts in computer science and a key programming technique that allows computations to be carried out repeatedly. Despite the importance of recursion for algorithm design, most programming books do not cover the topic in detail, despite the fact that numerous computer programming professors and researchers in the field of computer science education agree that recursion is difficult for novice students. Introduction to Recursive Programming provides a detailed and comprehensive introduction to recursion. This text will serve as a useful guide for anyone who wants to learn how to think and program recursively, by analyzing a wide variety of computational problems of diverse difficulty. It contains specific chapters on the most common types of recursion (linear, tail, and multiple), as well as on algorithm design paradigms in which recursion is prevalent (divide and conquer, and backtracking). Therefore, it can be used in introductory programming courses, and in more advanced classes on algorithm design. The book also covers lower-level topics related to iteration and program execution, and includes a rich chapter on the theoretical analysis of the computational cost of recursive programs, offering readers the possibility to learn some basic mathematics along the way. It also incorporates several elements aimed at helping students master the material. First, it contains a larger collection of simple problems in order to provide a solid foundation of the core concepts, before diving into more complex material. In addition, one of the book's main assets is the use of a step-by-step methodology, together with specially designed diagrams, for guiding and illustrating the process of developing recursive algorithms. Furthermore, the book covers combinatorial problems and mutual recursion. These topics can broaden students' understanding of recursion by forcing them to apply the learned concepts differently, or in a more sophisticated manner. The code examples have been written in Python 3, but should be straightforward to understand for students with experience in other programming languages. Finally, worked out solutions to over 120 end-of-chapter exercises are available for instructors.
Modern computing relies on future and emergent technologies which have been conceived via interaction between computer science, engineering, chemistry, physics and biology. This highly interdisciplinary book presents advances in the fields of parallel, distributed and emergent information processing and computation. The book represents major breakthroughs in parallel quantum protocols, elastic cloud servers, structural properties of interconnection networks, internet of things, morphogenetic collective systems, swarm intelligence and cellular automata, unconventionality in parallel computation, algorithmic information dynamics, localized DNA computation, graph-based cryptography, slime mold inspired nano-electronics and cytoskeleton computers. Features Truly interdisciplinary, spanning computer science, electronics, mathematics and biology Covers widely popular topics of future and emergent computing technologies, cloud computing, parallel computing, DNA computation, security and network analysis, cryptography, and theoretical computer science Provides unique chapters written by top experts in theoretical and applied computer science, information processing and engineering From Parallel to Emergent Computing provides a visionary statement on how computing will advance in the next 25 years and what new fields of science will be involved in computing engineering. This book is a valuable resource for computer scientists working today, and in years to come.
Maschinelles Lernen ist aufregend: Mit schnellen Prozessoren und groA en Speichern kAnnen Computer aus Erfahrungen lernen, kA1/4nstliche Intelligenz kommt wieder in Reichweite. Mit diesem Buch verstehen Sie, was maschinelles Lernen bedeutet, fA1/4r welche Probleme es sich eignet, welche neuen Herangehensweisen damit mAglich sind und wie Sie mit Python, R und speziellen Werkzeugen maschinelles Lernen implementieren. Sie brauchen dafA1/4r keine jahrelange Erfahrung als Programmierer und kein Mathematikstudium. Die praktische Anwendung maschinellen Lernens steht in diesem Buch im Vordergrund. Spielen Sie mit den Tools und haben Sie SpaA dabei! Lernen Sie Fakten und Mythen zum maschinellen Lernen zu unterscheiden.
Data Mining Algorithms is a practical, technically-oriented guide to data mining algorithms that covers the most important algorithms for building classification, regression, and clustering models, as well as techniques used for attribute selection and transformation, model quality evaluation, and creating model ensembles. The author presents many of the important topics and methodologies widely used in data mining, whilst demonstrating the internal operation and usage of data mining algorithms using examples in R.
Automata and Computability is a class-tested textbook which provides a comprehensive and accessible introduction to the theory of automata and computation. The author uses illustrations, engaging examples, and historical remarks to make the material interesting and relevant for students. It incorporates modern/handy ideas, such as derivative-based parsing and a Lambda reducer showing the universality of Lambda calculus. The book also shows how to sculpt automata by making the regular language conversion pipeline available through a simple command interface. A Jupyter notebook will accompany the book to feature code, YouTube videos, and other supplements to assist instructors and students Features Uses illustrations, engaging examples, and historical remarks to make the material accessible Incorporates modern/handy ideas, such as derivative-based parsing and a Lambda reducer showing the universality of Lambda calculus Shows how to "sculpt" automata by making the regular language conversion pipeline available through simple command interface Uses a mini functional programming (FP) notation consisting of lambdas, maps, filters, and set comprehension (supported in Python) to convey math through PL constructs that are succinct and resemble math Provides all concepts are encoded in a compact Functional Programming code that will tesselate with Latex markup and Jupyter widgets in a document that will accompany the books. Students can run code effortlessly href="https://github.com/ganeshutah/Jove.git/"here.
Presenting a complementary perspective to standard books on algorithms, A Guide to Algorithm Design: Paradigms, Methods, and Complexity Analysis provides a roadmap for readers to determine the difficulty of an algorithmic problem by finding an optimal solution or proving complexity results. It gives a practical treatment of algorithmic complexity and guides readers in solving algorithmic problems. Divided into three parts, the book offers a comprehensive set of problems with solutions as well as in-depth case studies that demonstrate how to assess the complexity of a new problem. Part I helps readers understand the main design principles and design efficient algorithms. Part II covers polynomial reductions from NP-complete problems and approaches that go beyond NP-completeness. Part III supplies readers with tools and techniques to evaluate problem complexity, including how to determine which instances are polynomial and which are NP-hard. Drawing on the authors' classroom-tested material, this text takes readers step by step through the concepts and methods for analyzing algorithmic complexity. Through many problems and detailed examples, readers can investigate polynomial-time algorithms and NP-completeness and beyond.
Introductory courses in combinatorial optimization are popular at the upper undergraduate/graduate levels in computer science, industrial engineering, and business management/OR, owed to its wide applications in these fields. There are several published textbooks that treat this course and the authors have used many of them in their own teaching experiences. This present text fills a gap and is organized with a stress on methodology and relevant content, providing a step-by-step approach for the student to become proficient in solving combinatorial optimization problems. Applications and problems are considered via recent technology developments including wireless communication, cloud computing, social networks, and machine learning, to name several, and the reader is led to the frontiers of combinatorial optimization. Each chapter presents common problems, such as minimum spanning tree, shortest path, maximum matching, network flow, set-cover, as well as key algorithms, such as greedy algorithm, dynamic programming, augmenting path, and divide-and-conquer. Historical notes, ample exercises in every chapter, strategically placed graphics, and an extensive bibliography are amongst the gems of this textbook.
First published in 1987, the seven chapters that comprise this book review contemporary work on the geometric side of robotics. The first chapter defines the fundamental goal of robotics in very broad terms and outlines a research agenda each of whose items constitutes a substantial area for further research. The second chapter presents recently developed techniques that have begun to address the geometric side of this research agenda and the third reviews several applied geometric ideas central to contemporary work on the problem of motion planning. The use of Voronoi diagrams, a theme opened in these chapters, is explored further later in the book. The fourth chapter develops a theme in computational geometry having obvious significance for the simplification of practical robotics problems - the approximation or decomposition of complex geometric objects into simple ones. The final chapters treat two examples of a class of geometric 'reconstruction' problem that have immediate application to computer-aided geometric design systems.
Candlesticks have become a key component of platforms and charting programs for financial trading. With these charts, traders can learn underlying patterns for interpreting price action history and forecasts. This A-Z guide shows portfolio managers, quants, strategists, and analysts how to use Python to recognize, scan, trade, and backtest the profitability of candlestick patterns. Financial author, trading consultant, and institutional market strategist Sofien Kaabar shows you how to create a candlestick scanner and indicator so you can compare the profitability of these patterns. With this hands-on guide, you'll also explore a new type of charting system similar to candlesticks, as well as new patterns that have never been presented before. With this book, you will: Create and understand the conditions required for classic and modern candlestick patterns Learn the market psychology behind them Use a framework to learn how backtesting trading strategies are conducted Explore different charting systems and understand their limitations Import OHLC historical FX data in Python in different time frames Use algorithms to scan for and reproduce patterns Learn a pattern's potential by evaluating its profitability and predictability
This textbook offers a comprehensive introduction to Machine Learning techniques and algorithms. This Third Edition covers newer approaches that have become highly topical, including deep learning, and auto-encoding, introductory information about temporal learning and hidden Markov models, and a much more detailed treatment of reinforcement learning. The book is written in an easy-to-understand manner with many examples and pictures, and with a lot of practical advice and discussions of simple applications. The main topics include Bayesian classifiers, nearest-neighbor classifiers, linear and polynomial classifiers, decision trees, rule-induction programs, artificial neural networks, support vector machines, boosting algorithms, unsupervised learning (including Kohonen networks and auto-encoding), deep learning, reinforcement learning, temporal learning (including long short-term memory), hidden Markov models, and the genetic algorithm. Special attention is devoted to performance evaluation, statistical assessment, and to many practical issues ranging from feature selection and feature construction to bias, context, multi-label domains, and the problem of imbalanced classes.
Self-driving cars, natural language recognition, and online recommendation engines are all possible thanks to Machine Learning. Now you can create your own genetic algorithms, nature-inspired swarms, Monte Carlo simulations, cellular automata, and clusters. Learn how to test your ML code and dive into even more advanced topics. If you are a beginner-to-intermediate programmer keen to understand machine learning, this book is for you. Discover machine learning algorithms using a handful of self-contained recipes. Build a repertoire of algorithms, discovering terms and approaches that apply generally. Bake intelligence into your algorithms, guiding them to discover good solutions to problems. In this book, you will: Use heuristics and design fitness functions. Build genetic algorithms. Make nature-inspired swarms with ants, bees and particles. Create Monte Carlo simulations. Investigate cellular automata. Find minima and maxima, using hill climbing and simulated annealing. Try selection methods, including tournament and roulette wheels. Learn about heuristics, fitness functions, metrics, and clusters. Test your code and get inspired to try new problems. Work through scenarios to code your way out of a paper bag; an important skill for any competent programmer. See how the algorithms explore and learn by creating visualizations of each problem. Get inspired to design your own machine learning projects and become familiar with the jargon. What You Need: Code in C++ (>= C++11), Python (2.x or 3.x) and JavaScript (using the HTML5 canvas). Also uses matplotlib and some open source libraries, including SFML, Catch and Cosmic-Ray. These plotting and testing libraries are not required but their use will give you a fuller experience. Armed with just a text editor and compiler/interpreter for your language of choice you can still code along from the general algorithm descriptions.
Although the particle swarm optimisation (PSO) algorithm requires relatively few parameters and is computationally simple and easy to implement, it is not a globally convergent algorithm. In Particle Swarm Optimisation: Classical and Quantum Perspectives, the authors introduce their concept of quantum-behaved particles inspired by quantum mechanics, which leads to the quantum-behaved particle swarm optimisation (QPSO) algorithm. This globally convergent algorithm has fewer parameters, a faster convergence rate, and stronger searchability for complex problems. The book presents the concepts of optimisation problems as well as random search methods for optimisation before discussing the principles of the PSO algorithm. Examples illustrate how the PSO algorithm solves optimisation problems. The authors also analyse the reasons behind the shortcomings of the PSO algorithm. Moving on to the QPSO algorithm, the authors give a thorough overview of the literature on QPSO, describe the fundamental model for the QPSO algorithm, and explore applications of the algorithm to solve typical optimisation problems. They also discuss some advanced theoretical topics, including the behaviour of individual particles, global convergence, computational complexity, convergence rate, and parameter selection. The text closes with coverage of several real-world applications, including inverse problems, optimal design of digital filters, economic dispatch problems, biological multiple sequence alignment, and image processing. MATLAB (R), Fortran, and C++ source codes for the main algorithms are provided on an accompanying downloadable resources. Helping you numerically solve optimisation problems, this book focuses on the fundamental principles and applications of PSO and QPSO algorithms. It not only explains how to use the algorithms, but also covers advanced topics that establish the groundwork for understanding.
Wir leben in einer algorithmenbestimmten Welt. Deshalb lohnt es sich zu verstehen, wie Algorithmen arbeiten. Das Buch prAsentiert die wichtigsten Anwendungsgebiete fA1/4r Algorithmen: Optimierung, SortiervorgAnge, Graphentheorie, Textanalyse, Hashfunktionen. Zu jedem Algorithmus werden jeweils Hintergrundwissen und praktische Grundlagen vermittelt sowie Beispiele fA1/4r aktuelle Anwendungen gegeben. FA1/4r interessierte Leser gibt es Umsetzungen in Python, sodass die Algorithmen auch verAndert und die Auswirkungen der VerAnderungen beobachtet werden kAnnen. Dieses Buch richtet sich an Menschen, die an Algorithmen interessiert sind, ohne eine Doktorarbeit zu dem Thema schreiben zu wollen. Wer es gelesen hat, versteht, wie wichtige Algorithmen arbeiten und wie man von dieser Arbeit beispielsweise bei der Entwicklung von Unternehmensstrategien profitieren kann.
Combinatorial Scientific Computing explores the latest research on creating algorithms and software tools to solve key combinatorial problems on large-scale high-performance computing architectures. It includes contributions from international researchers who are pioneers in designing software and applications for high-performance computing systems. The book offers a state-of-the-art overview of the latest research, tool development, and applications. It focuses on load balancing and parallelization on high-performance computers, large-scale optimization, algorithmic differentiation of numerical simulation code, sparse matrix software tools, and combinatorial challenges and applications in large-scale social networks. The authors unify these seemingly disparate areas through a common set of abstractions and algorithms based on combinatorics, graphs, and hypergraphs. Combinatorial algorithms have long played a crucial enabling role in scientific and engineering computations and their importance continues to grow with the demands of new applications and advanced architectures. By addressing current challenges in the field, this volume sets the stage for the accelerated development and deployment of fundamental enabling technologies in high-performance scientific computing.
This unique open access book applies the functional OCaml programming language to numerical or computational weighted data science, engineering, and scientific applications. This book is based on the authors' first-hand experience building and maintaining Owl, an OCaml-based numerical computing library. You'll first learn the various components in a modern numerical computation library. Then, you will learn how these components are designed and built up and how to optimize their performance. After reading and using this book, you'll have the knowledge required to design and build real-world complex systems that effectively leverage the advantages of the OCaml functional programming language. What You Will Learn Optimize core operations based on N-dimensional arrays Design and implement an industry-level algorithmic differentiation module Implement mathematical optimization, regression, and deep neural network functionalities based on algorithmic differentiation Design and optimize a computation graph module, and understand the benefits it brings to the numerical computing library Accommodate the growing number of hardware accelerators (e.g. GPU, TPU) and execution backends (e.g. web browser, unikernel) of numerical computation Use the Zoo system for efficient scripting, code sharing, service deployment, and composition Design and implement a distributed computing engine to work with a numerical computing library, providing convenient APIs and high performance Who This Book Is For Those with prior programming experience, especially with the OCaml programming language, or with scientific computing experience who may be new to OCaml. Most importantly, it is for those who are eager to understand not only how to use something, but also how it is built up.
How can machine learning help the design of future communication networks - and how can future networks meet the demands of emerging machine learning applications? Discover the interactions between two of the most transformative and impactful technologies of our age in this comprehensive book. First, learn how modern machine learning techniques, such as deep neural networks, can transform how we design and optimize future communication networks. Accessible introductions to concepts and tools are accompanied by numerous real-world examples, showing you how these techniques can be used to tackle longstanding problems. Next, explore the design of wireless networks as platforms for machine learning applications - an overview of modern machine learning techniques and communication protocols will help you to understand the challenges, while new methods and design approaches will be presented to handle wireless channel impairments such as noise and interference, to meet the demands of emerging machine learning applications at the wireless edge.
Software has become a key component of contemporary life and algorithms that rank, classify, or recommend are everywhere. Building on the philosophy of Gilbert Simondon and the cultural techniques tradition, this book examines the constructive and cumulative character of software and retraces the historical trajectories of a series of algorithmic techniques that have become the building blocks for contemporary practices of ordering. Developed in opposition to centuries of library tradition, these techniques instantiate dynamic, perspectivist, and interested forms of knowing. Embedded in technical infrastructures and economic logics, they have become engines of order that transform how we arrange information, ideas, and people.
Computation, itself a form of calculation, incorporates steps that include arithmetical and non-arithmetical (logical) steps following a specific set of rules (an algorithm). This uniquely accessible textbook introduces students using a very distinctive approach, quite rapidly leading them into essential topics with sufficient depth, yet in a highly intuitive manner. From core elements like sets, types, Venn diagrams and logic, to patterns of reasoning, calculus, recursion and expression trees, the book spans the breadth of key concepts and methods that will enable students to readily progress with their studies in Computer Science.
Toward Deep Neural Networks: WASD Neuronet Models, Algorithms, and Applications introduces the outlook and extension toward deep neural networks, with a focus on the weights-and-structure determination (WASD) algorithm. Based on the authors' 20 years of research experience on neuronets, the book explores the models, algorithms, and applications of the WASD neuronet, and allows reader to extend the techniques in the book to solve scientific and engineering problems. The book will be of interest to engineers, senior undergraduates, postgraduates, and researchers in the fields of neuronets, computer mathematics, computer science, artificial intelligence, numerical algorithms, optimization, simulation and modeling, deep learning, and data mining. Features Focuses on neuronet models, algorithms, and applications Designs, constructs, develops, analyzes, simulates and compares various WASD neuronet models, such as single-input WASD neuronet models, two-input WASD neuronet models, three-input WASD neuronet models, and general multi-input WASD neuronet models for function data approximations Includes real-world applications, such as population prediction Provides complete mathematical foundations, such as Weierstrass approximation, Bernstein polynomial approximation, Taylor polynomial approximation, and multivariate function approximation, exploring the close integration of mathematics (i.e., function approximation theories) and computers (e.g., computer algorithms) Utilizes the authors' 20 years of research on neuronets
This book reviews ways to improve statistical machine speech translation between Polish and English. Research has been conducted mostly on dictionary-based, rule-based, and syntax-based, machine translation techniques. Most popular methodologies and tools are not well-suited for the Polish language and therefore require adaptation, and language resources are lacking in parallel and monolingual data. The main objective of this volume to develop an automatic and robust Polish-to-English translation system to meet specific translation requirements and to develop bilingual textual resources by mining comparable corpora. |
You may like...
Beyond Algorithms - Delivering AI for…
James,Luke, David Porter, …
Hardcover
R3,936
Discovery Miles 39 360
The Garbage Collection Handbook - The…
Richard Jones, Antony Hosking, …
Hardcover
R1,922
Discovery Miles 19 220
The Garbage Collection Handbook - The…
Richard Jones, Antony Hosking, …
Paperback
R1,450
Discovery Miles 14 500
Problem Solving with Algorithms and Data…
Bradley N Miller, David L Ranum
Paperback
R1,481
Discovery Miles 14 810
Soft Computing - Recent Advances and…
Pradip Debnath, Oscar Castillo, …
Hardcover
R2,789
Discovery Miles 27 890
|