IP Library Granted Patent US 11,770,184
Granted Patent B2
US 11,770,184 · App. 17/327,068 · Granted Sep 26, 2023

Satellite contact customization

Inventors: Brad Arnold Bode (Pacific Palisades, CA); Kyle Stephen Polich (Los Angeles, CA)
Assignee: ATLAS Space Operations, Inc.
H04B7/18547H04B7/18513H04B7/18519H04B7/18526H04B7/18539
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,770,184
App. No.
17/327,068
Granted
Sep 26, 2023
Kind
B2
Abstract

Described herein are systems, methods, media, and devices for generating a satellite program for contacting satellites. In some embodiments, data including one or more targets for accessing a satellite constellation is obtained. Based on the data, a set of representations may be generated and candidate satellite constellation access programs may be determined based on the set of representations. For each program, a first score may be computed for each target to obtain a first set of scores, and a second score may be computed for each first score of the first set of scores to obtain a second set of scores. A satellite constellation access program may be selected from the candidate satellite access programs based on the second set of second scores.

Claims (69)

1. A system for generating a satellite program for contacting satellites, the system comprising:

a computer system that comprises one or more processors programmed with computer program instructions that, in response to being executed, effectuates operations comprising:

retrieving, from a satellite location database, satellite visibility data comprising information indicating when each of a plurality of satellites of a satellite constellation is visible by satellite ground stations, the satellite visibility data being computed based on an orbital trajectory of each satellite of the plurality of satellites;

obtaining client data comprising satellite constellation access requests of a client for contacting the plurality of satellites, wherein:

the satellite constellation access requests comprise satellite constellation access requirements and satellite constellation access targets, and

each of the satellite constellation access targets has a weight indicating a level of importance of that satellite constellation access target;

filtering the satellite visibility data based on the satellite constellation access requirements to obtain filtered satellite visibility data, wherein the filtered satellite visibility data indicates temporal intervals capable of being allocated to the client for contacting the plurality of satellites;

selecting, based on the satellite constellation access targets, at least one utility function from a plurality of utility functions to represent the satellite constellation access targets;

generating utility data representing the at least one utility function having parameters tuned based on the satellite constellation access targets;

determining a plurality of candidate satellite constellation access programs for the client based on the utility data, the filtered satellite visibility data, and the weight associated with each of the satellite constellation access targets, wherein each of the plurality of candidate satellite constellation access programs indicates a respective subset of temporal intervals allocatable to the client to access a satellite ground station to contact one or more of the plurality of satellites;

for each of the plurality of candidate satellite constellation access programs,

computing a quality score for each of the satellite constellation access targets, wherein the quality score indicates a level of compliance for the client based on a value associated with each of the satellite constellation access targets; and

computing a total quality score for the client based on the quality score for each of the satellite constellation access targets and the weight associated with each of the satellite constellation access targets;

generating a ranking of the plurality of candidate satellite constellation access programs based on the total quality score computed for each of the plurality of candidate satellite constellation access programs; and

selecting, based on the ranking of the plurality of candidate satellite constellation access programs, a satellite program for the client, wherein the satellite program indicates a set of temporal intervals to be allocated to the client for accessing a satellite ground station to contact one or more of the plurality of satellites of the satellite constellation.

2. The system of claim 1 , wherein the operations further comprise:

generating connectivity data for establishing a connection to the satellite ground station during each of the set of temporal intervals specified by the selected satellite constellation access program; and

providing the connectivity data to a client device associated with the client such that the client is authorized to establish a secure connection to the satellite ground station during each of the set of temporal intervals.

3. The system of claim 1 , wherein:

the satellite constellation access requirements comprise:

a minimum amount of time required during each contact with the one or more of the plurality of satellites;

a maximum amount of time required during each contact with the one or more of the plurality of satellites; and

a minimum number of contacts per day required with the one or more of the plurality of satellites; and

the satellite constellation access targets comprise:

an average amount of time for contacting the one or more of the plurality of satellites;

a target number of contacts per day with the one or more of the plurality of satellites; and

a maximum amount of time between consecutive contacts with the one or more of the plurality of satellites.

4. The system of claim 1 , wherein the plurality of utility functions comprise:

a logistic function including at least a shape parameter and an offset parameter;

a Gaussian distribution function including at least a mean parameter and a standard deviation parameter;

a truncated Gaussian distribution function including at least the mean parameter, the standard deviation parameter, and a truncation parameter; and

a half-life function including at least an initialization parameter and a decay rate parameter.

5. The system of claim 1 , wherein computing the total quality score further comprises:

retrieving, from a client score database, a previous total quality score associated with the client, the previous total quality score being computed based on previous satellite constellation access programs selected for the client; and

generating the total quality score based on the previous total quality score, the quality score for each of the satellite constellation access targets, and the weight associated with each of the satellite constellation access targets.

6. The system of claim 1 , wherein the operations further comprise:

retrieving a pre-determined quality score threshold for the client;

determining a tier boost to apply to the total quality score in response to determining that the total quality score is less than the pre-determined quality score threshold;

for each of the plurality of candidate satellite constellation access programs, computing an updated total quality score based on the total quality score and the tier boost, wherein the tier boost is applied to improve the total quality score for the client; and

generating an updated ranking of the plurality of candidate satellite constellation access programs based on the updated total quality score computed for each of the plurality of candidate satellite constellation access programs; and

selecting, based on the updated ranking of the plurality of candidate satellite constellation access programs, an updated satellite program for the client.

7. The system of claim 1 , wherein the operations further comprise:

generating updated utility data representing the at least one utility function having the parameters modified based on the satellite constellation access targets;

determining an updated plurality of candidate satellite constellation access programs for the client based on the updated utility data, the filtered satellite visibility data, and the weight associated with each of the satellite constellation access targets;

for each of the updated plurality of candidate satellite constellation access programs:

computing an updated quality score for each of the satellite constellation access targets; and

computing an updated quality metric for the client based on the updated quality score for each of the satellite constellation access targets and the weight associated with each of the satellite constellation access targets;

generating an updated ranking of the updated plurality of candidate satellite constellation access programs based on the updated quality metric computed for each of the updated plurality of candidate satellite constellation access programs; and

selecting, based on the updated ranking of the updated plurality of candidate satellite constellation access programs, an updated satellite program for the client.

8. The system of claim 1 , wherein the operations further comprise:

modifying at least one weight associated with the satellite constellation access targets;

determining an updated plurality of candidate satellite constellation access programs for the client based on the utility data, the filtered satellite visibility data, and the at least one modified weight associated with the satellite constellation access targets;

for each of the updated plurality of candidate satellite constellation access programs:

computing an updated quality score for each of the satellite constellation access targets; and

computing an updated quality metric for the client based on the updated quality score for each of the satellite constellation access targets and the at least one modified weight associated with each of the satellite constellation access targets;

generating an updated ranking of the updated plurality of candidate satellite constellation access programs based on the updated quality metric computed for each of the updated plurality of candidate satellite constellation access programs; and

selecting, based on the updated ranking of the plurality of candidate satellite constellation access programs, an updated satellite program for the client.

9. The system of claim 1 , wherein the operations further comprise:

obtaining an additional plurality of candidate satellite constellation access programs for an additional client, the additional client, wherein:

the additional client provides additional satellite constellation access requests including additional satellite constellation access targets and additional weights associated with each of the additional satellite constellation access targets, and

at least one of the additional satellite constellation access targets is the same as at least one the satellite constellation access targets of the client; and

for each of the plurality of candidate satellite constellation access programs, computing an additional total quality score for the additional client based on the total quality score computed for the client, wherein the satellite program is selected for the client based on the ranking of the plurality of candidate satellite constellation access programs and the additional total quality score computed for the additional client for each of the plurality of candidate satellite constellation access programs to determine an impact of a given candidate satellite constellation access program on the additional client.

10. The system of claim 1 , wherein each of the plurality of candidate satellite constellation access programs indicates (i) a time interval that a satellite of the satellite constellation is available to be contacted by the client via a satellite ground station and (ii) that accessing the satellite during the time interval satisfies the satellite constellation access requirements, computing the total quality score for each of the plurality of candidate satellite constellation access programs comprises:

determining whether an additional candidate satellite constellation access program associated with an additional client also indicates a same time interval for accessing the satellite of the satellite constellation;

determining whether the client or the additional client is to be allocated the time interval based on (i) the satellite constellation access targets of the client, (ii) the weight associated with each of the satellite constellation access targets of the client, (iii) satellite constellation access targets of the additional client, and (iv) weights assigned to the satellite constellation access targets of the additional client; and

calculating the total quality score for each of the plurality of candidate satellite constellation access programs based on a determination that:

the client is to be allocated the time interval,

the additional client is to be allocated the time interval, or

neither the client nor the additional client is to be allocated the time interval.

Assignments (5)
RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 72586/0606 Recorded Dec 29, 2025
From: ALTER DOMUS (US) LLC
To: ATLAS SPACE OPERATIONS
Reel/Frame 074108/0415 →
SECURITY INTEREST Recorded Nov 14, 2025
From: ATLAS SPACE OPERATIONS, LLC; YORK SPACE SYSTEMS LLC
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 072911/0519 →
CERTIFICATE OF CONVERSION Recorded Nov 4, 2025
From: ATLAS SPACE OPERATIONS, INC.
To: ATLAS SPACE OPERATIONS, LLC
Reel/Frame 073463/0459 →
SECURITY INTEREST Recorded Oct 15, 2025
From: ATLAS SPACE OPERATIONS, LLC
To: ALTER DOMUS (US) LLC
Reel/Frame 072586/0606 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 21, 2021
From: BODE, BRAD ARNOLD; POLICH, KYLE STEPHEN
To: ATLAS SPACE OPERATIONS, INC.
Reel/Frame 056315/0865 →
Continuity (1)
Related Publication 20220376777A1 · Nov 24, 2022