Throughput analysis of junction designs

Post all other topics which do not belong to any other category.
gustaphe
Inserter
Inserter
Posts: 27
Joined: Thu Oct 27, 2016 6:50 am
Contact:

Throughput analysis of junction designs

Post by gustaphe »

I just passed a course in college level experimental design, which apparently means my report was statistically valid.
Might not be a very interesting read for everyone, but someone might like it.
If nothing else, it could be an inspiration for bringing Factorio into even more parts of your life.

Here's an excerpt:
4.2 TL;DR
Use Selfdefeating’s celtic knot intersection [8] if you want to look cool while going fast,
and Drizznarte’s four-way crossing [4] if you want fast left turns.
Nothing conclusive can be said on roundabouts vs. crossings.
Attachments
Factorio_train_throughput_analysis-online.pdf
(2.75 MiB) Downloaded 941 times
Koub
Global Moderator
Global Moderator
Posts: 7774
Joined: Fri May 30, 2014 8:54 am
Contact:

Re: Throughput analysis of junction designs

Post by Koub »

You should definitely have a discussion with aaaargh :)
Koub - Please consider English is not my native language.
User avatar
Ohz
Fast Inserter
Fast Inserter
Posts: 199
Joined: Tue Feb 03, 2015 11:40 am
Contact:

Re: Throughput analysis of junction designs

Post by Ohz »

Is there an interest to do a double sized junction? Junction so large that a train can fit between any crossed rails?
I'm not english, sorry for my mistakes
User avatar
featherwinglove
Filter Inserter
Filter Inserter
Posts: 579
Joined: Sat Jun 25, 2016 6:14 am
Contact:

Re: Throughput analysis of junction designs

Post by featherwinglove »

I heard of a guy on Reddit who failed his Master's thesis because he was playing Factorio too much to defend his dissertation. I'm glad to see someone using Factorio in his post-sec homework instead! :mrgreen:
aaargha
Filter Inserter
Filter Inserter
Posts: 333
Joined: Wed Dec 07, 2016 8:35 am
Contact:

Re: Throughput analysis of junction designs

Post by aaargha »

Oooh nice, more train science. Using statistical analysis to ensure the results are actually valid? What sorcery is this?
Koub wrote:You should definitely have a discussion with aaaargh :)
Naaahh :D

Ahem, anyway...

I've been doing something similar over in another thread and, if you want to keep exploring this beyond your report, I'd be really grateful if you took a look and, if you're still interested, perhaps discuss improvements to the setup/measuring? I think my current setup does/could do most of the things in the outlook, though I'm not sure if my methods are good enough.

Now on to your work: Your approach seems much more precise than what I'm using, I also like that you can measure things for individual paths. Looking at this I really should make some improvements to automating my tests more.
gustaphe wrote:In order to eliminate risk of blockage, each destination needed at least three stations,to allow all three trains to visit simultaneously
While this is sound reasoning won't using terminus stations pretty much make this moot? Trains leaving/entering the stations still have to fight for the same blocks, thus blocking each other, would not a RoRo design be preferable in this case?

As for the bias for/against N, could this possibly be explained by trains having different priorities when trying to enter shared blocks? My current theory (only supported by really basic testing) is that it's based on train ID, basically build order, where the lowest ID has the highest priority as it is processed first. If nothing else this could possibly skew the results when comparing left/right turns to going straight.

I also think it's interesting that the Celtic knot is not the clear winner when it comes to left turn performance as it is the only intersection of those tested that allows two opposing trains to turn left at the same time.

I'd take a closer look a the signalling of the intersections but the pictures a bit too small for details, from what I can see though is seems like there are some differences in how optimized the signals are on each intersection. Also, just for curiosity, do you use "properly" sized output blocks or are you going for straight throughput?

I'd guess that the reason you're having trouble differentiating A, B and E is probably that they're all good enough to handle the relatively small amount of traffic you're using. But it's pretty hard to compare as I'm measuring the amount of trains passing the intersection in 15 minutes and you're using station to station time. (I was about to do some serious errors trying to compare throughput with this :) )

Anyway, it was a very interesting read, good job and thank you for sharing.
Ohz wrote:Is there an interest to do a double sized junction? Junction so large that a train can fit between any crossed rails?
If you post a BP string in the thread above I'd be happy to run it through my setup, at least as long as you keep it shorter than about 1.5k tiles :)
gustaphe
Inserter
Inserter
Posts: 27
Joined: Thu Oct 27, 2016 6:50 am
Contact:

Re: Throughput analysis of junction designs

Post by gustaphe »

Honestly, I'm not sure if I even tried to see if someone had done this before me. My priority was passing the course, helping the community was secondary a bonus.

The reason I went with stations like this was simplicity. Not to compare it to RoRo, but the most important part for me was that trains could clear the testing area, because I figured any competition at the choke point would cancel out in the statistics.

I'm thinking the N bias might otherwise be caused by whatever did the inserter weirdness. When that was fixed, this report was long ago submitted. Might redo the tests to see, if I find the time.
Now that you can get train ID from a station to the circuit network (again, implemented too late for me to use :x) your theory should be quite easilly testable. I don't think I ran enough trains for them to ever arrive at the junction simultaneously, or for enough of them to do so to have an effect.

The signalling is one of my insecurities about the experiment, I can't say for sure that they are optimized, or even equally unoptimized. I tried to be consistent, but I'm not certain I managed.

But yes, all in all I'm satisfied. I'll take a look at your stuff soon and see if I can add anything, but at a glance your setup seems randomized enough for statistical analysis to be unneccessary.
gustaphe
Inserter
Inserter
Posts: 27
Joined: Thu Oct 27, 2016 6:50 am
Contact:

Re: Throughput analysis of junction designs

Post by gustaphe »

featherwinglove wrote:I heard of a guy on Reddit who failed his Master's thesis because he was playing Factorio too much to defend his dissertation. I'm glad to see someone using Factorio in his post-sec homework instead! :mrgreen:
You have to pass a lot of courses to get an engineering degree, so I can't guarantee I won't be there with him. So far I don't think it has cost me any grades that I wasn't going to fail anyway.
Post Reply

Return to “General discussion”