Key Workflows
...
Evolutionary Algorithm
Asset Placement Logic
3 min
the asset placement algorithm handles the complex task of checking the validity of installing various electricity ( towers, conductors, cables ) and onshore pipeline ( trenched, directional drilled, microtunneled ) assets along the route while doing this, the algorithm must satisfy various constraints such as user defined asset priority e g wood poles as top priority, then trenched cable, then hdd technical constraints and no go zones either elevation and slope limits or specific data layers set to nogo minimum distance requirements e g "don't use hdd unless you can do it for at least 300 feet" parameters nogo zones layers where an asset cannot be placed (e g if you cross a river, don't use trenched cable for it) prioritise asset within layer layers where an asset must be placed (e g if you cross a motorway, use hdd) overall asset priority list defines an priority order across all available assets minimum section length (aka minimum distance) the minimum length of a continuous stretch for each asset placed (e g allow for switching from steel towers to hdd only if you can hdd for at least 1500m continuously) solution summary the algorithm operates in two main phases per asset processing in the technical components exclude any asset stretches violating minimum distance where an asset is being placed because it is in one of its "required layers", try extending the distance of the asset(s) to meet their minimum distance requirements this is essentially a proxy for applying a "setback distance" for specific crossings try symmetric expansion first (50%/50%) if that doesn’t work, try asymmetric (70%/30% on each side) multi asset prioritisation place assets in their "required layers" as above resolve any overlaps in required layers by using the overall asset priority list i e pick the highest priority asset fill in the remaining locations along the route in order of priority until minimum distance is satisfied for all stretches or there are no assets left to place generate placement decision log log any constraint breaks and “distance to feasibility” (a measure of how infeasible this particular constraint break is for the route) the above description has been represented in the visual form below