Writing fast Julia
From the example of a gradient descent for linear regression, we will measure performance, benchmark, enable type inference, reduce memory allocations
and fix the problems.
Graph Neural Networks have been very successful in solving machine learning tasks such as classification and prediction at the level of nodes, edges, and graphs. This talk will provide a comprehensive overview of GNN architectures, from standard graphs to heterogeneous graphs, which model various relationships among different types of nodes, and temporal graphs, which incorporate dynamic...
We present new algorithms that can solve the problem of approximating and over/under-estimating univariate functions with piecewise linear (PWL) functions with the minimum number of linear segments given a bound on the pointwise approximation error allowed. These new algorithms can solve the problem in quasi-logarithmic time on a very broad class of errors types. Such algorithms find many...
Distributing the total cost of a service-providing system among its users is a challenging topic in game theory. Shapley proposed in 1953 a cost-sharing mechanism nowadays known as the Shapley value. It is usually interpreted as assigning to each player the cost this player induces on the system. This cost assignment has many desirable properties but it is very time-consuming to compute...
Introduction
Artelys Knitro is a mathematical programming solver for nonlinear and mixed-integer nonlinear problems. As input, it accepts linear structures, quadratic structures and black-box functions, with if possible, their first and second-order derivatives. Knitro relies on derivative-based algorithms to find locally optimal solutions. Knitro finds the global optimum for convex...
We first introduce in this tutorial the indirect shooting method and the direct method in numerical optimal control on a basic example. We focus on the use of Julia packages to implement such methods: JuMP.jl [1], OptimalControl.jl [2, 3, 4], NonlinearSolve.jl [5], MINPACK.jl [6]. Then, we present how to combine direct and indirect methods to solve an optimal control problem with a...
In this presentation, we address optimal control problems involving loss control regions. In this context, the state space is partitioned into disjoint sets referred to as regions, which are classified into two types: control regions and loss control regions. When the state belongs to a control region, the control is permanent (i.e., the control value can be modified at any time). On the...
Using kites to collect wind power and generate energy has been intensively studied in the last decade, see e.g. the survey by M. Diehl et al. in [1]. In the framework of the KEEP (Kite Electrical Energy Power) funded by CNRS and gathering researchers from ENSTA Bretagne (well acquainted with the topic after previous studies on kites [2], most notably for...
It's 2024, are you still computing gradients by hand? Shame on you.
Thanks to Automatic Differentiation (AD), you can build awesome optimization or machine learning algorithms and let the computer worry about derivatives on its own. Well, mostly.
In Python, life is simple: choose an AD framework first (PyTorch or JAX), then write some code in that framework, and it should work out...
We present a novel interior-point method to solve nonlinear programs on graphical processing units (GPUs). The classical interior-point method solves a sequence of symmetric indefinite linear systems, or Karush-Kuhn-Tucker (KKT) systems, that are increasingly ill-conditioned as we approach the solution. Solving a KKT system with traditional sparse factorization methods involves numerical...
The challenges of climate change force industrials to carefully analyze the resilience of their assets to anticipate future weather conditions. In particular, the estimation of future extreme hydrometeorological events, like the frequency of long-lasting dry spells, is critical for hydropower/nuclear generation or agriculture. Stochastic Weather Generators (SWG) are essential tools to...
This presentation introduces the use of Julia and JuMP in the development of OptiGen, a next-generation optimizer tailored for renewable energy generation and battery management within the Australian National Electricity Market (NEM). OptiGen is designed to optimize the performance of utility-scale batteries and DC-coupled wind and solar plants, catering to both scheduled and non-scheduled...
I will present a Julia package. This package proposes two statistical tests aiming at testing uniformity of samples of data points on homogeneous compact Polish spaces. Such tests are based on the computation of nearest neighbours distances.
I will show numerical results on the flat torus, the circle, the sphere, and a subset of the Poincaré disk.
The Ring Star Problem consists in minimizing the cost of a spanning network made of a cycle called the ring to link a subset of nodes called hubs (to be determined), and to connect each terminal, i.e., non-hub, to a single hub at minimum cost. The package RingStarProblems.jl solves a resilient variant of the Ring Star Problem named 1-R-RSP in which the failure of a node in a given subset of...
Data arising from large cancer studies often lack reliable information about the cause of death (supposed binary: death from the studied cancer or from other causes) for each individual. Relative survival analysis is a subfield of survival analysis specifically targeted at this particular type of datasets. The field's goal is to extract survival curves that only takes into account the deaths...
The integration of renewable energy sources in our energy systems is a global objective to mitigate global warming by reducing CO2 emissions, especially when replacing fossil fuels. International agencies consistently highlight the importance of increasing renewable energy penetration to reduce temperature increases over the coming decades. In the context of smart microgrids, Distributed...