Skip to main content
. 2025 Dec 11;25(24):7538. doi: 10.3390/s25247538
Algorithm 3 Weighted Algorithm
  • Input: 

    TLE set, IS (observer ID), location (observer coordinates), Weight(), RxProbability()

  • Output: 

    sat_id of the best upcoming pass based on predicted network utility

  •   1:

    passes ← UpcomingSatellitePasses(TLEs, location)

  •   2:

    if passes is empty then return No passes available

  •   3:

    end if

  •   4:

    if size(passes) = 1 then return passes[0].sat_id

  •   5:

    end if

  •   6:

    max_expected_reward ← −∞

  •   7:

    best_pass ← NULL

  •   8:

    for all pass in passes do

  •   9:

        sat_id ← pass.sat_id

  • 10:

        weight ← Weight(sat_id)

  • 11:

        rx_prob ← RxProbability(sat_id)

  • 12:

        kest← EstimateCompetingStations(sat_id, location)

  • 13:

        expected_reward ← (weight * rx_prob) / kest

  • 14:

        if expected_reward > max_expected_reward then

  • 15:

            max_expected_reward ← expected_reward

  • 16:

            best_pass ← pass

  • 17:

        end if

  • 18:

    end for

  • 19:

    return best_pass.sat_id