
Johan Eklöf
Landsbygd som blomstrar med data
Landsbygd som blomstrar med data
visste du?
Visste du att slakterier betalar producenten 0,5 - 3,5 kr/kg extra för kravmÀrkt nötkött, men att kunden i butik betalar en tio gÄnger större prisskillnad?
Visste du att budgeten för nationellt vÀgunderhÄll inte rÀcker för att upprÀtthÄlla nuvarande vÀgkvalité?
Visste du att antalet barn per kvinna sjunker globalt sÄvÀl som nationellt, men att det totala antalet barn i mÄnga landsbygdskommuner inte vÀntas sjunka (enligt befolkningsframskrivningar frÄn SCB) pga att barnfamiljer flyttar ut frÄn större stÀder.
Visste du att datan som lagras i elsparkcyklar kan anvÀndas för vÀgytemÀtningar av smÄ gator?
Visste du att upprepade mÀtningar med lÄg upplösning kan kombineras för att skapa tidsserier med högre upplösning Àven nÀr mÀtningarna sker Äratal ifrÄn varandra?
salbo.ai:s vision Àr att bidra till ett hÄllbart samhÀlle genom att skapa datadrivet, faktabaserat beslutsstöd som gör det möjligt för vÄra gemensamma tillgÄngar att hÄlla lÀngre och anvÀndas mer effektivt. Med en unik kompetens inom avancerad analys och artificiell intelligens tillÀmpad pÄ transport, infrastruktur och byggnation skapar salbo.ai handlingsbara insikter frÄn stora och smÄ datamÀngder.
kontakt
Vad skulle vi kunna rÀkna ut hÀrnÀst?
Number crunching and stuff
Here are some other projects I've worked on:

Alignment despite errors
An algorithm to deal with highly segmented data with variable sample rate, spatially correlated and uncorrelated measurement errors, convergence to true locations, and consistency over time. The practical feasibility of the algorithm is demonstrated on empirical track geometry measurement data from the British railway network.
Machine learning
Signal processing on EEG data
About finding potential electroencephalography parameters for identifying clinical depression. My report describes the process of using visualisation in Freq to understand the shape of the signal which helps with interpreting results and helps with the development of model parameters. The project also improved Freq to cope with the size of the weeklong EEG datasets.
Pikkoserver Architecture
Massive multiplayer server architecture
I designed the server architecture of a game winning a Guinness World Record for the largest online first-person shooter battle (MMOFPS). The video shows the server architecture in action.
Â
See this other video for more details on the server architecture.

Freq
Shaders, big data, signal processing, multicore processing, C++, Cross platform, Qt and QML
Freq is a modern approach to frequency analysis. It is a cross-platform application that makes it easy to explore the contents of long and detailed time-series.
sevendeadlysins.js
WebGL, javascript and shaders
I made an invitation demo to the computer festival Birdie in Uppsala, Sweden. It is a javascript demo where most effects are rendered in WebGL through ray marching written in the OpenGL Shader Language. You can run sevendeadlysins.js in your own browser.
Â
I'm also a member of the Birdie Scene Crew who organises the creative competions at Birdie.

Manycore processing
GPGPU Computing, Big Data, Internet of things, Realtime Cloud Computing, Heterogeneous Computing
Many of the projects I've worked on have been about pushing through hardware limitations. Sometimes I design a brand new architecture to juggle tons of simultaneous communication channels. Other times I redesign the code flow to better suit the underlying architecture and carefully consider bandwidth versus latency to decide what to precompute and what to recompute, where in one assignment I was able to deliver a 3000x speed-up. Yet other times I use mathematical transformations to find alternate ways of computing the same results with fewer operations.
C++ exception backtraces
Runtime info
My Backtrace class wraps compiler specific calls for traversing the call stack and translating it to symbol names. It is typically used together with boost exceptions or when catching segmentation fault signals in order to log the complete call stack upon unexpected behaviour.

index.png.html
A javascript-in-png trick, ray marching and metaballs.
I did my own implementation of a neat png trick. It uses the .png image format to compress the source code of a small javascript demo. The final source code was 7 kB, which was minified to 4 kB and then compressed with png to a final self-contained demo size of only 2 kB.
Â
The animation is a webgl shader with a procedurally generated annoying tune. The whole javascript-in-png trick might not work in all browsers.
shared_state<T>
C++ smart pointer and mutex monitor
shared_state<T> is a smart pointer in C++ that acts as an object monitor. For objects shared between threads shared_state ensures that the object is always protected with mutually exclusive access while being syntactically similar to a regular C pointer.
Â
Event storming workshop...
... Àr ett effektivt verktyg salbo.ai kan applicera för att (i tur och ordning)
1. identifiera flöden,
2. hitta en gemensam terminologi,
3. identifiera flaskhalsar, och
4. hitta nya vÀgar eller automatisera dÀr det passar.
salbo.ai Àr nyfikna pÄ om du upplever att din
organisation har nÄgra frustrerande flaskhalsar?
Hitta mig
© 2024






