tvwenger / maxfield

An Ingress Linking and Fielding Strategy Generator
http://www.ingress-maxfield.com/
GNU General Public License v3.0
106 stars 56 forks source link

added inbound-only portals #34

Open jziolkowski opened 2 years ago

jziolkowski commented 2 years ago

Decided to test my idea from #33 , and it works as expected :)

PR adds support for inbound flag, which sets the maximum outbound links for a portal to 0, effectively forcing the algorithm to create only inbound links from other portals.

The plan supports only one inbound portal, otherwise the calculation takes forever to complete (if it completes at all).

The flag is exclusive with SBUL, raising the necessary error.

tvwenger commented 2 years ago

Thanks for working on this! I'm a bit concerned about the fact that having multiple "inbound" portals causes the calculation to slow down. I wonder if there is a way to make this more efficient?

Also, I wonder what will happen if one of the perimeter portals is marked as "inbound". The perimeter portals are typically where most of the outbound linking occurs, so I fear that marking a perimeter portal as "inbound" will crash the entire algorithm!

jziolkowski commented 2 years ago

I think the main reason of the increased calculation time is when you have two "inbound" portals that will optimally connect with each other. At least this is the case I observed.

I've added the inbound flag to a portal that was a perimeter one, and it worked :) It might reduce the optimization related to minimizing walking around the plan, but from logical perspective (correct me if I'm wrong) it doesn't really matter if the perimeter portal has links incoming/ongoing.

jziolkowski commented 2 years ago

This is the plan that took forever to complete (I actually interrupted it after like 5 mins).

Two perimeter portals flagged as inbound prevent the proper closing of the complete shape, therefore I think it will reach the limit of iterations and end with error

Old historic fire hydrant;https://www.ingress.com/intel?ll=52.354476,16.940088&z=17&pll=52.354476,16.940088;36
Siłownia;https://www.ingress.com/intel?ll=52.354657,16.936859&z=17&pll=52.354657,16.936859;0
Plac zabaw na Minikowie;https://www.ingress.com/intel?ll=52.354823,16.936309&z=17&pll=52.354823,16.936309;5
Piekarnia \"Bogienka\";https://www.ingress.com/intel?ll=52.347412,16.919552&z=17&pll=52.347412,16.919552;2
Figura Maryi z Dzieciątkiem;https://www.ingress.com/intel?ll=52.346793,16.918954&z=17&pll=52.346793,16.918954;2
Stacja rowerów miejskich Dworzec PKP;https://www.ingress.com/intel?ll=52.344148,16.892535&z=17&pll=52.344148,16.892535;10;inbound
Stary krzyż;https://www.ingress.com/intel?ll=52.35951,16.965249&z=17&pll=52.35951,16.965249;6
INOX W.Nawrocki Z.Januszewski Sp.j.;https://www.ingress.com/intel?ll=52.348933,16.954993&z=17&pll=52.348933,16.954993;19;inbound
Kamień Euro 2012;https://www.ingress.com/intel?ll=52.352432,16.955806&z=17&pll=52.352432,16.955806;3
Cross Minikowo;https://www.ingress.com/intel?ll=52.35474,16.964471&z=17&pll=52.35474,16.964471;6
Fort I Starołęka;https://www.ingress.com/intel?ll=52.360658,16.930176&z=17&pll=52.360658,16.930176;2
PDF Multipunkt;https://www.ingress.com/intel?ll=52.364223,16.930449&z=17&pll=52.364223,16.930449;3
Sponsorzy rady osiedla Minikowo;https://www.ingress.com/intel?ll=52.357147,16.945033&z=17&pll=52.357147,16.945033;5
Przydrożny Krzyż;https://www.ingress.com/intel?ll=52.353583,16.951781&z=17&pll=52.353583,16.951781;4
Fort Ia Boyen;https://www.ingress.com/intel?ll=52.363802,16.950367&z=17&pll=52.363802,16.950367;5
Cross;https://www.ingress.com/intel?ll=52.361605,16.935702&z=17&pll=52.361605,16.935702;0
Starołęka Chapel;https://www.ingress.com/intel?ll=52.361926,16.935819&z=17&pll=52.361926,16.935819;4
Św. Antoni;https://www.ingress.com/intel?ll=52.363737,16.932568&z=17&pll=52.363737,16.932568;5
St Anthony Church;https://www.ingress.com/intel?ll=52.363596,16.933083&z=17&pll=52.363596,16.933083;3
Starołęka Peron;https://www.ingress.com/intel?ll=52.366015,16.934749&z=17&pll=52.366015,16.934749;11
jziolkowski commented 2 years ago

Hi, any progress on this one? I know, I don't have as much time for personal projects as I'd like to ;)

Also I have some more ideas for possible PRs, will there be any interest in them?