English
Related papers

Related papers: Recursive function templates as a solution of line…

200 papers

We overview the ensmallen numerical optimization library, which provides a flexible C++ framework for mathematical optimization of user-supplied objective functions. Many types of objective functions are supported, including general,…

Mathematical Software · Computer Science 2024-02-12 Ryan R. Curtin , Marcus Edel , Rahul Ganesh Prabhu , Suryoday Basak , Zhihao Lou , Conrad Sanderson

This report provides an introduction to the ensmallen numerical optimization library, as well as a deep dive into the technical details of how it works. The library provides a fast and flexible C++ framework for mathematical optimization of…

Mathematical Software · Computer Science 2023-11-16 Ryan R. Curtin , Marcus Edel , Rahul Ganesh Prabhu , Suryoday Basak , Zhihao Lou , Conrad Sanderson

We present ensmallen, a fast and flexible C++ library for mathematical optimization of arbitrary user-supplied functions, which can be applied to many machine learning problems. Several types of optimizations are supported, including…

Mathematical Software · Computer Science 2018-12-11 Shikhar Bhardwaj , Ryan R. Curtin , Marcus Edel , Yannis Mentekidis , Conrad Sanderson

Tail recursive functions allow for a wider range of optimisations than general recursive functions. For this reason, much research has gone into the transformation and optimisation of this family of functions, in particular those written in…

Programming Languages · Computer Science 2023-09-12 Joachim Tilsted Kristensen , Robin Kaarsgaard , Michael Kirkedal Thomsen

Robotic Template Library (RTL) is a set of tools for dealing with geometry and point cloud processing, especially in robotic applications. The software package covers basic objects such as vectors, line segments, quaternions, rigid…

Robotics · Computer Science 2021-11-02 Ales Jelinek , Adam Ligocki , Ludek Zalud

We present a C++ library, TLoops, which uses a hierarchy of expression templates to represent operations upon tensorial quantities in single lines of C++ code that resemble analytic equations. These expressions may be run as-is, but may…

Mathematical Software · Computer Science 2018-04-27 Adam G. M. Lewis , Harald P. Pfeiffer

We present the C++ library CppSs (C++ super-scalar), which provides efficient task-parallelism without the need for special compilers or other software. Any C++ compiler that supports C++11 is sufficient. CppSs features different…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-02-27 Steffen Brinkmann , Jose Gracia

OpenGM is a C++ template library for defining discrete graphical models and performing inference on these models, using a wide range of state-of-the-art algorithms. No restrictions are imposed on the factor graph to allow for higher-order…

Artificial Intelligence · Computer Science 2012-06-04 Bjoern Andres , Thorsten Beier , Joerg H. Kappes

As computational challenges in optimization and statistical inference grow ever harder, algorithms that utilize derivatives are becoming increasingly more important. The implementation of the derivatives that make these algorithms so…

Mathematical Software · Computer Science 2015-09-25 Bob Carpenter , Matthew D. Hoffman , Marcus Brubaker , Daniel Lee , Peter Li , Michael Betancourt

The paper introduces a novel representation for Generalized Planning (GP) problems, and their solutions, as C++ programs. Our C++ representation allows to formally proving the termination of generalized plans, and to specifying their…

Artificial Intelligence · Computer Science 2022-06-30 Javier Segovia-Aguas , Yolanda E-Martín , Sergio Jiménez

Countless applications cast their computational core in terms of dense linear algebra operations. These operations can usually be implemented by combining the routines offered by standard linear algebra libraries such as BLAS and LAPACK,…

Performance · Computer Science 2014-10-01 Elmar Peise , Paolo Bientinesi

An approach for incorporating embedded simulation and analysis capabilities in complex simulation codes through template-based generic programming is presented. This approach relies on templating and operator overloading within the C++…

Mathematical Software · Computer Science 2012-05-17 Roger P. Pawlowski , Eric T. Phipps , Andrew G. Salinger

This paper provides the description of a novel, multi-purpose spline library. In accordance with the increasingly diverse modes of usage of splines, it is multi-purpose in the sense that it supports geometry representation, finite element…

Mathematical Software · Computer Science 2020-02-28 Markus Frings , Norbert Hosters , Corinna Müller , Max Spahn , Christoph Susen , Konstantin Key , Stefanie Elgeti

A circular program contains a data structure whose definition is self-referential or recursive. The use of such a definition allows efficient functional programs to be written and can avoid repeated evaluations and the creation of…

Data Structures and Algorithms · Computer Science 2022-06-28 Lloyd Allison

Recursive calls over recursive data are useful for generating probability distributions, and probabilistic programming allows computations over these distributions to be expressed in a modular and intuitive way. Exact inference is also…

Programming Languages · Computer Science 2023-03-28 David Chiang , Colin McDonald , Chung-chieh Shan

We present the library Moore, which implements Interval Arithmetic in modern C++. This library is based on a new feature in the C++ language called concepts, which reduces the problems caused by template meta programming, and leads to a new…

Mathematical Software · Computer Science 2016-11-30 Walter F. Mascarenhas

Linear algebraic expressions are the essence of many computationally intensive problems, including scientific simulations and machine learning applications. However, translating high-level formulations of these expressions to efficient…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-03-22 Dániel Berényi , András Leitereg , Gábor Lehel

Interested in formalizing the generation of fast running code for linear algebra applications, the authors show how an index-free, calculational approach to matrix algebra can be developed by regarding matrices as morphisms of a category…

Software Engineering · Computer Science 2013-12-18 Hugo Daniel Macedo , José N. Oliveira

Most ray tracing libraries allow the user to provide custom functionality that is executed when a potential ray surface interaction was encountered to determine if the interaction was valid or traversal should be continued. This is e.g.…

Graphics · Computer Science 2020-01-01 Stefan Zellmann

Object-oriented programming languages such as Java and Objective C have become popular for implementing agent-based and other object-based simulations since objects in those languages can {\em reflect} (i.e. make runtime queries of an…

Programming Languages · Computer Science 2007-05-23 Duraid Madina , Russell K. Standish