Getting inspired by open software for a web site: g3n.fyi
This is a modal window.
The media could not be loaded, either because the server or network failed or because the format is not supported.
Formal Metadata
Title |
| |
Title of Series | ||
Number of Parts | 490 | |
Author | ||
License | CC Attribution 2.0 Belgium: You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor. | |
Identifiers | 10.5446/46987 (DOI) | |
Publisher | ||
Release Date | ||
Language |
Content Metadata
Subject Area | ||
Genre | ||
Abstract |
|
00:00
SicSoftware developerArithmetic meanData conversionNumberWordMappingWeb 2.0Sign (mathematics)String (computer science)AreaPhysical systemSeries (mathematics)FreewareData compressionMultiplication signServer (computing)Representation (politics)ResultantPresentation of a groupHash functionWebsiteWhiteboardCurveCombinational logicSlide ruleDifferent (Kate Ryan album)Computer animation
04:59
MaizeMappingDirection (geometry)WebsiteVideo gameCombinational logicWordLecture/Conference
05:36
CurveLevel (video gaming)Travelling salesman problemOpen sourceBitMechanism designIntegerRepresentation (politics)CodeTesselationSource codeDigitizingAreaPhysical systemTerm (mathematics)ApproximationMachine codeLink (knot theory)User interfaceRoutingWebsiteString (computer science)Hash functionOrder (biology)DistanceResultantPoint (geometry)Proof theoryProjective planeSubject indexingService (economics)Address spacePosition operatorMultiplication signUniqueness quantificationStandard deviationFlow separationWordComplete metric spaceFamilyPresentation of a groupInterface (computing)DemosceneArithmetic meanSinc functionMetropolitan area networkLecture/Conference
10:35
Projective planeUser interfaceDistortion (mathematics)DistanceApproximationTravelling salesman problemMathematical optimizationRoutingInterface (computing)ResultantoutputAreaLecture/ConferenceMeeting/Interview
11:21
ResultantAlgorithmMathematical optimizationoutputLecture/ConferenceMeeting/Interview
11:53
Physical systemRoutingBridging (networking)Meeting/Interview
12:18
Akkumulator <Informatik>Order (biology)SoftwareLevel (video gaming)Flow separationQuicksortInstance (computer science)Form (programming)Cache (computing)Meeting/Interview
13:10
Multiplication signSoftwareResultantFlow separationForcing (mathematics)Uniform resource locatorInformation securityComputer scienceRun time (program lifecycle phase)Filter <Stochastik>LogicDifferent (Kate Ryan album)AlgorithmComputer programmingMeeting/Interview
14:37
RoutingLevel (video gaming)NeuroinformatikWorkstation <Musikinstrument>Ocean currentMultiplication signComplex (psychology)Goodness of fitDisk read-and-write headMathematicianMathematical optimizationQuicksortImplementationLattice (order)Data conversionLecture/Conference
16:25
Point cloudOpen sourceFacebook
Transcript: English(auto-generated)
00:05
Good morning altogether. My name is Thomas Bremer. I'm from Germany. I'm a software developer. I'm working as a freelancer, mainly in the area of embedded systems. Geoscience or geospatial science is kind of my hobby, which on the one hand gives me lots of fun,
00:28
entertainment, hopefully useful results, but I don't have much time for it. And with this thing I'm going to present here, I've hit some big bubble, which might explode at some time.
00:56
So he's not the AV guy? Okay. You can recognize them by just sending t-shirts.
01:02
Yeah, okay, I expected that. This one is fast. Or something like this. So you added the camouflage. Yeah, well, for the remainder I need the slides.
01:24
Well, the first slide I can start, I can try to start my presentation without the slides, because the first stuff I can simply tell you. I started with a presentation or the idea of Thomas Arthur Edison, who, well, rumor has it that he has invented the light bulb, which isn't true.
01:45
He hasn't done it. It was a German called Heinrich Gübel, and Edison made it usable for the public, this light bulb. And this screw mount, which you know, or which maybe the elder people of you know from when we had these incandescent light bulbs to screw in.
02:08
They have different sizes, E10, E14, E27, and this E stands for Edison, so that's where his name has remained until today. But he's also famous for certain quotes he made, and one of them is, genius is 1% inspirations and 99% perspiration.
02:30
This also holds for me because I'm more on the 1% side, I have to say. And last year I've been here and there was a talk about this web server, 3geonames.org.
02:45
I have to correct the slides. I see there are some typos on it, on them. This web server had the feature that you give it some geocoordinates interactively by clicking, or it also had an API.
03:05
And you get back a combination of three city names worldwide, which represent this location. It's not a kind of compression, but it's kind of a mental compression because three words with meaning, or you maybe know them,
03:27
have more easily to remember than two long decimal numbers. And here, yeah, I try.
03:45
And he also had on this website, or he has on this website, a feature that you can encode these two geonames, these two-dimensional geocoordinates into a one-dimensional, so to say, hash string of 11 characters.
04:09
And the presenter also told about a Hilbert curve, which was, hey, you're binding me.
04:22
He also told about the Hilbert curve he used for this mapping, or for this conversation, to reduce the borders. He's also taking me away. I'm sorry. No, it's okay. You just have to do your work.
04:44
I'm on here for fun. I've already used it to watch TV and stuff like that.
05:08
Okay. Okay. Let's see. Okay. So, what I did then after, because I found the idea rather interesting, was I analyzed the website.
05:25
I had a closer look at it, so to say. And I saw that the mapping really works in both directions. You can enter geocoordinates and get the word combination or back. I already told you that there's an API which you can use.
05:44
There's a link to the source code, which is also appreciable in terms of open source. There's also a map in the user interface, but it's rather small. It's improvable, so to say. Also, the user interface around it is also improvable.
06:04
So, I had a closer look at the code. It has been written in Perl. The code is working as expected, but it's not easily readable. Then, in the code, there are some obstacles, so to say, or almost obstacles.
06:29
It's tweakable because some big integer representation is used for arbitrary size integers, which are not needed. There's a bit shuffling code in it, which is done in the most standard way, which is heavily tunable.
06:52
Also, the hashes I told you about. This 11-letter string consists of 26 characters, all alphabetic characters, and 10 digits.
07:09
There are other representations, which only use 32 characters and digits per letter to avoid some rude words, which might create such a mechanism.
07:26
So to say, this free geonames.org website represents a very good idea. It works, but it's still improvable in terms of UI and also coding style.
07:51
I would say it's maybe in the area of 50% if you use this Edison scale, as I called it.
08:01
But then there was the idea of the Hilbert curve. This now was the 1% inspiration for me, because when you do some research on it, then you find out you could do the following. You could just take one Hilbert curve or take several, take four of them, connect them to a cyclic Moore curve, put them on the map.
08:27
For the whole world, you can use this level zero OSM tile with a Mercator mapping, with a Mercator projection. Then what you can do is that you can take a point on this map, map it to the distance it has on this curve from a fixed origin you have to define.
08:57
And then if you have several points, you can map all of them and you can sort them according to this distance on the curve.
09:06
And the result is that this order you find is an approximation to the traveling salesman problem. It's a rather reasonable, not optimal, but reasonable route you find.
09:23
This has already been studied in the past. You find examples where Meals on Wheels have been using it and they really improved their driving times with that. You can also use it again for packet delivery, for geocaching, or for home care, wherever you have to visit many, many positions.
09:46
So imagine that you use this system as an addressing system for postal services. You give it this unique address and the postman simply has to sort his letters according to this index and travels them and he can do it rather fast.
10:17
So regarding the perspiration, as I said, I'm more on this one percent side.
10:24
Yeah, what I did or what I'm working on now is another proof of concept. I would like to make it a complete system. But as I said, I don't have the perspiration on the one hand.
10:43
And since it's only a hobby, I can't find the time for that. And there's even more inspiration just to improve the user interface. Regarding the routing, this TSP approximation only is according to the distance on the map.
11:07
If you have small areas, then you get, well, you get no or almost no distortion on a Mercator projection. And you get good results, but you can also use or you can further improve
11:23
the result if you use routing algorithms according to or using the roads and highways. And you can also use the result as an input for other optimization algorithms, like the two-opt algorithm, which run much faster than before.
11:44
They don't give better results, but they finish much earlier. Yeah, basically that was everything I wanted to tell you without this. Maybe we could make a little bridge. What is your question to the room?
12:05
My question to the room. Could you imagine to use such a system which very easily gives you a short round-trip route for whatever purpose?
12:22
As I already said, geocaching, if you want to find 10 caches on a data, so then you have to, well, if you are visiting a foreign place or, for instance, if you get to Brussels, you find several 10 geocaches on the map and then have to sort, have to order them according to your, have to find the visit order.
12:46
So that's what I wanted to say. Something like that, or if you know someone who does home care or works for DPD, or is a recharger, e-scooter recharger, recharger?
13:02
Well, anybody interested in this or could see? Somewhere and interested? Is there anybody, yeah? Sorry, could you?
13:21
Yeah, sorry. I work at the airport. I work actually with indoor wayfinding. We have a lot of contractors that need to go through different port rooms in the airport. It's quite interesting because they need to go through security filters and other things to
13:42
go somewhere in place and then you get out and you go to other places. I'm finished now, so I don't need a moment. Are you doing anything at all? I'm sorry, I have to just listen to you. Okay. Yes, but then we have more logic with how you cross security filters in the airport.
14:03
Yeah, but then even this algorithm I just presented, it could help you if you put another algorithm on it, which also considers the waiting times at the security filters to get, well, to quickly get a result
14:22
because those algorithms, if you have 10 or several 10 locations, usually they have certain, they have immense runtimes. They are rather slow because the traveling salesman program is one of the most complicated or most complex solving problems in computer science. It could help, yes.
14:47
Would a conversation at another time, another place be worthwhile for the two of you? Yeah, I think so. Well, you have something out of this meeting that I think will work for you.
15:01
Is there anybody else who has a question? Yeah, it's such a bummer with the screen, so I thought maybe it would be nice that if anyone's interest is tickled, we could try to point us to those resources which might have a trace of what you said.
15:37
So these addresses, you can have a look, but they are also currently at a low level of implementation, but, well, not really because they
15:51
are doing this Hilbert optimization, and then you can't stop it before that. They are doing a two-opt optimization to find an even shorter route.
16:12
Unfortunately, you have not been able to share your algorithms like last year. On the other hand, it sort of flew at the time of my head, but I'm not a mathematician.