Quantiles
Calculating quantiles is a standard way to summarize data. In the example below we have some small random data p(i,j,k) where we want to calculate quantiles at the 0, 25, 50, 75, and 100% level for...
View ArticleAdaptive Strawberry Algorithm?
In (1) a so-called Adaptive Plant Propagation or Adaptive Strawberry Algorithm is applied to a standard Economic Load Dispatch problem.I had never heard of adaptive strawberries or about this dispatch...
View ArticleWhat is this EPS in a GAMS solution?
I get this question a lot. The smallest example is model number 1 from the GAMS model library [1]: a tiny transportation model (originally from [2]). The linear programming (LP) model looks...
View ArticleBook: Designing Data-Intensive Applications
Was reading this during a long flight. Interesting review of the design decisions behind applications dealing with much (very much!) data.Martin Kleppmann, Designing Data-Intensive Applications,...
View ArticleQuantiles with Pandas
In [1] I showed how quantiles in GAMS are difficult, and how they can be calculated better in R. Here is some Python code to do the same:import pandas as pddf =...
View ArticleMinimizing Standard Deviation
In [1] an attempt was made to model the following situation:There are \(n=25\) bins (indicated by \(i\)), each with \(q_i\) parts (\(q_i\) is given).There are \(m=5\) pallets. We can load up to 5 bins...
View ArticleConference Scheduler
In [1,2] a Python-based conference scheduler is presented. The problem is as follows:There are events (i.e. talks) denoted by \(i\) and slots denoted by \(j\)Some restrictions include:Do not schedule...
View ArticleThe von Koch conjecture
Helge von Koch (1870-1924)Consider a tree graph \(G=(V,E)\) with \(n\) nodes and \(n-1\) arcs. We can label the nodes with unique numbers \(1,\dots,n\) and the arcs with unique numbers \(1,\dots,n-1\)...
View Articlevon Koch and Z3
Replica of the Zuse Z3 [5].In [1] we showed a MIP formulation to label a tree graph in a “graceful” way [2]. Here we use the SMT (Satisfiability Modulo Theories [3]) solver Z3 from Microsoft [4]. Z3 is...
View ArticleNumberlink Models
In the Numberlink puzzle [1] we need to connect end-points by paths over a board with cells such that:Each cell is part of a pathPaths do not crossE.g. the puzzle on the left has a solution as depicted...
View ArticleModeling environments for the 21st century?
Is this a prediction for the period through December 31, 2100? Anyway, some interesting points are brought forward. A comparison is made between GAMS, AMPL, AIMMS, solver specific C++ code, Pyomo and...
View Articlevon Koch and MiniZinc
A MiniZinc [1] version of the graceful labeling model in [3] was sent to me [4]. This looks actually quite nice, so therefore I reproduce it here:include"globals.mzn"; %% Definition of data% % Number...
View ArticleModern Distributed Optimization
SummaryMatt Adereth talks about the Black-box optimization techniques, what’s actually going on inside of these black-boxes and discusses an idea of how they can be used to solve problems today. He...
View ArticleMulti-objective Mixed Integer Programming and Z3
The tool \(\nu Z\) [1,2] is an optimization extension to the SMT solver Z3 [3]. It can actually generating Pareto optimal solutions for MIP problems, using an algorithm based on [6]. In [4,5] a small...
View ArticlePareto fronts in Z3: a large data set
In [1] a small multi-objective MIP is solved with Z3. Here we try a larger problem, an engineering design problem. It has three objectives and 2029 non-dominated solutions. The solution in the F space...
View Article“Coda is a next-generation spreadsheet designed to make Excel a thing of the...
Picture from [4]Not so easy in my opinion. Excel is the workhorse in many workplaces.https://www.theverge.com/2017/10/19/16497444/coda-spreadsheet-krypton-shishir-mehrotra (the title is from this...
View ArticleProfiling in visual studio
Somehow, I am often struggling to understand the output of profilers. This report of Visual Studio actually makes sense to me:I like the code highlighting. It gives a really quick overview of where...
View Articleno overlapping jobs
A standard problem in continuous time job-scheduling is to forbid jobs to overlap:\[\begin{align}&S_i \ge E_j\\ &\text{or}\\ &S_j \ge E_i\end{align}\] where \(S_i\) and \(E_i\) are start...
View ArticleSuguru
Suguru is another popular, Sudoku-like puzzle originating from Japan. We need to fill every block with unique numbers \(1,2,..,N_b\) where \(N_b\) is the number of cells in a block. (This implies a...
View ArticleSuguru: GAMS/MIP vs Python/Z3
For many logical puzzles a constraint solver like Z3 may be more suitable than a Mathematical Programming approach using a MIP solver. In [1] a MIP formulation was presented for Suguru puzzle. Now...
View Article