US 12,304,668 B2
Satellite constellation scheduling
Skylar Cox, North Logan, UT (US); Justin Whitaker, Logan, UT (US); John Humble, Logan, UT (US); and Greg Droge, Nibley, UT (US)
Filed by Utah State University Space Dynamics Laboratory, North Logan, UT (US)
Filed on Sep. 20, 2022, as Appl. No. 17/933,602.
Claims priority of provisional application 63/246,261, filed on Sep. 20, 2021.
Prior Publication US 2023/0166873 A1, Jun. 1, 2023
Int. Cl. B64G 3/00 (2006.01); B64G 1/10 (2006.01); G06F 9/48 (2006.01)
CPC B64G 3/00 (2013.01) [G06F 9/4881 (2013.01); B64G 1/1007 (2013.01); B64G 1/1021 (2013.01)] 15 Claims
OG exemplary drawing
 
1. A method comprising:
generating communication graph nodes for at least one satellite wherein a node score is assigned to each communication graph node, the communication graph nodes comprise backbone nodes that represent the at least one satellite not performing a task and connect to every target communication graph node with a time value between a given backbone node and a subsequent backbone node;
calculating communication graph edges from the communication graph nodes for the at least one satellite, wherein the communication graph nodes and the communication graph edges comprise a communication graph;
calculating node scores for each communication graph edge by assigning the node scores of each communication graph node to a corresponding communication graph edge that connects to the communication graph node as edge scores and edge costs, wherein the edge scores describe a benefit associated with the corresponding communication graph node and the edge costs represent a transition between communication graph nodes based on a slew performed, a vector x of all edge flows xi that represents flow along a given edge ei for an optimization variable i, and a memory vector y of all memory needs ylk for the at least one satellite at given times k;
solving the communication graph to minimize slewing the at least one satellite and prevent each element of the memory vector from exceeding a maximum memory capacity by maximizing the utility uTz subject to Dx=b, Agx≤1ng, Adataz=bgdata, xi∈{0, 1}∀i, 0≤yl,k≤yl,max ∀ l,k, and z=[xTyT]T to yield a communication plan, wherein u is the utility of all utility ui associated with the optimization variable i, D is an incidence matrix, b is a right-angle hypotenuse-side congruence of a flow constant, Ag is a group constraint matrix, bgdata is a right-angle hypotenuse-side congruence of a group constraint, l is a given satellite, and z is all optimization parameters;
generating a points-of-interest plan from the communication plan; and
controlling the at least one satellite based on the points-of-interest plan by slewing the at least one satellite between orientations for each communication graph node.