DE202013012472U1 - Satellitenplanungssystem - Google Patents
Satellitenplanungssystem Download PDFInfo
- Publication number
- DE202013012472U1 DE202013012472U1 DE202013012472.5U DE202013012472U DE202013012472U1 DE 202013012472 U1 DE202013012472 U1 DE 202013012472U1 DE 202013012472 U DE202013012472 U DE 202013012472U DE 202013012472 U1 DE202013012472 U1 DE 202013012472U1
- Authority
- DE
- Germany
- Prior art keywords
- events
- event
- data
- scheduling
- schedule
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
- 238000013439 planning Methods 0.000 title description 4
- 238000012358 sourcing Methods 0.000 claims abstract description 213
- 238000007405 data analysis Methods 0.000 claims abstract description 11
- 238000003384 imaging method Methods 0.000 claims description 152
- 238000004891 communication Methods 0.000 claims description 21
- 238000000034 method Methods 0.000 description 186
- 230000001186 cumulative effect Effects 0.000 description 64
- 238000004458 analytical method Methods 0.000 description 50
- 230000006870 function Effects 0.000 description 46
- 108091092878 Microsatellite Proteins 0.000 description 27
- 230000008569 process Effects 0.000 description 26
- 238000004422 calculation algorithm Methods 0.000 description 21
- 238000012423 maintenance Methods 0.000 description 20
- 238000012913 prioritisation Methods 0.000 description 18
- 238000013459 approach Methods 0.000 description 17
- 230000000875 corresponding effect Effects 0.000 description 15
- 238000007726 management method Methods 0.000 description 13
- 230000008901 benefit Effects 0.000 description 12
- 230000015654 memory Effects 0.000 description 11
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 10
- 238000010586 diagram Methods 0.000 description 10
- 125000002015 acyclic group Chemical group 0.000 description 9
- 238000013500 data storage Methods 0.000 description 8
- 230000006855 networking Effects 0.000 description 8
- 230000002596 correlated effect Effects 0.000 description 7
- 230000000694 effects Effects 0.000 description 7
- 238000005457 optimization Methods 0.000 description 6
- 238000012546 transfer Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 230000007613 environmental effect Effects 0.000 description 5
- 230000001052 transient effect Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 4
- 206010038743 Restlessness Diseases 0.000 description 3
- 229910021389 graphene Inorganic materials 0.000 description 3
- 208000014674 injury Diseases 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 239000000203 mixture Substances 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 241001136792 Alle Species 0.000 description 2
- 208000027418 Wounds and injury Diseases 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000006378 damage Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000009472 formulation Methods 0.000 description 2
- 238000005065 mining Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000008439 repair process Effects 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- BUHVIAUBTBOHAG-FOYDDCNASA-N (2r,3r,4s,5r)-2-[6-[[2-(3,5-dimethoxyphenyl)-2-(2-methylphenyl)ethyl]amino]purin-9-yl]-5-(hydroxymethyl)oxolane-3,4-diol Chemical compound COC1=CC(OC)=CC(C(CNC=2C=3N=CN(C=3N=CN=2)[C@H]2[C@@H]([C@H](O)[C@@H](CO)O2)O)C=2C(=CC=CC=2)C)=C1 BUHVIAUBTBOHAG-FOYDDCNASA-N 0.000 description 1
- 238000006424 Flood reaction Methods 0.000 description 1
- 241000282412 Homo Species 0.000 description 1
- 108091092919 Minisatellite Proteins 0.000 description 1
- 241000726409 Satellites Species 0.000 description 1
- 101710140501 Sulfate adenylyltransferase subunit 2 1 Proteins 0.000 description 1
- 101710173681 Sulfate adenylyltransferase subunit 2 2 Proteins 0.000 description 1
- 102100030100 Sulfate anion transporter 1 Human genes 0.000 description 1
- 101710144481 Sulfate anion transporter 1 Proteins 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 230000004931 aggregating effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 238000003064 k means clustering Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000007790 scraping Methods 0.000 description 1
- 230000001932 seasonal effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06314—Calendaring for a resource
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B64—AIRCRAFT; AVIATION; COSMONAUTICS
- B64G—COSMONAUTICS; VEHICLES OR EQUIPMENT THEREFOR
- B64G1/00—Cosmonautic vehicles
- B64G1/10—Artificial satellites; Systems of such satellites; Interplanetary vehicles
- B64G1/1021—Earth observation satellites
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B64—AIRCRAFT; AVIATION; COSMONAUTICS
- B64G—COSMONAUTICS; VEHICLES OR EQUIPMENT THEREFOR
- B64G1/00—Cosmonautic vehicles
- B64G1/10—Artificial satellites; Systems of such satellites; Interplanetary vehicles
- B64G1/1085—Swarms and constellations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B64—AIRCRAFT; AVIATION; COSMONAUTICS
- B64G—COSMONAUTICS; VEHICLES OR EQUIPMENT THEREFOR
- B64G1/00—Cosmonautic vehicles
- B64G1/22—Parts of, or equipment specially adapted for fitting in or to, cosmonautic vehicles
- B64G1/24—Guiding or controlling apparatus, e.g. for attitude control
- B64G1/242—Orbits and trajectories
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/912—Applications of a database
- Y10S707/918—Location
- Y10S707/919—Geographic
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/912—Applications of a database
- Y10S707/918—Location
- Y10S707/921—Spatial
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Remote Sensing (AREA)
- Human Resources & Organizations (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Astronomy & Astrophysics (AREA)
- Theoretical Computer Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Aviation & Aerospace Engineering (AREA)
- Databases & Information Systems (AREA)
- Game Theory and Decision Science (AREA)
- Tourism & Hospitality (AREA)
- Quality & Reliability (AREA)
- Educational Administration (AREA)
- Marketing (AREA)
- Development Economics (AREA)
- Operations Research (AREA)
- General Business, Economics & Management (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Studio Devices (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Image Processing (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
Abstract
System zum Verwenden von Crowd-Sourcing-Daten zum automatischen Erzeugen einer Bilderfassungsanforderung für ein Satellitenzeitplanungssystem, das System umfassend:
ein Computergerät;
eine Netzwerkeingabe-/-ausgabevorrichtung, die zum Abrufen von Crowd-Sourcing-Daten von einer oder mehreren Datenquellen über ein Netzwerk konfiguriert ist;
Crowd-Sourcing-Datenanalysemodul, das zum Verwenden des Computergeräts konfiguriert ist zum:
Analysieren der Crowd-Sourcing-Daten zum Bestimmen eines interessierenden Ereignisses;
Bestimmen eines geografischen Standorts für das interessierende Ereignis unter Verwendung der Crowd-Sourcing-Daten; und
Erstellen einer Bilderfassungsanforderung, die den bestimmten geografischen Standort des interessierenden Ereignisses und eine Aufgabenpriorität umfasst; und
eine Maschine-zu-Maschine-Schnittstelle, die zum automatischen Bereitstellen der Bilderfassungsanforderung für das Satellitenzeitplanungssystem konfiguriert ist.
ein Computergerät;
eine Netzwerkeingabe-/-ausgabevorrichtung, die zum Abrufen von Crowd-Sourcing-Daten von einer oder mehreren Datenquellen über ein Netzwerk konfiguriert ist;
Crowd-Sourcing-Datenanalysemodul, das zum Verwenden des Computergeräts konfiguriert ist zum:
Analysieren der Crowd-Sourcing-Daten zum Bestimmen eines interessierenden Ereignisses;
Bestimmen eines geografischen Standorts für das interessierende Ereignis unter Verwendung der Crowd-Sourcing-Daten; und
Erstellen einer Bilderfassungsanforderung, die den bestimmten geografischen Standort des interessierenden Ereignisses und eine Aufgabenpriorität umfasst; und
eine Maschine-zu-Maschine-Schnittstelle, die zum automatischen Bereitstellen der Bilderfassungsanforderung für das Satellitenzeitplanungssystem konfiguriert ist.
Description
- VERWEIS
- Unter Schutz gestellt werden und Gegenstand des Gebrauchsmusters sind, entsprechend den Vorschriften des Gebrauchsmustergesetzes, lediglich Vorrichtungen wie in den beigefügten Schutzansprüchen definiert, jedoch keine Verfahren. Soweit nachfolgend in der Beschreibung gegebenenfalls auf Verfahren Bezug genommen wird, dienen diese Bezugnahmen lediglich der beispielhaften Erläuterung der in den beigefügten Schutzansprüchen unter Schutz gestellten Vorrichtung oder Vorrichtungen.
- HINTERGRUND
- Zeitplanungsprobleme erscheinen in vielen Anwendungen wie z. B. Satellitenzeitplanung, Airline Crew Scheduling, Tourenplanung, Vertreterprobleme und dergleichen. Anwendungen wie z. B. diese umfassen das Zuweisen zu Aktivitäten über die Zeit. Typischerweise sind Ressourcen knapp und auf unterschiedliche Arten eingeschränkt, z. B. bei der Kapazität von Ressourcen und/oder der Reihenfolge von Aktivitäten. Lösen eines typischen Zeitplanungsproblems kann das Erstellen eines Zeitplans von Aktivitäten sein, der die Einschränkungen erfüllt und gemäß einem Kriterium optimal ist. Implementieren eines Zeitplans kann das Finden einer wünschenswerten Lösung zu einem Zeitplanungsproblem, Einschränkungen, Kommunzieren der wünschenswerten Lösung gegenüber den geeigneten Personen oder Systemen, und Ausführen des Zeitplans ausmacht, wie kommuniziert.
- ZUSAMMENFASSUNG
- Die Systeme, Verfahren und Vorrichtungen, die hierin beschrieben sind, weisen innovative Aspekte auf, wovon kein einziger unverzichtbar oder ausschließlich für ihre hierin offenbarten wünschenswerten Attribute verantwortlich ist. Ohne Beschränkung des Schutzumfangs der Ansprüche werden nun einige vorteilhafte Merkmale zusammengefasst.
- Ein Ziel beim Verwalten eines Netzwerks von Bildgebungssatelliten besteht darin, schnell auf Bilderfassungsanforderungen zu reagieren. Anforderungen von Bildern können sich schnell ändern, und es wäre vorteilhaft, Zeitpläne von Ereignissen bei jedem Satelliten nahezu in Echtzeit zu aktualisieren, um verpasste Gelegenheiten zum zeitnahen Erfassen von Bildern oder zum Ausführen von anderen zeitkritischen Aufgaben zu beseitigen.
- Ein weiteres Ziel besteht darin, die Ressourcen der Bildgebungssatelliten in der Konstellation effizient zu nutzen. Da es einen Wunsch nach schnellen Zeitplanaktualisierungen und effizienter Satellitennutzung ausgleicht, kann ein Zeitplanungssystem vorteilhafterweise konfiguriert werden, um nahezu optimale Zeitpläne von Ereignissen zu erstellen, die Einschränkungsverletzungen vermeiden, während sie diese Zeitpläne schnell erstellen (z. B. nahezu in Echtzeit).
- Ein weiteres Ziel besteht im Erfassen relevanter Overhead-Bilder. Relevante Overhead-Bilder können Bilder sein, die von einem Kunden angefordert wurden. Relevante Overhead-Bilder können auch Bilder sein, die nicht explizit angefordert wurden, sondern die für eine Anzahl von Menschen interessant wären. Daher wäre es vorteilhaft, in der Lage zu sein, Zeitpläne von Ereignissen für Satelliten in einem Netzwerk von Satelliten zu aktualisieren und einzustellen, um neue relevante Bilderfassungsaufgaben einzuführen. Diese neuen relevanten Bilderfassungaufgaben können ein Ergebnis von Kundenanforderungen oder vorhergesagten Nachfragen sein, die mit interessierenden Ereignissen in Zusammenhang stehen.
- Dementsprechend sind hierin Systeme und Verfahren zum Planen von Ereignissen in einer Konstellation von Bildgebungssatelliten vorgesehen, die nahezu in Echtzeit aktualisiert werden können, nahezu optimale Zeitpläne von Ereignissen erstellen und/oder die automatisch Bilderfassungsaufgaben erzeugen können, die mit interessierenden Ereignissen verbunden sind, die mindestens teilweise auf der Analyse von Crowd-Sourcing-Daten basieren.
- In einigen Implementierungen werden Systeme und Verfahren zur schnellen Zeitplanung von einem oder mehreren Satelliten bereitgestellt, die paarweise und kumulative Einschränkungen aufweisen. Die präsentierten Systeme und Verfahren können gerichtete azyklische Graphen verwenden, um eine Nutzungsfunktion zu erhöhen oder zu maximieren. Die Verletzung von kumulativen Einschränkungen kann in dem Moment der Einschränkungsverletzung identifiziert werden, sodass die in Einschränkungsverletzungen resultierenden Ereignisse von dem Zeitplan entfernt werden können. Durch Entfernen der Ereignisse, die Einschränkungsverletzungen an dem Punkt von Einschränkungsverletzung auslösen, können die bereitgestellten Systeme und Verfahren optimale oder nahezu optimale Zeitpläne auf eine relativ schnelle und effiziente Art im Vergleich zu Systemen bestimmen, die nach der Erstellung eines Zeitplans auf Einschränkungsverletzungen prüfen.
- In einigen Implementierungen werden Systeme und Verfahren bereitgestellt, um Crowd-Sourcing-Daten zum Identifizieren von interessierenden Ereignissen und damit verbundenen Standorten zu verwenden. Mit den interessierenden Ereignissen verbundene Prioritäten können mindestens teilweise basierend auf der Analyse der Crowd-Sourcing-Daten bestimmt werden. Die interessierenden Ereignisse können verwendet werden, um Bilderfassungsanforderungen zu erzeugen, die Standorte und Prioritäten der Ereignisse beinhalten. Unter Verwendung einer Maschine-zu-Maschine-Schnittstelle können die Bilderfassungsanforderungen direkt zu dem Zeitplanungssystem gesendet werden, um einen Zeitplan von Ereignissen zu erstellen, der die angeforderten Bilderfassungsaufgaben beinhaltet. Die Erstellung von Bilderfassungsaufgaben basierend auf Crowd-Sourcing-Daten kann nahezu in Echtzeit erfolgen. In einigen Ausführungsformen wird keine intervenierende Benutzereingabe bei der Erzeugung der Bilderfassungsereignisse basierend auf Crowd-Sourcing-Daten verwendet, und die geplanten Ereignisse werden basierend auf Eingaben von dem Crowd-Sourcing-System automatisch erzeugt. Auf diese Weise kann eine Konstellation von Bildgebungssatelliten zeitnahe und relevante Overhead-Bilder auf automatisierte Art und/oder nahezu in Echtzeit erzeugen.
- Obwohl bestimmte Ziele und Vorteile beschrieben werden, muss keine einzelne Ausführungsform notwendigerweise jedes von diesen Zielen und Vorteilen beinhalten. Unterschiedliche Implementierungen können konzipiert werden, um eines/einen oder alle dieser Ziele und Vorteile und/oder andere Ziele oder Vorteile zu erreichen.
- KURZBESCHREIBUNG DER ZEICHNUNGEN
- Durch die gesamten Zeichnungen hindurch können Bezugszeichen erneut verwendet werden, um eine allgemeine Übereinstimmung zwischen Referenzelementen anzuzeigen. Die Zeichnungen werden bereitgestellt, um die hierin beschriebenen exemplarischen Ausführungsformen zu veranschaulichen, und sind nicht zur Beschränkung des Umfangs der Offenbarung gedacht.
-
1 veranschaulicht eine Darstellung einer beispielhaften Konstellation von Bildgebungs-Mikrosatelliten in einer niedrigen Erdumlaufbahn, ein Steuerungssystem, ein Bodenkommunikationssystem und einen Zielbereich. -
2 veranschaulicht ein Blockdiagramm einer beispielhaften Ausführungsform eines Steuerungssystems, das zum Steuern von einem oder mehreren Objekten konfiguriert ist. -
3 veranschaulicht ein Blockdiagramm einer beispielhaften Ausführungsform eines Steuerungssystems, das eine Benutzerschnittstelle enthält. -
4 veranschaulicht ein Blockdiagramm einer beispielhaften Ausführungsform eines Zeitplanungsmoduls. -
5 veranschaulicht ein Ablaufdiagramm einer Ausführungsform eines Verfahrens zum Finden eines nahezu optimalen Zeitplans unter Verwendung eines Graphen. -
6 veranschaulicht einen beispielhaften Graphen, der mögliche Wege durch den Graphen und ein Beispiel von einem nahezu optimalen Weg darstellt. -
7 veranschaulicht ein Ablaufdiagramm einer Ausführungsform eines Verfahrens zum Finden nahezu optimaler Zeitpläne von Ereignissen für eine Konstellation von Satelliten, die Duplikationseinschränkungen unterliegt. -
8 veranschaulicht einen beispielhaften Graphen, der einen Weg durch die Graphen darstellt, der die Nutzung erhöht, wobei gleichzeitig eine unerwünschte Duplikation von Ereignissen vermieden wird. -
9 veranschaulicht ein Blockdiagramm eines beispielhaften Systems zum Planen einer Konstellation von Bildgebungssatelliten. -
10 veranschaulicht ein Blockdiagramm eines beispielhaften Crowd-Sourcing-Systems, das zum Verwenden von Crowd-Sourcing-Daten zum Planen von Overhead-Bilderfassungsaufgaben konfiguriert ist. -
11 veranschaulicht ein Ablaufdiagramm eines beispielhaften Verfahrens zum Analysieren von Crowd-Sourcing-Daten zum Verwenden zum Planen von Overhead-Bilderfassungsaufgaben. -
12 veranschaulicht ein Ablaufdiagramm eines beispielhaften Verfahrens für Maschine-zu-Maschine-Tasking
unter Verwendung von Crowd-Sourcing-Daten. AUSFÜHRLICHE BESCHREIBUNG - Übersicht
- Diese Offenbarung betrifft Systeme und Verfahren zum Planen von mehreren Ereignissen mit untereinander abhängigen Einschränkungen, und insbesondere zum Erstellen von Zeitplänen auf relativ schnelle und effiziente Art. In einigen Implementierungen können die offenbarten Systeme und Verfahren zum Erstellen von Zeitplänen von Ereignissen für eine Konstellation von Satelliten verwendet werden. In einigen Implementierungen kann die Zeitplanung der Konstellation von Satelliten mindestens teilweise auf Daten basieren, auf die über Nachrichten aus sozialen Netzwerken und/oder Echtzeit-Newsfeeds zugegriffen wurde, die dort gesammelt und/oder analysiert wurden.
- Für eine Konstellation von Bildgebungssatelliten beinhalten Ereignisse, die geplant werden können, Bilderfassungsaufgaben, Wartungsaufgaben, Kommunikationsaufgaben und dergleichen. Ein Zeitplanungssystem kann einen Zeitplan von Ereignissen durch Integrieren und Analysieren einer Anzahl von Eingaben, Parametern und Variablen erzeugen, um zeitnahe, effiziente und nützliche Verwendung der Satelliten in der Konstellation hervorzubringen.
- In einigen Implementierungen werden Systeme und Verfahren zur Zeitplanung von einem oder mehreren Objekten bereitgestellt, die paarweise und kumulative Einschränkungen aufweisen. Die präsentierten Systeme und Verfahren können gerichtete azyklische Graphen verwenden, um eine Nutzungsfunktion zu erhöhen oder zu maximieren. Die Verletzung von kumulativen Einschränkungen kann in dem Moment der Einschränkungsverletzung identifiziert werden, sodass die in Einschränkungsverletzungen resultierenden Ereignisse von dem Zeitplan entfernt werden können, während der Zeitplan bestimmt wird. Durch Entfernen der Ereignisse, die Einschränkungsverletzungen an dem Punkt von Einschränkungsverletzung auslösen, können die bereitgestellten Systeme und Verfahren optimale oder nahezu optimale Zeitpläne auf eine relativ schnelle und effiziente Art im Vergleich zu Systemen und Verfahren bestimmen, die nach der Erstellung eines Zeitplans auf kumulative Einschränkungsverletzungen prüfen.
- Hierin sind Systeme und verwandte Methodologien beschrieben, die die Nutzung von einem oder mehreren steuerbaren Objekten durch Erstellung von nahezu optimalen oder optimalen Zeitplänen von Ereignissen erhöhen oder maximieren. Weiterhin sind hierin Systeme und Verfahren beschrieben, die automatisch Bilderfassungsanforderungen für ein Zeitplanungssystem mindestens teilweise basierend auf der Analyse von Crowd-Sourcing-Daten erzeugen. Es versteht sich, dass obwohl viel von der Beschreibung hierin im Kontext der Zeitplanung von Satelliten ist, dass eine oder mehrere Funktionen der vorliegenden Offenbarung auch in Systemen implementiert werden kann/können, bei denen das Finden von nahezu optimalen Zeitplänen auf schnelle und effiziente Art wünschenswerter sein kann als das Finden des optimalsten Zeitplans oder des Zeitplans, der eine bestimmte Nutzungs- oder Kostenfunktion maximiert. Beispielsweise können einige der hierin offenbarten Ausführungsformen der Systeme und zugehörigen Methodologien bei der Satellitenzeitplanung (z. B. Bildgebungssatelliten oder Kommunikationssatelliten), Luftverkehrssteuerung, Rettungsfahrzeugtourenplanungs- und Reaktionssystemen, Zeitplanung von Reparaturen vor Ort und dergleichen verwendet werden. Weiterhin versteht sich, dass beim Finden einer optimalen oder nahezu optimalen Lösung zu einem Zeitplanungsproblem, in Abhängigkeit von einem Kontext, in dem das Zeitplanungsproblem auftritt, eine Kosten- oder Nutzungsfunktion in bestimmten Implementierungen erhöht oder maximiert werden, oder in bestimmten Implementierungen reduziert oder minimiert werden kann. Finden einer nahezu optimalen Lösung für ein Zeitplanungsproblem kann das Finden einer Lösung bedeuten, die der optimalen Lösung genügend nahe ist, sodass eine Differenz zwischen der Lösung und der optimalen Lösung geringer als eine Toleranz ist.
- Die Konvergenz von sozialem Netzwerken, mobilen Vorrichtungen und standortbasierten Diensten hat eine Explosion beim Volumen von zeitnahen standortidentifizierten Informationen über Aktivitäten auf der ganzen Welt hervorgebracht. Dies kann durch eine Anzahl von großen Ereignissen auf der ganzen Welt nachgewiesen werden, wie z. B. Erdbeben, Überschwemmungen, Tsunamis, Unruhen, bewaffnete Konflikte, Sportereignisse, Rallyes und dergleichen. Soziale Netzwerke spielen eine bedeutende Rolle bei Ereignissen rund um den Erdball mindestens teilweise basierend darauf, dass der Zugang zu Netzwerken für einen großen Querschnitt von Menschen auf der ganzen Welt einfach ist. Dies war bei Ereignissen wie z. B. politischen Aufständen und Revolutionen zu sehen, deren Teilnehmer auch Benutzer von sozialen Netzwerkdiensten wie TWITTERTM und FACEBOOKTM sind, und die diese Dienste sogar zum Koordinieren ihrer Aktivitäten nutzen können.
- Daher werden Beispiele von Satellitenzeitplanungssystemen bereitgestellt, bei denen Crowd-Sourcing-Daten zum Erzeugen von Bilderfassungsereignissen für ein Netzwerk von Bildgebungssatelliten verwendet werden. Ein Crowd-Sourcing-System kann Crowd-Sourcing-Daten (z. B. Nachrichten, die durch Benutzer von sozialen Netzwerkdiensten erzeugt wurden) zum Bestimmen von interessierenden Ereignissen und geografischen Standorten solcher Ereignisse verwenden. Ereignisdaten können dann zum Erzeugen oder Aktualisieren von Bilderfassungsaufgaben und/oder Aufgabenprioritäten verwendet werden, die automatisch einem Zeitplanungssystem bereitgestellt werden, um zeitnahe und reaktionsschnelle Erfassung von Overhead-Bildern des geografischen Standorts des Ereignisses zu erleichtern.
- Terminologie
- Sofern nicht explizit anders angegeben, geht man davon aus, dass die hierin verwendeten Begriffe im Rahmen ihrer üblichen und normalen Bedeutung zu verstehen sind. Beispielsweise ist paarweise Einschränkung ein weiter Begriff und ist gewöhnlichen Fachleuten auf dem Gebiet in seiner üblichen und normalen Bedeutung zu geben (z. B. ist er nicht auf eine spezielle und individuelle Bedeutung zu beschränken), und beinhaltet ohne Begrenzung Einschränkungen, die ein Ereignis ausschließlich basierend auf Eigenschaften eines unmittelbar vorangegangenen Ereignisses untersagen. Beispielsweise sind zwei Bildsammlungsereignisse paarweise eingeschränkt, wenn es nicht genügend Zeit zwischen dem ersten Bildsammlungsereignis und dem zweiten Bildsammlungsereignis gibt, um eine Zeigerichtung eines Bildgebungssatelliten zu ändern, um das zweite Bildsammlungsereignis auszuführen.
- Kumulative Einschränkung ist ein weiter Begriff und ist gewöhnlichen Fachleuten auf dem Gebiet in seiner üblichen und normalen Bedeutung zu geben (z. B. ist nicht auf eine spezielle und individuelle Bedeutung zu beschränken), und beinhaltet ohne Begrenzung Einschränkungen, die ein Ereignis basierend auf Eigenschaften unmittelbar vorangegangener Ereignisse untersagen. Beispielsweise kann ein Bildsammlungsereignis eingeschränkt sein, wenn durch das Ausführen des Ereignisses die Temperatur einer das Bild erfassenden Kamera annehmbare Temperaturgrenzen mindestens teilweise aufgrund von vorherigen Ereignissen überschritten würden.
- In einigen Implementierungen kann eine Konstellation von Satelliten jede Art von Satellit beinhalten, einschließlich, jedoch nicht beschränkt auf Satelliten, Minisatelliten, Mikrosatelliten-Nanosatelliten usw. Mikrosatellit ist ein vielverwendeter Begriff, dem in Fachkreisen die übliche und allgemein verwendete Bedeutung zugeordnet wird (z. B. ist dieser nicht beschränkt auf eine spezifische oder fachübliche Bedeutung) und der unter anderem Satelliten mit einer Masse, die kleiner als oder gleich etwa 500 kg und/oder physikalischen Abmessungen, die kleiner als oder gleich etwa 125 cm × 125 cm × 175 cm ausfallen, oder Satelliten, die auf einem Startfahrzeug als eine sekundäre Nutzlast starten, beinhaltet. Gemäß einigen Übereinkommen werden Satelliten, die eine Masse von kleiner als oder gleich etwa 500 kg aufweisen, als kleine Satelliten eingestuft, wobei weitere Unterteilungen basierend auf ihrer Masse vorgenommen werden. In einem Klassifizierungssystem werden kleine Satelliten beispielsweise als Minisatelliten betrachtet, wenn sie eine Masse zwischen etwa 100 kg und 500 kg aufweisen, als Mikrosatelliten, wenn sie eine Masse zwischen etwa 10 kg und 100 kg aufweisen, als Nanosatelliten, wenn sie eine Masse zwischen etwa 1 kg und 10 kg aufweisen, als Pikosatelliten, wenn sie eine Masse zwischen etwa 0,1 kg und 1 kg aufweisen, und als Femosatelitten, wenn sie eine Masse von weniger als oder etwa 100 g aufweisen. Jeder Verweis auf Mikrosatellit, Minisatellit, oder kleiner Satellit in dieser Offenbarung sollte bedeutungsbezogen jedoch als die allgemeine Klasse an Satelliten verstanden werden, die eine Masse von weniger als oder etwa 500 kg und/oder über physikalische Dimensionen, die weniger als oder etwa 125 cm × 125 cm × 175 cm aufweisen; und nicht als eine spezifischere Klassifizierung von hierin identifizierten Satelliten oder ähnlichen Klassifizierungsschemas verstanden werden.
- Overhead-Bild ist ein vielverwendeter Begriff, dem in Fachkreisen die übliche und allgemein verwendete Bedeutung zugeordnet wird (z. B. ist dieser nicht auf eine spezifische oder fachübliche Bedeutung zu beschränken) und der unter anderem ohne Einschränkung Satellitenbilder beinhaltet, die durch Satelliten in der Erdumlaufbahn erfasst werden, oder andere Overhead-Bilder, die durch Luftfahrzeuge erfasst werden (z. B. Flugzeuge, Helikopter, Drohnen, unbemannte Luftfahrzeuge (UAV), Ballone usw.), die einen geografischen Bereich beobachten, und dergleichen. In einigen Fällen kann das Overhead-Bild von einem astronomischen Objekt anstatt von einem terrestrischen Objekt sein.
- Beispielhaftes Netzwerk von Bildgebungs-Mikrosatelliten
-
1 veranschaulicht eine Darstellung einer beispielhaften Konstellation10 von Bildgebungs-Mikrosatelliten12 in einer niedrigen Erdumlaufbahn14 , ein Bodenkommunikationssystem16 und einen Zielbereich18 . Ausführungsformen der hierin beschriebenen Systeme und Verfahren können zum Planen von Ereignissen in der Konstellation10 verwendet werden, einschließlich Bestimmen, welcher Mikrosatellit12 ein Bild des Zielbildbereichs18 zu erfassen hat, wann das Bild zu erfassen ist, wann das Bild dem Bodenkommunikationssystem16 zu übermitteln ist, und/oder andere Zeitplanungsereignisse. Das Bild kann eine Mehrzahl von Bildern, Videos usw. beinhalten. In einigen Implementierungen können die Bildgebungs-Mikrosatelliten12 ein Bilderfassungssystem beinhalten, das zum Erfassen multispektraler und/oder panspektraler Bilder oder Videos des Zielbildbereichs18 konfiguriert sind. Die Bildgebungs-Mikrosatelliten12 können Eigentum einer einzelnen Entität oder mehrerer Entitäten sein und/oder davon betrieben werden. In unterschiedlichen Implementierungen kann die Konstellation10 2, 4, 8, 10, 12, 16, 24, 30 oder eine andere Anzahl von Satelliten beinhalten. Obwohl in1 eine beispielhafte Konstellation von Mikrosatelliten12 dargestellt ist, kann die Konstellation10 in anderen Implementierungen zusätzliche oder andere Arten von Satelliten einschließlich Telekommunikationssatelliten, Minisatelliten usw. beinhalten. - Das Steuerungssystem
14 kann Funktionalität beinhalten, die Ausführungsformen des hierin offenbarten Zeitplanungssystems implementiert, um Ereignisse in der Konstellation zu planen. Beispielsweise kann das Steuerungssystem14 Ausführungsformen des Steuerungssystems100 beinhalten, das unter Bezugnahme auf2 und3 beschrieben ist. Das Steuerungssystem14 ,100 kann das Zeitplanungsmodul104 beinhalten, das unter Bezugnahme auf2 –4 und9 beschrieben ist. Zeitplanungsereignisse können eine oder mehrere auszuführende Aufgaben, zu sammelnde Daten, zu empfangende oder zu übertragende Informationen, Zeitdauer, gewünschte Startzeit, gewünschte Endzeit, gewünschte Ergebnisse oder jede Kombination davon beinhalten. Beispielsweise können für einen Bildgebungssatelliten Ereignisse jede durch den Bildgebungssatelliten auszuführende Aufgabe sein, und können im Allgemeinen ohne Beschränkung Bildsammlung (z. B. des Zielbildbereichs18 ), Bild-Downlink (z. B. zu der Satellitenbodenkommunikationsstation16 ) und Onboard-Wartung beinhalten. - Zeitplanungsereignisse für eine Konstellation von Satelliten können rechnerisch schwierig sein, insbesondere deshalb, weil sich die Anzahl von Satelliten in der Konstellation erhöht. Ausführungsformen der hierin beschriebenen Systeme, Verfahren und Algorithmen können vorteilhafterweise zum Planen von Ereignissen in solchen Konstellationen effizient und in Echtzeit oder nahezu Echtzeit verwendet werden. Beispielsweise kann das Steuerungssystem
14 jedes hierin beschriebene beliebige Verfahren zum Erstellen optimaler oder nahezu optimaler Zeitpläne verwenden, wie z. B. die beispielhaften Verfahren500 und700 , die hierin unter Bezugnahme auf5 und7 beschrieben sind. Zusätzlich oder alternativ kann das Steuerungssystem14 jedes hierin beschriebene Verfahren zum Verwenden von Crowd-Sourcing-Daten verwenden, wie z. B. die beispielhaften Verfahren1100 und1200 , die hierin unter Bezugnahme auf11 und12 beschrieben sind. - Beispielhafte Zeitplanungsmodulsysteme und -methodologien
- Das Erstellen eines Zeitplans von Ereignissen oder Aufgaben für ein Objekt in einem System kann ein schwieriges und rechnerisch intensives Problem sein. Ein Grund besteht darin, dass ein Objekt in einem System unterschiedlichen Einschränkungen unterliegen kann, die die Reihenfolge und/oder Anzahl von Aufgaben begrenzen, die erfüllt werden kann. Einschränkungen können paarweise Einschränkungen sein, was bedeutet, dass sie ausschließlich basierend auf Eigenschaften eines unmittelbar vorangegangenen Ereignisses basieren, oder auf kumulativen Einschränkungen, was bedeutet, dass ein Ereignis mindestens teilweise auf einer Historie von vergangenen Ereignissen basiert. Beispielsweise kann eine Anstiegsgeschwindigkeit eines Bildgebungssatelliten (z. B. ein Mikrosatellit
12 in1 ) als paarweise Einschränkung betrachtet werden, da die Tatsache, ob ein Bild erfasst werden kann, mindestens teilweise davon abhängig ist, ob der Bildgebungssatellit die Ausrichtung von einer vorherigen Aufgabe zum Erfassen eines Bildes eines Zielbereichs ändern kann. Der Bildgebungssatellit kann auch kumulativen Einschränkungen unterliegen, wie z. B. Duplikationseinschränkungen, Temperaturerwägungen, Energieanforderungen oder Datenspeicherung. Als weiteres Beispiel kann eine paarweise Einschränkung für ein Rettungsfahrzeug eine Kombination eines Abstands zwischen Aufgaben und einer typischen Dauer einer Aufgabe sein. Das Rettungsfahrzeug kann auch durch kumulative Einschränkungen eingeschränkt sein, wie z. B. eine Menge einer erweiterbaren Ressource, die das Fahrzeug transportieren kann. - Weiterhin können Systeme mehrere zu planende Objekte beinhalten, was die Komplexität des Problems erhöht. Die Komplexität kann sich da erhöhen, wo ein Zeitplan von Ereignissen für ein erstes Objekt einen Zeitplan von Ereignissen für ein zweites Objekt beeinflusst. Wenn beispielsweise ein erster Bildgebungssatellit in einer Konstellation von Bildgebungssatelliten geplant ist, um ein Bild eines Zielbereichs zu erfassen, kann eine Duplikationseinschränkung diktieren, dass ein zweiter Bildgebungssatellit kein Bild des Zielbereichs erfasst, um doppelte Bilderfassungen zu vermeiden, die unerwünscht sein können. Als weiteres Beispiel können Luftverkehrssteuerungssysteme eine Landung und Annäherung für ein erstes Luftfahrzeug planen, was die Landung und Annäherung eines zweiten Luftfahrzeugs beeinflusst.
- Unter einigen Umständen ist es wünschenswert, einen Zeitplan von Ereignissen relativ schnell zu erstellen, um in der Lage zu sein, effektiv auf dynamische Situationen zu reagieren. Dynamische Situationen können diejenigen sein, bei denen neue Ereignisse angefordert werden oder Einschränkungen aktualisiert werden, sodass es wünschenswert ist, einen vorherigen Zeitplan auf einer Zeitskala abzuändern, der ausreicht, um die neuen Ereignisse oder Einschränkungen zu integrieren, ohne die Leistung des Objekts bedeutend zu unterbrechen. Zum Erreichen der gewünschten Agilität hinsichtlich des Erstellens aktualisierter Zeitpläne stellen einige Ausführungsformen ein Steuerungs- und Zeitplanungssystem bereit, das konfigurierbar ist, um einen Zeitplan von Ereignissen zu erzeugen, der nahezu optimal (oder optimal) bei der Maximierung der Nutzung (oder Minimierung einer Kostenfunktion) von Objekten in einem System ist, und übermitteln den Zeitplan von Ereignissen zu den Objekten. In einigen Ausführungsformen kann das Steuerungs- und Zeitplanungssystem einen Zeitplan von Ereignissen nahezu in Echtzeit erstellen. In einigen Ausführungsformen kann das Steuerungs- und Zeitplanungssystem einen Zeitplan von Ereignissen auf einer Zeitskala erstellen, die kleiner oder gleich einer typischen Zeitlänge zwischen aufeinanderfolgenden Ereignissen ist.
- In einigen Ausführungsformen wird ein Steuerungs- und Zeitplanungssystem bereitgestellt, das zum Erstellen eines globalen Zeitplans von Aufgaben für ein System von Objekten konfiguriert sein kann, worin der globale Zeitplan keinen paarweisen, kumulativen oder doppelten Einschränkungen verletzt. In einigen Ausführungsformen kann das Steuerungs- und Zeitplanungssystem gerichtete azyklische Graphen verwenden, um einen erwünschten Weg durch eine Sequenz von Ereignissen zu finden, der die Einschränkungen des Systems erfüllt. Durch die Verwendung gerichteter azyklischer Graphen kann das Zeitplanungsproblem in polynomieller Zeit lösbar werden, wodurch ein Vorteil bei der Berechnungszeit gegenüber anderen Verfahren zum Lösen von Zeitplanungsprobleme dieser Art bereitgestellt wird, die im Allgemeinen NP-schwer sind. Darüber hinaus kann ein Steuerungs- und Zeitplanungssystem den Vorteil von Parallelisierung nutzen, um mehrere Graphen oder Aspekte desselben Graphs zur selben Zeit zu lösen, wodurch die Geschwindigkeit erhöht, oder die Zeit zum Erstellen von Zeitplänen reduziert wird. In einigen Ausführungsformen zeigt das Steuerungs- und Zeitplanungssystem ein sublineares Skalierungsverhältnis zwischen einer Anzahl von Objekten in dem System und Berechnungsleistung oder Zeit, die zum Erstellen von Zeitplänen für die Objekte verwendet wird. Als Ergebnis können einige Implementierungen des Steuerungs- und Zeitplanungssystems einen Zeitplan von Ereignissen nahezu in Echtzeit oder auf einer Zeitskala erstellen, die kleiner als oder vergleichbar mit einer mittleren Zeitlänge zwischen zwei Ereignissen ist. Das Erstellen eines Zeitplans von Ereignissen nahezu in Echtzeit kann das Erstellen des Zeitplans in weniger als etwa 20 Minuten, in weniger als etwa 15 Minuten, in weniger als etwa 10 Minuten, in weniger als etwa 5 Minuten oder in weniger als etwa 1 Minute beinhalten.
-
2 stellt ein Blockdiagramm einer beispielhaften Ausführungsform eines Steuerungssystems100 dar, das zum Steuern von einem oder mehreren Objekten102 konfiguriert ist. Das Steuerungssystem100 kann die Objekte102 durch Analysieren von Informationen (z. B. auszuführende Ereignisse, Prioritäten von Ereignissen, Ereignis- oder Objekteinschränkungen usw.), Erstellen eines effizienten Zeitplans von Ereignissen mindestens teilweise basierend auf den analysierten Informationen und Anweisen der Objekte, die geplanten Ereignisse auszuführen, steuern. Das Steuerungssystem100 beinhaltet ein Zeitplanungsmodul104 , das zum Empfangen von Informationen über Ereignisse, Prioritäten und Einschränkungen, und zum Erstellen eines Zeitplans von Ereignissen konfiguriert ist. Das Steuerungssystem100 beinhaltet ein Befehlsmodul106 , das zum Empfangen des Zeitplans von Ereignissen von dem Zeitplanungsmodul104 , und zum Konvertieren davon in Befehle in der Lage ist. Das Befehlsmodul106 kann konfiguriert sein, um diese Befehle an die Objekte102 oder zu einem anderen System zu übermitteln, das die Befehle den Objekten102 übermitteln kann. Das Steuerungssystem100 kann konfiguriert sein, um einen Zeitplan zu erstellen und die Objekte102 anzuweisen, die Ereignisse in dem Zeitplan auf eine relativ effiziente Art durchzuführen, wobei definierte Einschränkungen erfüllt werden. Das Steuerungssystem100 kann konfiguriert sein, um den Zeitplan relativ schnell zu aktualisieren, um z. B. dynamisch neue Aufgaben zu integrieren, vorhandene Aufgaben abzuändern, Aufgaben zu entfernen, Einschränkungen hinzuzufügen, Einschränkungen abzuändern, Einschränkungen zu entfernen, Prioritäten abzuändern, oder jede Kombination davon. - Das Steuerungssystem
100 beinhaltet ein Zeitplanungsmodul104 , das konfiguriert ist, um einen effizienten oder optimierten Zeitplan von Ereignissen zu erstellen. Ein Zeitplan von Ereignissen kann z. B. eine Liste von Ereignissen, Aufgaben, Aktivitäten oder Routinen für eines oder mehrere Objekte und entsprechende Startzeiten von jedem Ereignis beinhalten. Das Zeitplanungsmodul104 empfängt Ereignisse von einem Ereignissystem108 , paarweise Einschränkungen von einer Datenbank110 für paarweise Einschränkungen, kumulative Einschränkungen von einer Datenbank112 für kumulative Einschränkungen und/oder Prioritätsinformationen von einem Priorisierungssystem114 . Das Zeitplanungsmodul104 kann einen Zeitplan von Ereignissen erstellen, die es zu dem Befehlsmodul106 sendet. Der Zeitplan von Ereignissen kann für ein bestimmtes Objekt102 sein, oder er kann ein globaler Zeitplan mit Ereignissen sein, die von einem oder mehreren Objekten102 auszuführen sind. Daher kann das Zeitplanungsmodul104 einen globalen optimalen oder nahezu optimalen Zeitplan für eine Mehrzahl von Objekten102 erstellen, wie z. B. Satelliten in einer Konstellation von Satelliten. - In einigen Ausführungsformen kann das Zeitplanungsmodul
104 eines oder mehrere Ereignisse von dem Ereignissystem108 empfangen und einen Zeitplan erstellen, der eine Nutzungsfunktion mindestens teilweise basierend auf dem einen oder mehreren Ereignissen erhöht oder maximiert. Die Nutzungsfunktion kann Informationen über die Ereignisse und die Objekte102 einbinden, sodass Erhöhen oder Maximieren der Funktionen einen Zeitplan zum Ergebnis hat, der die definierten Ereignisse effizient oder optimal durchführt. Beispielsweise kann ein Zeitplanungsmodul104 Priorisierungsinformationen empfangen oder abrufen, die mit Ereignissen in Zusammenhang stehen, die von dem Ereignissystem108 empfangen werden, und einen Zeitplan konstruieren, der die Nutzungsfunktion mindestens teilweise basierend auf den Priorisierungsinformationen erhöht oder maximiert. Als weiteres Beispiel kann ein Zeitplanungsmodul104 Einschränkungsinformationen von der Datenbank110 für paarweise Einschränkungen oder von der Datenbank112 für kumulative Einschränkungen empfangen oder abrufen, und einen Zeitplan konstruieren, der die Einschränkungen erfüllt, wobei die Nutzungsfunktion erhöht oder maximiert wird. - Wie hierin noch ausführlicher beschrieben, können bestimmte Ausführungsformen des Zeitplanungsmoduls
104 effiziente oder optimale Zeitpläne dynamisch durch die Verwendung gerichteter azyklischer Graphen erstellen. Beispielsweise kann das Zeitplanungsmodul104 durch Verwendung gerichteter azyklischer Graphen einen optimalen oder nahezu optimalen Zeitplan finden, wobei Informationen über Nutzungsfunktionen, Einschränkungen und Priorisierung eingebunden werden. Dieser graphbasierte Ansatz zur Zeitplanung kann einen relativ schnellen Algorithmus zum Ergebnis haben, der nahezu optimale Zeitpläne für relativ große und komplexe Systeme von Objekten erstellen kann. Der graphbasierte Ansatz kann dynamisch auf Abänderungen, Hinzufügungen oder Löschungen von Eingabeparametern auf relativ schnelle Art im Vergleich zu typischen nicht-graphbasierten Ansätzen reagieren. Beispielsweise kann das Zeitplanungsmodul104 konfiguriert sein, um Änderungen in Aufgaben, Ereignissen, Einschränkungen, Prioritäten, Nutzungsfunktionen oder beliebigen Kombinationen davon einzubinden, und einen neuen Zeitplan relativ schnell erstellen. In einigen Ausführungsformen kann das Zeitplanungsmodul104 einen nahezu optimalen Zeitplan unter Verwendung eines gerichteten graphbasierten Ansatzes über eine Größenordnung schneller erstellen, als wenn nicht-graphbasierte Techniken verwendet werden müssten. - Das Steuerungssystem
100 beinhaltet ein Befehlsmodul106 , das zum Umwandeln des Zeitplans in Befehle konfiguriert ist, der durch das Zeitplanungsmodul104 erzeugt ist, um die Objekte102 zu senden. Das Befehlsmodul106 kann ein Modul beinhalten, das zum Empfangen von Zeitplaninformationen konfiguriert ist. Das Modul kann die Informationen in dem Zeitplan in einen Satz von Befehlen konvertieren, der zu einem oder mehreren Objekten102 zu liefern ist. In einigen Ausführungsformen beinhaltet das Befehlsmodul106 ein Kommunikationsmodul, das konfiguriert ist, um den Satz von Befehlen zu dem einen oder mehreren Objekten102 zu übermitteln. Beispielsweise kann das Befehlsmodul106 eine Anordnung von Antennen beinhalten, die zum Übertragen von Steuerungsanweisungen mindestens basierend auf einem empfangenen Zeitplan zu einem oder mehreren Satelliten konfiguriert ist. Die Satelliten können die übertragenen Anweisungen empfangen und die angeforderten Aufgaben zu festgelegten Zeiten ausführen. Das Befehlsmodul106 kann die Steuerungsanweisungen mindestens teilweise basierend auf aktualisierten Zeitplanungsinformationen dynamisch aktualisieren, die von dem Zeitplanungsmodul104 empfangen wurden. - Die Objekte
102 können einer oder mehrere Satelliten, Fahrzeuge, Maschinen, Menschen, Gruppen von Menschen oder eine Kombination von Menschen und Maschinen sein, die steuerbar sind. In einigen Ausführungsformen umfassen die Objekte102 Satelliten, die zum Reagieren auf Steuerungsanweisungen konfiguriert sind, die von einem Steuerungssystem100 empfangen werden. Beispielsweise kann ein Satellit als Reaktion auf von dem Steuerungssystem100 empfangene Steuerungsanweisungen seine Haltung einstellen, gespeicherte Daten zu einer bestimmten basierten Zeit zu einer Bodenstation übertragen, ein Onboard-System auf eine definierte basierte Art betreiben, eine Wartungsroutine ausführen, ein Bild mit einem Bildgebungssystem erfassen oder jede Kombination davon oder dergleichen. In einigen Ausführungsformen sind die Objekte102 ein Luftfahrzeug wie z. B. Flugzeuge oder Helikopter, Rettungsfahrzeuge, Reparaturteams oder dergleichen. - Das Steuerungssystem
100 kann Informationen von dem Ereignissystem108 empfangen. Das Ereignissystem108 kann ein System sein, das durch die Objekte102 auszuführende Ereignisse erzeugt, sammelt, empfängt, erstellt und/oder organisiert. Ein Ereignis kann eine Sammlung von Anweisungen und/oder Informationen sein, wie durch das Ereignissystem108 definiert, und kann z. B. eine oder mehrere auszuführende Aufgaben, zu sammelnde Daten, zu empfangende oder zu übertragende Daten, Zeitdauer, gewünschte Startzeit, gewünschte Endzeit, gewünschte Ergebnisse oder jede Kombination davon beinhalten. Beispielsweise können für einen Bildgebungssatelliten Ereignisse jede durch einen Bildgebungssatelliten auszuführende Aufgabe sein, und können im Allgemeinen ohne Beschränkung Bildsammlung, Bild-Downlink und Onboard-Wartung beinhalten. Bilder können unbewegte Bilder und/oder Videos beinhalten. Das Ereignissystem108 kann Ereignisanforderungen von anderen Systemen sammeln. Beispielsweise kann das Ereignissystem108 eine Benutzerschnittstelle beinhalten und Anforderungen von einem Benutzer empfangen. Das Ereignissystem108 kann eine Schnittstelle zu anderen Systemen ausbilden, die Ereignisanforderungen für die Objekte102 aggregieren. Das Ereignissystem108 kann Ereignisanforderungen mindestens teilweise basierend auf einer eingestellten Zeitplanung von Ereignissen empfangen oder erstellen, wie z. B. routinemäßig geplante Wartung. Das Ereignissystem108 kann Ereignisanforderungen mindestens teilweise basierend auf Erfüllung definierter Kriterien erstellen, wie z. B. Übertragen von Informationen, wenn es im Bereich einer empfangenden Station liegt. Das Ereignissystem108 kann ein Ereignis oder eine Liste von Ereignissen zu dem Zeitplanungsmodul104 in regelmäßigen Intervallen auf Anforderung von dem Steuerungssystem100 , nach Empfangen oder Erstellen einer neuen Ereignisanforderung oder einer Kombination davon übertragen. Wie hierin genauer unter Bezugnahme auf5 und6 beschrieben, können Ereignisse zum Definieren von Knoten in einem graphbasierten Ansatz verwendet werden, um einen wünschenswerten Zeitplan zu finden. - Das Steuerungssystem
100 kann zum Abrufen oder Empfangen von paarweisen Einschränkungen von der Datenbank110 für paarweise Einschränkungen konfiguriert sein. Paarweise Einschränkungen können eine Eigenschaft der Objekte102 sein, die funktionale Grenzwerte auf die Fähigkeit des Objekts102 legen, aufeinanderfolgende Ereignisse auszuführen. Eine paarweise Einschränkung kann bedeuten, dass ob das Objekt102 in der Lage ist, ein Ereignis auszuführen, mindestens teilweise basierend auf Eigenschaften eines ummittelbar vorangegangenen Ereignisses bestimmt wird. Beispielsweise können aufeinanderfolgende Sammlungsereignisse in einem Bildgebungssatelliten durch die Agilität eines Satelliten eingeschränkt werden. Agilität bezieht sich auf eine Fähigkeit eines Satelliten, von einem Zeigewinkel zu einem anderen Zeigewinkel innerhalb eines definierten Zeitraums zu drehen. Wenn beispielsweise eine erste Sammlung eine erste Endzeit und einen ersten Zeigewinkel aufweist, und eine zweite Sammlung eine zweite Startzeit und einen zweiten Zeigewinkel aufwiest, dann würde eine paarweise Einschränkung verletzt, wenn eine maximale Anstiegsrate des Satelliten nicht ausreichend wäre, um den Satelliten von dem ersten Zeigewinkel zu dem zweiten Zeigewinkel in der Zeit zwischen der ersten Endzeit und der zweiten Startzeit zu überführen. Wie hierin unter Bezugnahme auf5 ausführlicher beschrieben, können paarweise Einschränkungen zum Erstellen von Verbindungen zwischen Knoten in einem graphbasierten Ansatz zum Finden eines erwünschten Zeitplans verwendet werden. - Das Steuerungssystem
100 kann zum Abrufen oder Empfangen von kumulativen Einschränkungen von der Datenbank112 für kumulative Einschränkungen konfiguriert sein. Kumulative Einschränkungen können eine Eigenschaft der Objekte102 sein, die funktionale Grenzwerte auf die Fähigkeit des Objekts102 legen, um ein Ereignis auszuführen. Eine kumulative Einschränkung kann bedeuten, dass ob das Objekt102 in der Lage ist, ein Ereignis auszuführen, mindestens teilweise basierend auf einer Historie von vergangenen Eigenschaften bestimmt wird. Beispielsweise kann ein Bildsammlungsereignis in einem Bildgebungssatelliten durch Datenkapazitätsbegrenzungen, Leistungsanforderungen und/oder thermische Erwägungen eingeschränkt werden. Wie hierin unter Bezugnahme auf5 ausführlicher beschrieben, können kumulative Einschränkungen während einer Berechnung eines Weges durch eine Sammlung von Graphen in einem graphbasierten Ansatz zum Finden eines wünschenswerten Zeitplans verwendet werden. - Datenkapazitätsbegrenzungen können sich auf Grenzwerte bei dem Bildgebungssatelliten hinsichtlich der Speicherung von Bits von Daten und Übertragen der Bits von Daten zu einer empfangenden Station beziehen. Datenkapazitätsbegrenzungen können sich auf eine Menge von bordeigener Speicherung auf dem Bildgebungssatelliten beziehen. Datenkapazitätsbegrenzungen können sich auf eine betriebsmäßige Einschränkung beziehen, die den Bildgebungssatelliten zwingt, alle gespeicherten Daten zu einer empfangenden Station während eines Datenübertragungsereignisses zu übertragen. Datenkapazitätsbegrenzungen sind kumulative Einschränkungen, da eine Historie von vergangenen Ereignissen bestimmt, ob eine Datenkapazitätsbegrenzung verletzt würde. Wenn sich beispielsweise die bordeigene Speicherung der Maximumkapazität nähert, dann könnte der Versuch, eine zusätzliche Bilderfassung zu speichern, mehr Datenspeicher als verfügbar erfordern. Das zusätzliche Bilderfassungsereignis würde deshalb die kumulative Einschränkung verletzen.
- Leistungsanforderungen können sich auf eine Fähigkeit des Bildgebungssatelliten beziehen, seine Subsysteme mit genügend Leistung versorgt zu halten, um zu funktionieren. Der Bildgebungssatellit kann unterschiedliche Leistungsquellen wie z. B. Solarpanels und/oder Batterien aufweisen. Unterschiedliche Betriebs- und/oder Situationszustände des Bildgebungssatelliten können leistungspositiv sein, wie z. B. wenn der Bildgebungssatellit Sonnenlicht ausgesetzt wird und keine Bilder erfasst, oder leistungsnegativ, wie z. B. während Bilderfassung. Ein Energiebudget des Bildgebungssatelliten kann durch die Verwendung einer kumulativen Leistungsanforderungseinschränkung verwaltet werden um sicherzustellen, dass genügend Leistung auf dem Bildgebungssatelliten zum Ausführen gewünschter oder kritischer Aufgaben vorhanden ist.
- Thermische Berücksichtigungen können sich auf eine Fähigkeit des Bildgebungssatelliten beziehen, eine Temperatur seiner Komponenten innerhalb von sicheren Betriebsgrenzen zu halten. Beispielsweise können Komponenten des Bildgebungssatelliten die Kamera, das elektrische Nutzlast-Subsystem und das Nutzlast-Funk-Subsystem beinhalten. Die Temperatur von Komponenten kann in Abhängigkeit von Betriebs- und Situationszuständen wie z. B. dem variieren, ob das System eingeschaltet ist, oder ob der Satellit der Sonne ausgesetzt ist. Ob ein bestimmtes Ereignis eine unannehmbare Temperatur auf einer Komponente zum Ergebnis wird, ist mindestens teilweise von einer Historie der Komponente abhängig. Beispielsweise, ob ein Bildgebungsereignis veranlassen wird, dass die Temperatur der Kamera verletzt wird, ist mindestens teilweise von dem Zustand der Kamera in der Zeit vor dem Ereignis abhängig.
- Das Steuerungssystem
100 kann Prioritätsinformationen von dem Priorisierungssystem114 empfangen. Das Priorisierungssystem114 kann ein System sein, das Ereignissen Gewichte oder Prioritäten zuweist. Die Prioritäten können konfiguriert sein, um Ereignissen ein relatives Gewicht zuzuweisen, sodass Ereignisse mit hohen Prioritäten vor Ereignissen mit niedrigen Prioritäten zu bevorzugen sind. Das Priorisierunsgsystem114 kann die Prioritäten zu dem Steuerungssystem100 zur Verwendung in dem Zeitplanungsmodul104 übertragen. Das Priorisierungssystem114 kann Prioritäten Ereignissen gemäß Benutzereingaben, internen Algorithmen, externen Faktoren oder jeder Kombination davon zuweisen. In einigen Ausführungsformen kann das Priorisierungssystem114 eine relativ große Priorität Ereignissen zuweisen, die kritisch sind, effektiv das Zeitplanungsmodul104 zwingen, die kritischen Ereignisse in jedem Zeitplan einzuschließen, den es erstellt. Das Priorisierungssystem114 kann Prioritäten mindestens teilweise basierend auf einer Vielfalt von Faktoren wie z. B. Kundenanfragen, Preis, Zeitnähe eines Ereignisses und anderen Faktoren zuweisen. Wie hierin unter Bezugnahme auf5 ausführlicher beschrieben, können Prioritäten verwendet werden, um Kanten zwischen Knoten zur Verwendung bei der Berechnung eines Weges durch eine Sammlung von Graphen in einem graphbasierten Ansatz zum Finden eines wünschenswerten Zeitplans verwendet werden. - In einigen Ausführungsformen sind das Zeitplanungsmodul
104 und das Befehlsmodul106 Komponenten in einem unitären Steuerungssystem100 . In einigen Ausführungsformen sind das Zeitplanungsmodul104 und das Befehlsmodul106 physikalisch getrennte Systeme, die zum Kommunizieren miteinander durch ein Netzwerk, direkte verdrahtete Verbindung, direkte drahtlose Verbindung oder durch andere Mittel konfiguriert sind. Das Ereignissystem108 , die Datenbank110 für paarweise Einschränkungen, die Datenbank für kumulative Einschränkungen112 und das Priorisierungssystem114 können Komponenten eines unitären Systems, Teil des Steuerungssystems100 , physikalisch getrennte Systeme oder Kombinationen davon sein. -
3 veranschaulicht ein Blockdiagramm einer beispielhaften Ausführungsform eines Steuerungssystems100 , das eine Benutzerschnittstelle120 enthält. Das Steuerungssystem100 empfängt Eingaben von Benutzereingabe122 und gibt Informationen über einen vorgeschlagenen Zeitplan an die Benutzerschnittstelle120 aus. Durch Benutzereingabe122 kann ein Benutzer Informationen zu dem Steuerungssystem100 übertragen, die Ereignisse, Einschränkungen und/oder Prioritäten betreffen. Die Benutzereingabe122 kann von einem Benutzer über ein Computergerät wie z. B. einen Server, einen Desktop-Computer, einen Laptop, ein Smartphone, einen persönlichen digitalen Assistenten (PDA) und dergleichen empfangen werden. Der Benutzer kann Ergebnisse eines Zeitplanungsprozesses durch die Benutzerschnittstelle120 betrachten (z. B. eine Benutzerschnittstelle auf dem Computergerät). In einigen Ausführungsformen kann der Benutzer die Ergebnisse des Zeitplanungsprozesses auf der Benutzerschnittstelle120 betrachten, und durch die Benutzereingabe122 dem Steuerungssystem100 zusätzliches Feedback bereitstellen, um ein neues Ergebnis zu erreichen. In einigen Ausführungsformen wird das Befehlsmodul106 auf eine Benutzereingabe oder -zustimmung durch Benutzereingabe122 warten, bevor es mit dem Senden von Steuerungsanweisungen an ein Objekt(e)102 fortfährt. - Die Benutzerschnittstelle
120 kann eine Anzeige beinhalten, die dem Benutzer ermöglicht, Zeitplanungsinformationen zu betrachten, die durch das Zeitplanungsmodul104 erzeugt werden. Die Benutzerschnittstelle120 kann Elemente beinhalten, die es dem Benutzer ermöglichen, mit den Informationen zu interagieren, Änderungen bei Zeitplänen gemäß den vorgeschlagenen Änderungen an Eingabeparametern zu simulieren, detaillierte Ergebnisse über einen vorgeschlagenen Zeitplan und/oder alternative Zeitpläne zu betrachten, und dergleichen. Die Benutzerschnittstelle120 kann auf einem Server, Desktop-Computer, Tablet, Smartphone, PDA oder dergleichen bereitgestellt werden. - Die Benutzereingabe
122 kann dem Benutzer eine Fähigkeit zum Übertragen von Informationen zu einem Zeitplanungsmodul104 bereitstellen. Die Benutzereingabe122 kann Teil desselben Systems wie die Benutzerschnittstelle120 , das Zeitplanungsmodul104 , das Befehlsmodul106 , das Steuerungssystem100 oder jede Kombination davon sein. Die Benutzereingabe122 kann physikalische Elemente beinhalten, die zulassen, dass der Benutzer Informationen zu dem Zeitplanungsmodul sendet, wie z. B. eine Tastatur, eine Touchscreen-Oberfläche, ein Mikrofon, eine Kamera, ein Joystick, Schaltflächen, Schalter oder andere ähnliche Benutzereingabeelemente oder eine Kombination von Elementen. In einigen Ausführungsformen sind die Benutzerschnittstelle120 und die Benutzereingabe122 ein unitäres System wie z. B. ein Computer, Tablet, Smartphone, PDA oder dergleichen. Auf diese Weise kann sich der Benutzer mit dem Steuerungssystem100 verbinden, um Eingabe und Führung in Bezug auf die Steuerung von Objekten102 bereitzustellen. In einigen Ausführungsformen kann die Benutzerschnittstelle120 und/oder die Benutzereingabe122 miteinander und/oder mit dem Steuerungssystem100 über ein Netzwerk kommunizieren. Das Netzwerk kann ein verdrahtetes, drahtloses, terrestrisches und/oder Satellitennetzwerk beinhalten, das ein lokales Netzwerk (LAN), ein Großraumnetzwerk (WAN), das Internet usw. beinhalten kann. - In einigen Ausführungsformen empfängt das Steuerungssystem
100 Informationen über Ereignisse, Einschränkungen und/oder Prioritäten von externen Systemen oder Datenbanken zusätzlich zum Empfangen von Informationen durch Benutzereingabe122 . Das Steuerungssystem100 kann ohne Eingabe von dem Benutzer funktionieren, doch der Benutzer kann Informationen zum Abändern oder Ändern der Ergebnisse des Zeitplanungsmoduls104 eingeben. - Zeitplanungsmodul
-
4 veranschaulicht ein Blockdiagramm eines Zeitplanungsmoduls104 gemäß einigen Ausführungsformen. Das Zeitplanungsmodul104 kann Hardware-, Software- und/oder Firmwarekomponenten umfassen, die zum Erstellen von Zeitplänen für das Steuerungssystem100 verwendet werden. Das Zeitplanungsmodul104 kann zum Empfangen von Informationen von unterschiedlichen Systemen verwendet werden, einen oder mehrere Graphen mindestens teilweise basierend auf den empfangenen Informationen, Bestimmen eines erwünschten Weges durch die erstellten Graphen und übermitteln des erwünschten Graphen zu einem oder mehreren Systemen wie z. B. dem Befehlssystem106 konfiguriert sein. Das Zeitplanungsmodul104 kann ein Graphmodul150 , ein Zeitplananalysemodul152 , eine Steuerung154 und Objekt-/Zeitplandatenspeicher156 beinhalten. Komponenten des Zeitplanungsmoduls104 können miteinander, mit externen Systemen und mit anderen Komponenten des Steuerungssystems100 über Kommunikationsbus158 kommunizieren. Das Zeitplanungsmodul104 kann jedes hierin beschriebene beliebige Verfahren zum Erstellen optimaler oder nahezu optimaler Zeitpläne verwenden, wie z. B. die beispielhaften Verfahren500 und700 , die hierin unter Bezugnahme auf5 und7 beschrieben sind. Zusätzlich oder alternativ kann das Zeitplanungsmodul104 jedes hierin beschriebene Verfahren zum Verwenden von Crowd-Sourcing-Daten verwenden, wie z. B. die beispielhaften Verfahren1100 und1200 , die hierin unter Bezugnahme auf11 und12 beschrieben sind. - Das Zeitplanungsmodul
104 beinhaltet ein Graphmodul150 . Das Graphmodul150 kann zum Erzeugen gerichteter azyklischer Graphen mindestens teilweise basierend auf Ereignissen und paarweisen Einschränkungen konfiguriert sein. Gerichtete azyklische Graphen können Knoten beinhalten, die Ereignisse und gerichtete Kanten repräsentieren, die Knoten verbinden und zulässige Sequenzen von Ereignissen repräsentieren, siehe6 für einen beispielhaften, gerichteten azyklischen Graphen600 . Das Graphmodul150 kann eine Liste von Ereignissen empfangen, von denen ein Zeitplan von Ereignissen hergestellt wird. Für jedes Ereignis kann das Graphmodul150 einen oder mehrere Knoten erstellen, die diskretisierte Startzeiten und/oder Zeitdauern für das Ereignis repräsentieren. Sobald Knoten für mehr als ein Ereignis erstellt sind, kann das Graphmodul150 Kanten zwischen Knoten in unterschiedlichen Ereignissen erstellen. Das Graphmodul150 kann mit einem ersten Knoten in einem ersten Ereignis starten und versuchen, eine gerichtete Kante zu erstellen, die von dem ersten Knoten zu einem Knoten in einem anderen Ereignis weist. Das Graphmodul150 wird die gerichtete Kante erstellen, wenn das Verbinden der zwei Knoten keine paarweisen Einschränkungen verletzt. Das Graphmodul150 kann effektiv erzwingen, dass ein kritisches Ereignis, wenn gewünscht, in einem Zeitplan eingeschlossen wird, indem ein Graph erstellt wird, bei dem alle annehmbaren Wege des Graphen durch das kritische Ereignis hindurchgehen. Ein kritisches Ereignis ist optional und für bestimmte Zeitpläne werden keine kritischen Ereignisse verwendet. Für Zeitpläne, bei denen ein kritisches Ereignis erwünscht ist, kann das Graphmodul150 , um das kritische Ereignis zu erzwingen, einen Graphen erstellen, der anders als ein Graph ist, der ansonsten konstruiert worden wäre, Kanten entfernen, die paarweise Einschränkungen nicht verletzen, wobei dies jedoch die Umgehung des kritischen Ereignisses zum Ergebnis gehabt hätte. Beispielsweise umgehen in6 einige Wege durch den Graphen das Sammlungsereignis610c . Um ein Bildsammlungsereignis610c zu einem kritischen Ereignis zum machen, würde das Graphmodul150 die Kanten entfernen, die Knoten in Bildsammlungsereignis610b direkt mit Knoten in einem Downlink-Ereignis620a verbinden. Indem ein Ereignis zu einem kritischen Ereignis gemacht wird, kann das Graphmodul150 auch einige Knoten entfernen, da jeder Weg durch diese Knoten zum Ergebnis haben würde, dass das kritische Ereignis verfehlt wird. - Das Zeitplanungsmodul
104 beinhaltet ein Zeitplanungsanalysemodul152 . Das Zeitplanungsanalysemodul152 analysiert Wege durch Graphen, die durch das Graphmodul150 erzeugt wurden. Für jeden Graphen versucht das Zeitplananalysemodul152 , einen Weg durch den Graphen zu finden, der eine Nutzungs- oder Kostenfunktion maximiert oder minimiert. Wie genauer unter Bezugnahme auf5 beschrieben, kann das Zeitplananalysemodul152 auf Einschränkungsverletzung prüfen, während die Nutzungsfunktion maximiert wird. Im Gegensatz zu Systemen, die die Nutzungsfunktion zuerst maximieren und danach auf Verletzung von kumulativen Einschränkungen prüfen, kann das Zeitplananalysemodul152 Knoten in einem Weg identifizieren, die kumulative Einschränkungen verletzten würden, wenn sie während des Verfahrens eingeschlossen würden, um einen optimalen Zeitplan zu finden. Das Zeitplananalysemodul152 kann den Knoten in dem Moment entfernen, wenn es herausfindet, das die Einschließung eine kumulative Einschränkung verletzen würde. Sobald entfernt, kann das Zeitplananalysemodul152 mit dem Optimierungsverfahren fortfahren. Auf diese Weise findet das Zeitplananalysemodul152 einen Weg durch den Graphen, der keine Einschränkungen verletzt, und der nahezu optimal ist. Nahezu optimal kann in diesem Fall bedeuten, dass der identifizierte Weg möglicherweise nicht der Weg ist, der die Nutzung maximiert, doch der nahe genug an dem optimalen Weg liegt, um zufriedenstellend zu sein. - Typischerweise wäre ein optimaler Weg durch einen Graphen ein Weg, der die Nutzungsfunktion maximiert, ohne kumulative Einschränkungen zu verletzen, was viele Iterationen durch den Graphen erfordern kann um zu bestimmen, welcher Weg durch den Graphen diese maximale Nutzung zum Ergebnis hat. Das Zeitplananalysemodul
152 kann einen Weg finden, der sich mit denselben oder weniger Iterationen an die maximale Nutzung annähert oder sie erreicht, da er Wege identifiziert, die kumulative Einschränkungen an den Punkt von Einschränkungsverletzung verletzen. Wenn dies geschieht, kann das Zeitplananalysemodul den problematischen Abschnitt des Weges entfernen und fährt mit dem Optimierungsverfahren fort. Es kann der Fall eintreten, dass das Entfernen des identifizierten Abschnitts des Weges keine wirklich maximierte Nutzung zum Ergebnis hat (z. B. würde das Entfernen eines anderen Abschnitts eine höhere Nutzung zum Ergebnis haben), jedoch durch Entfernen des problematischen Abschnitts des Weges an dem Punkt von Einschränkungsverletzung es dem Zeitplananalysemodul152 ermöglicht würde, zu einem optimalen oder nahezu optimalen Weg durch den Graphen mit relativ weniger Iterationen, und daher mit größerer Geschwindigkeit und/oder Effizienz zu gelangen. Weiterhin begrenzt das Zeitplananalysemodul152 das Entfernen einer Kante oder eines Knotens an einem Punkt in dem Graphen vor Einschränkungsverletzung, anstatt zu versuchen, Kanten oder Knoten über den Graphen zu entfernen, um einen optimierten Weg zu erhalten. Daher kann das Zeitplananalysemodul152 effizient einen nahezu optimalen Weg durch den Graphen konstruieren, der keine Einschränkungen verletzt. - Das Zeitplanungsmodul
104 beinhaltet eine Steuerung154 . Die Steuerung154 kann einen oder mehrere Hardwareprozessoren beinhalten und kann durch jede der anderen Komponenten verwendet werden, wie z. B. das Graphmodul150 oder das Zeitplananalysemodul152 , um Informationen zu verarbeiten. Wie hierin verwendet, bezieht sich der Begriff „Prozessor” umfassend auf jede geeignete Vorrichtung, logischen Block, Schaltung oder Kombination von Elementen zum Ausführen von Anweisungen. Die Steuerung154 kann jeder herkömmliche Allzweck-Einfach- oder Multichip-Mikroprozessor sein. Zusätzlich kann die Steuerung154 jeder herkömmliche Sonderzweck-Mikroprozessor, wie z. °B. ein digitaler Signalprozessor sein. Die unterschiedlichen veranschaulichenden logischen Blöcke, Module und Schaltungen, die in Verbindung mit den hierin offenbarten Ausführungsformen beschrieben sind, können mit einem Allzweckprozessor, einem digitalen Signalprozessor (DSP), einer anwendungsorientierten integrierten Schaltung (ASIC), einem feldprogrammierbaren Gate-Array (FPGA) oder anderen programmierbaren logischen Vorrichtungen, diskreter Gate- oder Transistorlogik, diskreten Hardwarekomponenten, Schaltungen oder jeder Kombination davon konzipiert werden, um die hierin beschriebenen Funktionen auszuführen. Ein Allzweckprozessor, wie z. B. Steuerung154 , kann ein herkömmlicher Mikroprozessor sein, aber die Steuerung154 kann auch jeder herkömmliche Prozessor, jede Steuerung, jeder Mikrocontroller oder Zustandsmodul sein. Steuerung154 kann auch als eine Kombination von Computergeräten implementiert werden, z. B. eine Kombination eines DSP und eines Mikroprozessors, einer Mehrzahl von Mikroprozessoren, einer oder mehrere Mikroprozessoren in Verbindung mit einem DSP-Kern oder jede andere dieser Konfigurationen. - Das Zeitplanungsmodul
104 beinhaltet Objekt-/Zeitplandatenspeicherung156 . Datenspeicher156 kann mit den anderen Komponenten des Zeitplanungsmoduls104 , wie z. B. der Steuerung154 , dem Graphmodul150 und dem Zeitplananalysemodul152 , verbunden werden. Datenspeicher156 kann sich auf eine nicht vorübergehende elektronische Schaltung beziehen, die zulässt, dass Informationen, typischerweise Computerdaten, gespeichert und abgerufen werden. Datenspeicher156 kann sich auf externe Vorrichtungen oder Systeme, z. B. Festplattenlaufwerke, optische Laufwerke oder Solid-State-Laufwerke, beziehen. Datenspeicher156 kann sich auch auf schnelle Halbleiterspeicher (Chips), z. B. Arbeitsspeicher (RAM) oder unterschiedliche Formen von schreibgeschützten Speicher (ROM) beziehen, die direkt mit dem einen oder mehreren Prozessoren des Zeitplanungsmoduls104 verbunden sind. Andere Arten von Speicher beinhalten Blasenspeicher und Kernspeicher. - Beispielhaftes Verfahren zum Finden von nahezu optimalen Zeitplänen
- Das Zeitplanungsmodul
104 kann unterschiedliche Verfahren verwenden, die gerichtete Graphen verwenden, um einen optimalen oder nahezu optimalen Zeitplan von Ereignissen zu finden. Das Zeitplanungsproblem, wie es im Allgemeinen beschrieben ist, kann zu einer Klasse von Problemen gehören, die NP-schwer sind, was mindestens teilweise auf die Tatsache zurückzuführen ist, dass es ein Optimierungsproblem ist, kontinuierliche Variable (z. B. Startzeit eines Ereignisses) und diskrete Variable (z. B. Auswählen von auszuführenden Ereignissen) zu mischen. Ein Ergebnis der Graphtheorie besteht darin, dass das Finden eines längsten oder kürzesten Wegs durch einen Satz von gerichteten azyklischen Graphen im Allgemeinen in polynomieller Zeit lösbar ist. - Wie im Allgemeinen konstruiert, versucht das Zeitplanungsproblem, eine Sequenz von Ereignissen zu finden, die eine Nutzungs-(oder Kosten-)funktion maximiert (oder minimiert). Beispielsweise kann eine Kostenfunktion einen binären Indikator, ci integrieren, ob ein Ereignis, i, ausgewählt wird; eine Abschlusszeit für ein Ereignis, ti; und eine Priorität oder Gewicht für das Ereignis, wi. Mathematisch ausgedrückt besteht das Problem darin, ein Maximum der Summe des Produktes des binären Indikators und der Priorität zu finden, ciwi, wobei das Ereignis, i, eine Startzeit, ti, aufweist, d. h. nach einer frühesten annehmbaren Startzeit, sti und vor einer spätesten annehmbaren Startzeit, eti: max Σ
N / i=0 - Zum Integrieren von Einschränkungen werden zusätzliche Kriterien verwendet. Beispielsweise kann eine paarweise Einschränkung beinhaltet werden, pwcon(ti+1, ti) und eine kumulative Einschränkung kann beinhaltet werden, Xi: Die paarweise Einschränkung kann von einer Zeit zwischen einem Ende eines ersten Ereignisses, ti + τi, und einem Beginn eines zweiten Ereignisses, ti+1, abhängig sein, wobei τi eine Zeitdauer eines Ereignisses i ist. Für einen Bildgebungssatelliten kann eine paarweise Einschränkung eine Agilitätsfunktion sein, die von Zeigewinkeln, θ, zwischen Ereignissen abhängig ist. Kumulative Einschränkungen für den Bildgebungssatelliten können eine Temperatur der Kamera, TKAM, eine Temperatur einer Elektrik, TES, eine Temperatur eines Funksystems, TRS, an Ende eines Ereignisses, d, gespeicherte Daten und nach einem Ereignis, e, verbleibende Energie sein. Die zu maximierende Funktion wäre dann in diesem Fall: In diesem Beispiel ist die Nutzungsfunktion eine Summe der Prioritätsgewichte für die Ereignisse, die aktuell ausgewählt sind. Die Ausgabe der Optimierung wird das Subset von Ereignissen sein, die ausgeführt werden (und ihre zugehörigen Startzeiten), die die Nutzungsfunktion maximiert, wobei sie die Einschränkungen des Systems einhält. Wie oben ausgeführt, ist das Optimierungsproblem schwierig, da es eine Mischung aus diskreten und kontinuierlichen Variablen ist.
- Die kumulativen Einschränkungen können über die Zeit berechnet werden. Um dies zu tun, können Informationen in einer vorherigen Stufen zusammen mit einer Funktion verwendet werden, die beschreibt, wie sich die kumulative Einschränkung über die Zeit entwickelt. Das Ergebnis ist eine Gleichung, die jede mit einer kumulativen Einschränkung verbundene Variable an einem gegebenen Zeitpunkt repräsentiert, wovon Beispiele in den Gleichungen unten angegeben sind: In den obigen Gleichungen werden Funktionen verwendet, die Wirkungen auf die Variablen repräsentierten, wenn ein bestimmtes System eingeschaltet ist (z. B. XEIN(...)) und Aus (z. B. XAUS(...)).
- Ein Ansatz zum Finden eines optimalen Weges besteht im Verwenden gerichteter Graphen. Unter Verwendung dieses Ansatzes wird jedes Ereignis ein Knoten in einem Graphen, wobei Kanten, die Knoten verbinden, Sequenzen von Ereignissen repräsentieren, die definierte Einschränkungen nicht verletzten, siehe
6 für ein Beispiel von einem gerichteten azyklischen Graphen600 . Die Kanten können gewichtet werden, um ihre Kosten zu repräsentieren, wobei eine Summe der Kosten in Abhängigkeit von der Anwendung maximiert oder minimiert werden kann. Beispielsweise kann für eine Bildgebungssatellitenanwendung der längste Weg oder die Maximalkosten oder der -nutzen die am meisten erwünschte Liste von Ereignissen repräsentierten, die innerhalb eines gegebenen Zeitrahmens durchgeführt werden kann. Ein Weg durch den gerichteten Graphen repräsentiert einen annehmbaren Zeitplan von Ereignissen. Algorithmen zum Finden eines kürzesten Wegs durch einen Graphen beinhalten z. B. den Dijkstra-Algorithmus, beschrieben in E. W. Dijkstra, „A Note on Two Problems in Connexion with Graphs" (Ein Hinweis auf zwei Probleme in Verbindung mit Graphen) Numerische Mathematik, Band. 1, Nr. 1, Seiten 269–271 (1959). Andere Algorithmen zum Finden eines kürzesten oder längsten Wegs durch einen Graphen können in anderen Ausführungsformen verwendet werden, wie z. B. der Bellman-Ford-Algorithmus, der Floyd-Warshall-Algorithmus oder Johnson-Algorithmus. -
5 veranschaulicht ein Ablaufdiagramm eines beispielhaften Verfahrens500 zum Finden eines nahezu optimalen Zeitplans unter Verwendung gerichteter Graphen. Zwecks einfacher Beschreibung werden die Blöcke in dem Verfahren500 dahingehend beschrieben, dass sie durch das Zeitplanungsmodul104 ausgeführt werden. Blöcke in dem Verfahren500 können jedoch durch unterschiedliche Systeme oder Module oder Kombinationen davon ausgeführt werden. Zusätzlich wird über die gesamte Beschreibung Bezug auf einen beispielhaften gerichteten azyklischen Graphen600 genommen, wie in6 veranschaulicht. - In Block
505 erstellt das Zeitplanungsmodul104 einen Graphen, der Knoten und Kanten aufweist, die Knoten verbinden. Beispielsweise kann das Zeitplanungsmodul104 den Graphen600 erstellen, der Ereignisse610a ,610b ,610c ,620a ,620b und630 aufweist, wobei jedes Ereignis einen oder mehrere Graphen aufweist, die Bezugszeichen612a ,612b ,612c ,622a ,622b und632 entsprechen. Kanten614 verbinden Knoten da, wo eine zwei Knoten verbindende Kante gezogen wird, wenn das Ausführen von beiden Knoten nacheinander paarweise Einschränkungen nicht verletzt. Da keine Kanten in dem Graphen beinhaltet sind, die paarweise Einschränkungen verletzten würden, ist jeder Weg durch den Graphen nicht paarweise eingeschränkt. An diesem Punkt kann das Zeitplanungsmodul104 kritische Ereignisinformationen integrieren. Ein kritisches Ereignis kann ein Ereignis sein, das erforderlich oder sehr erwünscht ist. Ein bestimmter Graph kann eines oder mehrere kritische Ereignisse beinhalten oder nicht. Das Zeitplanungsmodul104 kann den Graphen abändern, sodass das kritische Ereignis oder die Ereignisse in keinster Weise umgangen werden oder dass alle Wege durch den Graphen Knoten in dem kritischen Ereignis oder den Ereignissen beinhalten. Beispielsweise kann in6 Ereignis610c durch Entfernen von Kanten614 kritisch gemacht werden, die Knoten612b in dem Bildsammlungsereignis610b mit Knoten622a in Downlink-Ereignis620a verbinden. Das Zeitplanungsmodul104 kann Informationen über Ereignisse, Einschränkungen, Prioritäten, kritische Ereignisse und dergleichen von Quellen wie z. B. einem Benutzer oder Benutzern, entfernten Modulen oder Systemen, lokalen Modulen oder Systemen, Datenspeicherung oder dergleichen empfangen. - In Block
510 wählt das Zeitplanungsmodul104 einen Knoten aus. Es kann ein Startknoten und ein entsprechender Endknoten vorhanden sein, wobei alle anderen Knoten zwischen den Startknoten und Endknoten fallen. Das Zeitplanungsmodul104 kann durch die Knoten in dem Graphen eines auf einmal iterieren, um einen optimalen oder nahezu optimalen Weg zu finden. In Block515 wählt das Zeitplanungsmodul104 eine ankommende Kante für den ausgewählten Knoten aus. Die ankommende Kante ist eine Kante, deren Ursprung in einem vorangegangenen Knoten liegt und an dem ausgewählten Knoten endet. Das Zeitplanungsmodul104 kann durch ankommende Kanten an dem ausgewählten Knoten iterieren, um die Kante zu bestimmen, die den höchsten eingehenden Wert aufweist, der kumulative Einschränkungen nicht verletzt. - In Block
520 prüft das Zeitplanungsmodul104 den Wert der ausgewählten ankommenden Kante um zu bestimmen, ob er einen höheren Gesamtwert der Nutzungsfunktion zum Ergebnis hat. Der Wert der ausgewählten ankommenden Kante kann einem der Kante zugewiesenen Gewichts- oder Prioritätswert entsprechen. Der Wert der ausgewählten ankommenden Kante kann einem Wert der Nutzungsfunktion eines ankommenden Weges entsprechen. Daher kann das Zeitplanungsmodul104 die ankommende Kante auswählen, die den höchsten Nutzungswert zum Ergebnis hätte. Wo der Wert der ausgewählten ankommenden Kante einem Wert eines ankommenden Weges entspricht, nicht einfach einer ankommenden Kante, kann das Zeitplanungsmodul104 den ankommenden Weg auswählen, der den höchsten Nutzungswert zum Ergebnis hat. - In Block
525 prüft das Zeitplanungsmodul104 , ob das Integrieren der ausgewählten ankommenden Kante in dem Weg eine kumulative Einschränkung verletzen würde. Die ausgewählte ankommende Kante kann Informationen über einen entsprechenden ankommenden Weg beinhalten. Das Zeitplanungsmodul104 kann einen Wert von einem oder mehreren Parametern im Verhältnis zu kumulativen Einschränkungen berechnen um zu prüfen, ob die Einbindung des vorangegangenen Weges eine Verletzung der Einschränkungen zum Ergebnis hätte. Wenn eine Einschränkung verletzt wird, dann ist der ankommende Weg nicht in dem endgültigen Weg beinhaltet. Auf diese Weise kann das Zeitplanungsmodul104 einen Weg konstruieren, der keine Einschränkungen verletzt und der optimal oder nahezu optimal ist. Es kann nahezu optimal sein, wenn eine vorangegangene Kante anders als die ankommende Kante ein primäres Mitwirkungselement bei einer Verletzung in der kumulativen Einschränkung ist. In diesem Fall kann das Entfernen des primären Mitwirkungselements einen Weg mit einer höheren Nutzung zum Ergebnis haben. Wenn beispielsweise das Zeitplanungsmodul104 bestimmt, dass das Einschließen der ankommenden Kante eine kumulative Einschränkung verletzten würde, kann es sein, dass das Entfernen einer in dem ankommenden Weg eingeschlossenen Vorgängerkante einen ankommenden Weg zum Ergebnis haben würde, der kumulative Einschränkungen nicht verletzt, der aber einen höheren Nutzungswert zum Ergebnis hätte. Um jedoch die zu entfernende optimale Vorgängerkante zu entdecken, kann mehr Zeit und/oder Rechenleistung als erwünscht erfordern. Daher das Zeitplanungsmodul104 unter Verwendung des Verfahrens500 auf relativ schnelle und/oder effiziente Art einen Weg bestimmen, der genügend nahe an dem optimalen Weg liegt, um für einen beabsichtigten Zweck zufriedenstellend zu sein. Beispielsweise kann es in einer Konstellation von Bildgebungssatelliten wünschenswert oder wertvoller sein, in der Lage zu sein, Zeitpläne schnell so zu aktualisieren, dass sie auf sich ändernde Bedürfnisse und/oder Kundenanforderungen reagieren, anstatt die maximale Nutzung der Konstellation zu finden. - Wenn die ausgewählte ankommende Kante einen höheren Gesamtwert der Nutzungsfunktion zum Ergebnis hat und keine kumulativen Einschränkungen verletzt, beinhaltet das Zeitplanungsmodul
104 den Ursprungsknoten als den Vorgängerknoten für den aktuell ausgewählten Knoten in Block530 . - In Block
535 prüft das Zeitplanungsmodul104 , ob alle ankommenden Kanten geprüft wurden. Wenn verbleibende ankommende Kanten vorhanden sind, kehrt das Zeitplanungsmodul104 zu Block515 zurück. Wenn alle ankommenden Kanten geprüft wurden, prüft das Zeitplanungsmodul104 , ob alle Knoten in dem Graphen analysiert wurden, in Block540 . Wenn zusätzliche Knoten vorhanden ist, dann kehrt das Zeitplanungsmodul104 zu Block510 zurück, um einen anderen Knoten auszuwählen. Wenn alle Knoten analysiert wurden, dann schließt das Zeitplanungsmodul104 das Verfahren durch Erzeugen des optimierten oder nahezu optimierten Zeitplans durch Rückverfolgen über die ausgewählten Vorgängerprozessorkonten in Block545 ab. In6 entspricht der optimierte oder nahezu optimierte Zeitplan den fettgedruckten Pfeilen616 durch den Graphen600 . - In einigen Implementierungen kann der Algorithmus in Blöcken
515 bis einschließlich540 wie folgt repräsentiert werden. In der Konstruktion wird Optimierung durch das Durchschleifen durch Knoten und für jeden Knoten, j, Auswählen des längsten ankommenden kumulativen Weges, Distanzj erreicht. Das Set in-Kantenj ist alle die Knoten, die Kanten aufweisen, deren Ursprung in einem anderen Knoten liegt, und die in Knoten j enden. Dieses Set ist das geschlossene Set von Knoten, von denen ein Vorgängerknoten (vorherigerj) für Knoten j ausgewählt wird. Die Gewichte, wij, repräsentieren die Priorität oder den gewichteten Wert der Kante, die Knoten i und j verbindet. - Zum Integrieren von kumulativen Einschränkungen kann der obige beispielhafte Algorithmus so modifiziert werden, dass er Schritte beinhaltet, um auf Einschränkungsverletzung zu prüfen: wobei CUMUL1 eine Funktion repräsentiert, die einen Wert für einen Parameter, X, berechnet, wobei der Parameter einer kumulativen Einschränkung entspricht. Die Funktion kann einen Wert des Parameters unter der Annahme berechnen, dass die zwei in Frage stehenden Ereignisse ausgeführt werden. Die Funktion kann Informationen über vergangene Ereignisse integrieren, sodass die Funktion den Wert des Parameters für einen bestimmten ankommenden Weg repräsentiert. Daher kann das Zeitplanungsmodul
104 Kanten identifizieren, die Verletzungen von kumulativen Einschränkungen zu der Zeit zum Ergebnis haben, wenn die Einschränkung verletzt wird. Das Zeitplanungsmodul104 kann die Kante von dem Weg entfernen und durch das Verfahren500 fortfahren, den optimalen Weg zu finden, der die Kante nicht beinhaltet, die die kumulative Einschränkung verletzt. - Einschränkungen können unter Verwendung von dieser und ähnlichen Formulierungen hinzugefügt, entfernt oder modifiziert werden, wodurch ermöglicht wird, dass Zeitpläne dynamisch gemäß sich ändernden Umständen aktualisiert werden können. Beispielsweise kann dem System eine zusätzliche Einschränkung hinzugefügt werden. Die zusätzliche Einschränkung würde das Hinzufügen einer zusätzlichen „wenn”-Aussage in dem obigen Algorithmus mit einer passenden Gleichung und/oder einem Vergleich zum Ergebnis haben. Auf ähnliche Weise kann eine Einschränkung durch Entfernen der entsprechenden „wenn”-Aussage entfernt werden. Auf ähnliche Weise kann eine Einschränkung durch Abändern des entsprechenden Einschränkungswerts (z. B. Xmax) oder Einschränkungsfunktion (z. B. KUMUL1) abgeändert werden. Beispiele von zusätzlichen Einschränkungsfunktionen sind unten bereitgestellt: Zusätzlich, wo solche Einschränkungsfunktionen verwendet werden, sollten entsprechende Änderungen an den Einschränkungswerten in die Funktion integriert werden;
- In einigen Ausführungsformen kann das Zeitplanungsmodul
104 Parallelisierung zum Lösen mehrerer Graphen (oder Aspekte desselben Graphen) gleichzeitig verwenden. Beispielsweise kann der durch das Verfahren500 verkörperte knotenzentrische Algorithmus für viele unterschiedliche Knoten gleichzeitig ausgeführt werden, wobei Knoten von vorangegangenen Knoten unabhängig sind (z. B. sind die Knoten nicht durch eine Kante von Kombinationen von Kanten verbunden). Unabhängige Knoten können parallel optimiert werden, wodurch der Graph effektiv abgeflacht wird, sodass seine gesamte Berechnungszeit in der Größenordnung von der größten Anzahl von Kanten zwischen den Start- und Endknoten liegen kann (die im Allgemeinen kleiner oder gleich der Gesamtanzahl von Knoten in dem Graphen ist). In einigen Ausführungsformen nutzt das Zeitplanungsmodul104 Parallelisierung durch Optimieren unterschiedlicher Graphen, die unterschiedliche Zeitspannen darstellen, parallel. In einigen Ausführungsformen kann das Zeitplanungsmodul104 mehrere Klone von Graphen mit Unterschieden unter ihnen erstellen, um Parallelisierung zu nutzen und einen höchstbewerteten Weg unter den erzeugten, nahezu optimalen Wegen zu finden, wodurch ermöglicht wird, dass das Zeitplanungsmodul104 den optimalen Weg durch den Graphen herausfinden oder besser annähern kann. Beispielsweise kann das Zeitplanungsmodul104 Graphen klonen und Kanten entfernen, die im Verdacht stehen, dass sie veranlassen, dass eine kumulative Einschränkung verletzt wird. Verdächtige Kanten können auf diejenigen Kanten begrenzt werden, die zeitlich vor der Einschränkungsverletzung auftreten. Mindestens teilweise aufgrund des Entfernens von verdächtigen Kanten kann das Zeitplanungsmodul104 einen Weg durch den Graphen identifizieren, der sich an den optimalen Weg annähert. Mindestens teilweise, um das Entfernen von Kanten auf diejenigen zu begrenzen, die zu einer vergangenen Zeit entfernt wurden, kann das Zeitplanungsmodul104 relativ schnell einen erwünschten Weg durch den Graphen bestimmen. Parallelisierung kann mindestens teilweise aufgrund der Verfügbarkeit von massiver Parallelisierung der Berechnung unter Verwendung von Standard-Hardware oder -Software für verteiltes Berechnen vorteilhaft sein, wie z. B. die APACHETM HADOOPTM-Softwarebibliothek (erhältlich von The Apache Software Foundation). - Wie oben erwähnt, veranschaulicht
6 einen beispielhaften Graphen600 , der mögliche Wege614 (gestrichelte Linien) durch den Graphen und einen nahezu optimalen Weg616 (dicke durchgezogene Linie) darstellt. Der Graph600 kann Ereignisse für eine Konstellation von Bildgebungssatelliten wie z. °B. die in1 dargestellte beispielhafte Konstellation10 repräsentieren. Der Graph beinhaltet Bildsammlungsereignisse610a ,610b und610c ; Downlink-Ereignisse620a und620b ; und ein Onboard-Wartungsereignis630 . Für jedes Ereignis610a ,610b ,610c ,620a ,620b und630 sind einer oder mehrere Knoten612a ,612b ,612c ,622a ,622b und632 vorhanden. Kanten614 repräsentieren annehmbare Sequenzen von Ereignissen, bei denen die Sequenz nicht paarweise eingeschränkt ist. Beispielsweise gibt eine Kante614 , die in einem Knoten612a beginnt und in Knoten612b endet, an, dass Ausführen des Bildsammlungsereignisses610a , das einem bestimmten Knoten612a entspricht, gefolgt von Ausführen des Bildsammlungsereignisses610b , das einem bestimmten Knoten612b entspricht, keine paarweisen Einschränkungen verletzt, wie z. B. eine Agilitätseinschränkung. In dem Graphen600 entspricht die Vertikalachse605a grob dem Anstiegswinkel und die Horizontalachse605b entspricht der Zeit. Einige Ereignisse in dem Graphen600 erfordern keinen definierten Zeigewinkel, wie z. B. das Onboard-Wartungsereignis630 , wird jedoch so repräsentiert, dass es einen bestimmten Winkel in dem Graphen600 aufweist. Das heißt nicht, dass ein Zeigewinkel dem Onboard-Wartungsereignis630 zugeordnet wird, außer wenn es angemessen ist, dies zu tun. Die Horizontallänge der Ereignisse in dem Graphen kann annehmbare Startzeiten für das bestimmte Ereignis repräsentieren. Beispielsweise kann ein Bildsammlungsereignis610a eine definierte Zeitdauer aufweisen, die einer Zeit entspricht, die sich der Bildgebungssatellit über einem Zielbereich auf der Erde befindet. - Zum Konstruieren eines einzelnen Graphen
600 kann das Zeitplanungsmodul104 Ereignisse in Gruppen teilen, wobei jede Gruppe durch einen anderen Graphen600 repräsentiert wird. Zum Teilen der Gruppen kann das Zeitplanungsmodul104 Lücken zwischen Ereignissen finden, wobei aufeinanderfolgende Ereignisse nicht paarweise eingeschränkt sind. Beispielsweise kann das Zeitplanungsmodul104 für eine Konstellation von Bildgebungssatelliten alle über die Zeit einer Woche auszuführenden Ereignisse sammeln. Für diese Ereignisse können Gruppen von Ereignissen erstellt werden, wobei eine Teilung zwischen einer Gruppe und der nächsten dahingehend definiert ist, wo das erste Ereignis in einer Gruppe mehr als zwei Minuten nach dem letzten Ereignis in der Vorgängergruppe stattfindet. Zwei Minuten werden als ein Beispiel einer maximalen Zeit für einen Bildgebungssatelliten verwendet, um sich um 180 Grad zu drehen. Diese Anzahl kann sich unter anderen Umständen ändern. - Beispielhafte Ausführungsform eines Systems zur Zeitplanung einer Konstellation von Bildgebungssatelliten
-
7 veranschaulicht einen Ablauf einer beispielhaften Ausführungsform eines Verfahrens700 zum Finden nahezu optimaler Zeitpläne von Ereignissen für eine Konstellation von Satelliten, die Duplikationseinschränkungen unterliegt. Das Verfahren700 beinhaltet das Erstellen eines Graphen von Graphen, Finden eines optimierten Weges durch den Graphen von Graphen und Prüfen, ob der optimale Weg Duplikationseinschränkungen verletzt. Duplikationseinschränkungen können Grenzen bei der Anzahl von Malen sein, die ein bestimmtes Ereignis über eine bestimmte Zeitspanne oder innerhalb einer Konstellation von Satelliten auftritt. Zwecks einfacher Beschreibung werden die Blöcke in dem Verfahren dahingehend beschrieben, dass sie durch das Zeitplanungsmodul104 ausgeführt werden. Blöcke in dem Verfahren700 können jedoch durch unterschiedliche Systeme oder Module oder Kombinationen davon ausgeführt werden. Zusätzlich wird über die gesamte Beschreibung Bezug auf einen beispielhaften Graphen von Graphen800 genommen, wie in8 veranschaulicht. - In Block
705 erzeugt das Zeitplanungsmodul104 eine Mehrzahl von Zeitplänen für eine erste Zeitspanne. Die Mehrzahl von Zeitplänen für die erste Zeitspanne kann unter Verwendung hierin beschriebener Verfahren erstellt werden, insbesondere des Verfahrens500 , das hierin unter spezifischer Bezugnahme auf5 beschrieben ist. Zusätzlich zum Finden eines optimalen oder nahezu optimalen Weges, wie hierin beschrieben, kann das Zeitplanungsmodul104 mehrere Zeitpläne erstellen, die unterschiedliche Werte für eine Nutzungsfunktion aufweisen. In einigen Ausführungsformen findet das Zeitplanungsmodul104 die k optimalsten Wege durch einen bestimmten Graphen heraus, wobei k eine Ganzzahl größer als oder gleich 1 ist. Die Graphen können gemäß dem Wert der Nutzungsfunktion des Graphen geordnet werden. Beispielsweise kann der Graph mit der höchstbewerteten Nutzungsfunktion als der 1-optimale Zeitplan, der nächsthöchstbewertete Graph kann als der 2-optimale Zeitplan usw. bis zum k-optimalen Zeitplan bezeichnet werden. Unter Bezugnahme auf8 repräsentieren die Graphen auf der linken Seite die k-optimalen Zeitpläne, wie durch das Zeitplanungsmodul104 bestimmt. Jeder Graph weist einen ihm zugeordneten Wert auf, w, der den Wert der Nutzungsfunktion für den Graphen repräsentiert. Beispielsweise weist der 1-optimale Graph einen Wert w11 auf, der diesem zugeordnet ist, der 2-optimale Graph weist einen Wert w12 auf, der diesem zugeordnet ist, bis hinunter zu dem k-optimalen Graphen, der einen Wert w1k aufweist, der diesem zugeordnet ist, wobei w11 größer als oder gleich w12, w12 größer als oder gleich w13 ist, usw. - In Block
710 erzeugt das Zeitplanungsmodul104 eine Mehrzahl von Zeitplänen für eine zweite Zeitspanne. Die Zeitpläne von der zweiten Zeitspanne können parallel zu den Zeitplänen von der ersten Zeitspanne und parallel zueinander erstellt werden. - In Block
715 erstellt das Zeitplanungsmodul104 einen gerichteten Graphen, wo Zeitpläne von der ersten und zweiten Zeitspanne Knoten in dem gerichteten Graphen sind. Das Zeitplanungsmodul104 kann die Knoten mit Kanten verbinden, die in Graphen von der ersten Zeitspanne beginnen und in Graphen von der zweiten Zeitspanne enden. In einigen Ausführungsformen werden mehr als zwei Zeitspannen verwendet. Das Zeitplanungsmodul104 kann das Verfahren zum Finden von Zeitplänen für eine bestimmte Zeitspanne wiederholen und diese Zeitpläne zu dem Graphen von Graphen hinzufügen. - In Block
720 berechnet das Zeitplanungsmodul104 einen optimalen Weg durch den Graphen von Graphen. Berechnen des optimalen Weges kann das Finden eines Weges durch den Graphen von Graphen beinhalten, was die Summe der Nutzungspunktzahlen der einzelnen Graphen maximiert (z. B. wij). Dieses Verfahren kann den hierin beschriebenen Verfahren ähnlich sein, insbesondere wie unter Bezugnahme auf5 beschrieben. - In Block
725 prüft das Zeitplanungsmodul104 auf Verletzungen von Duplikationseinschränkungen. Duplikationseinschränkungen können Begrenzungen auf eine Anzahl von Malen beinhalten, die ein Ereignis in einem Zeitplan für eine Konstellation von Satelliten oder über definierte Zeitspannen erscheint. Beispielsweise kann ein Bildgebungssatellit mit dem Sammeln von Bildern eines abgezielten Sub-Bereiches beauftragt werden, wenn er sich über einem Zielbereich befindet. Ein Bildgebungssatellit kann über dem Zielbereich bei Zeit 1 und bei Zeit 2 sein, oder unterschiedliche Satelliten können über dem Zielbereich bei Zeit 1 und Zeit 2 sein. Für jede von Zeit 1 und Zeit 2 werden Zeitpläne für den/die Bildgebungssatellit(en) unter Verwendung der hierin beschriebenen Verfahren erstellt. Es kann sein, dass die für diese Zeitspannen erzeugten Zeitpläne das Sammeln von Bildern des abgezielten Sub-Bereiches beinhalten. Das Nehmen von doppelten Bildern ist möglicherweise keine erwünschte Verwendung des Bildgebungssatelliten, da es die Erfassung von Bildern eines anderen Standorts sein könnte. In diesem Beispiel kann eine Duplikationseinschränkung erstellt werden, die die Anzahl von Malen begrenzt, die Bilder für den abgezielten Sub-Bereich gesammelt werden. Daher kann das Zeitplanungsmodul104 prüfen, dass der optimale Weg durch den Graphen von Graphen, der in Block720 gefunden wird, keine Duplikationseinschränkungen verletzt. - In einigen Ausführungsformen können Duplikationseinschränkungen durch Einschließen suboptimaler Zeitpläne in dem Graphen von Graphen gelöst werden, wie oben beschrieben. Beispielsweise beinhaltet in
8 der 1-optimale Graph805 in Zeit 1 ein Ereignis zum Sammeln von Bildern eines abgezielten Sub-Bereiches. Der 1-optimale Graph855 und der 2-optimale Graph860 in Zeit 2 beinhalten auch Ereignisse zum Sammeln von Bildern des abgezielten Sub-Bereiches. Daher erstellt das Zeitplanungsmodul104 zum Vermeiden der Verletzung einer Duplikationseinschränkung, die die Sammlung von Bildern des abgezielten Sub-Bereiches auf 1 begrenzt, einen Zeitplan, der den 1-optimalen Graphen805 in Zeit 1 mit dem 3-optimalen Graphen865 in Zeit 2 verbindet, was durch den ausgefüllten Pfeil830 angegeben ist. - In einigen Implementierungen kann der Algorithmus, der zum Finden des optimalen Weges durch den Graphen von Graphen verwendet wird, der Duplikationseinschränkungen unterliegt, wie folgt repräsentiert werden: wobei ähnlich wie bei dem oben unter Bezugnahme auf
5 beschriebenen Algorithmus Optimierung durch Durchschleifen durch Knoten und für jeden Knoten, j erreicht wird, Auswählen des längsten ankommenden kumulativen Wegs, Distanz. Hierbei sind die Knoten einzelne Zeitpläne oder Graphen. Das Set in-Kantenj ist alle die Knoten, die Kanten aufweisen, deren Ursprung in einem anderen Knoten liegt, und die in Knoten j enden. Dieses Set ist das geschlossene Set von Knoten, von denen ein Vorgängerknoten (vorherigerj) für Knoten j ausgewählt wird. Die Gewichte, wij, repräsentieren die Gesamtpunktzahl des Zeitplans des Knotens, der das Ziel der Kante ist (z. B. wij ist die Punktzahl des Zeitplans sj). Die Knoten, j, weisen die Eigenschaft, sj auf, die alle Ereignisse repräsentiert, die in dem Zeitplan beinhaltet sind, der durch Knoten j repräsentiert wird. Der Gesamtzeitplan bis zu und einschließlich Knoten j wird repräsentiert durch Sj. In dieser Formulierung reiht der Algorithmus die optimalsten Zeitpläne aneinander, wobei er gleichzeitig sicherstellt, kein Ereignis zu wiederholen. Dies kann so eingestellt werden, dass das Duplizieren bestimmter Ereignisse zugelassen wird, oder dass Duplikation von Ereignissen bis zu einer definierten Anzahl von Wiederholungen zugelassen wird. Beispielsweise zur Sammlung von Bildern über einen Bereich, der typischerweise von Wolken bedeckt ist, können Duplikationseinschränkungen eingestellt werden, um zuzulassen, dass mehrere Bildsammlungsereignisse über den Bereich geplant werden, um eine Wahrscheinlichkeit zu erhöhen, dass ein Satellit ein Bild mit einem erwünschten Mangel an Wolkenbedeckung erfassen kann. Ein Ergebnis von diesem Algorithmus kann sein, dass lokal suboptimale Zeitpläne zum Erstellen eines global optimalen Zeitplans ausgewählt werden können. -
8 veranschaulicht einen beispielhaften Graphen von Graphen800 , der einen Weg durch die Graphen darstellt, der die Nutzung erhöht, wobei unerwünschte Duplikation von Ereignissen vermieden wird. Der Graph von Graphen800 beinhaltet 1-optimalen Graphen805 für einen Bildgebungssatelliten während einer ersten Zeitspanne über einen Zielbereich, der den optimalen Zeitplan für eine erste Zeitspanne repräsentiert, wie durch das Zeitplanungsmodul104 bestimmt. Der 1-optimale Graph805 beinhaltet einen Zeitplan von Ereignissen, der die Sammlung von Bildern eines abgezielten Sub-Bereiches beinhaltet. Der Graph von Graphen800 beinhaltet suboptimale Graphen810 ,815 und820 für die erste Zeitspanne, wobei die suboptimalen Graphen kein Ereignis zur Sammlung von Bildern des abgezielten Sub-Bereiches beinhalten. Der Graph von Graphen beinhaltet den 1-optimalen Graphen855 und den 2-optimalen Graphen860 für den Bildgebungssatelliten (oder einen anderen Bildgebungssatelliten) in einer zweiten Zeitspanne über den Zielbereich. Die Graphen855 und860 beinhalten Ereignisse zur Sammlung von Bildern des abgezielten Sub-Bereiches. Der Graph von Graphen800 beinhaltet suboptimale Graphen865 und870 , die keine Ereignisse zur Sammlung von Bildern des abgezielten Sub-Bereiches beinhalten. Graphen von der ersten Zeitspanne sind mit Graphen von der zweiten Zeitspanne mit Kanten825 verbunden. Der optimale Weg, der eine Duplikationseinschränkung verletzt, die diktiert, dass Bilder einmal für den abgezielten Sub-Bereich gesammelt werden, wird durch den dicken Pfeil repräsentiert, der von dem 1-optimalen Graphen805 zu dem 3-optimalen Graphen865 weist. Jeder Graph in dem Graphen von Graphen800 beinhaltet einen Gewichtsfaktor, wij, der einen Nutzungswert mindestens teilweise basierend auf dem zugeordneten Zeitplan repräsentiert. Finden des optimalen Weges durch den Graphen von Graphen800 kann Maximieren der Summe der Gewichte, wij beinhalten, ohne Duplikationseinschränkungen zu verletzen. -
9 veranschaulicht ein Blockdiagramm eines beispielhaften Systems900 zum Planen einer Konstellation von Bildgebungssatelliten. Das System900 kann Aufträge von einem Auftragsverwaltungssystem925 empfangen, Satellitenzeitpläne und Satelliteneigenschaften analysieren, und einen Zeitplan unter Verwendung des Satellitenzeitplanungssystems904 berechnen, worin der Zeitplan den Satelliten902a ,902b und902c durch ein Satellitensteuerungssystem905 übermittelt wird, das mit Antennen915 verbunden ist. - Das System
900 beinhaltet das Auftragsverwaltungssystem925 , das zum Verarbeiten von Ereignisanforderungen von Steuerungspersonal, Kunden, externen Systemen, entfernten Systemen, lokalen Systemen und dergleichen konfiguriert ist. Beispielsweise kann das Auftragsverwaltungssystem925 zum Empfangen von Aufträgen für die Bildsammlung von Kunden empfangen, wobei ein Auftrag gewünschte Parameter für die Sammlung beinhalten kann, die geografischen Bereich, Zeitrahmen, Wolkenbedeckung, Anzahl von Bildern und dergleichen beinhalten. Das Auftragsverwaltungssystem925 kann dem angeforderten Ereignis einen Prioritätswert zur Verwendung in dem Satellitenzeitplanungssystem904 zuweisen. Das Auftragsverwaltungssystem925 kann angeben, dass ein angefordertes Ereignis kritisch ist, sodass das Satellitenzeitplanungssystem904 erzwingen kann, dass das Ereignis in jeden erzeugten Zeitplan eingeschlossen wird. Das Auftragsverwaltungssystem925 kann empfangene Anforderungen verarbeiten und die verarbeiteten Anforderungen zu dem Umlaufbahnanalysesystem930 übertragen. Das Umlaufanalysesystem930 kann die unterschiedlichen Umlaufbahnen der Satelliten902a ,902b und902c in der Konstellation analysieren um zu bestimmen, welche Satelliten sich an dem korrekten Standort befinden werden, um die Anforderung zu erfüllen. Diese Informationen können zu dem Satellitenzeitplanungssystem übertragen werden. - Das System
900 beinhaltet ein Satellitenwartungs- und -überwachungssystem935 , das zum Anfordern von Wartungs- oder Diagnoseereignissen konfiguriert ist. Diese Ereignisse können regelmäßig geplant, auf Erfüllung definierter Kriterien angefordert, oder durch einen Benutzer durch das Wartungs- und Überwachungssystem935 angefordert werden. Das Wartungs- und Überwachungssystem935 kann Anforderungen für Onboard-Wartungsereignisse an das Satellitenzeitplanungssystem904 übertragen. Die übertragenen Ereignisse können Informationen über einen bevorzugten Zeigewinkel während des Ereignisses, Startzeit des Ereignisses, andere entsprechende Parameter oder jede Kombination davon beinhalten. Das Satellitenwartungs- und -überwachungssystem935 kann angeben, dass ein Onboard-Wartungsereignis kritisch ist, sodass das Satellitenzeitplanungssystem904 erzwingen kann, dass das Ereignis in jeden erzeugten Zeitplan eingeschlossen wird. - Das System
900 beinhaltet eine Satelliteneigenschaftsdatenbank920 , die zum Bereitstellen von Satelliteneigenschaftsinformationen für das Satellitenzeitplanungssystem904 konfiguriert ist. Satelliteneigenschaften, die in der Datenbank920 gespeichert sind, können Informationen über Einschränkungen wie z. B. Agilitätseinschränkungen, Temperatureinschränkungen, Datenspeichereinschränkungen, Energieeinschränkungen, Duplikationseinschränkungen oder jede Kombination davon beinhalten. Die Informationen über Einschränkungen können betriebliche Grenzen und Funktionen beinhalten, die zum Berechnen des Werts eines Parameters bei einem gegebenen bestimmten Ereignis verwendet werden. Das Satellitenzeitplanungssystem904 kann Informationen über Satelliten902a ,902b und902c von der Datenbank920 abrufen, um optimale oder nahezu optimale Zeitpläne für die Konstellation von Satelliten zu erstellen. - Das System
900 beinhaltet Satellitenzeitplanungssystem904 , das zum Finden optimaler oder nahezu optimaler Zeitpläne für eine Konstellation bei einer gegebenen Liste von angeforderten Ereignissen und Satelliteneigenschaften konfiguriert ist. Das Satellitenzeitplanungssystem904 kann ein Modul sein, das dem Zeitplanungsmodul104 ähnlich ist, und kann ähnliche Komponenten enthalten, wie hierin unter Bezugnahme auf2 –4 beschrieben. Das Satellitenzeitplanungssystem904 kann jedes hierin beschriebene beliebige Verfahren zum Erstellen optimaler oder nahezu optimaler Zeitpläne verwenden, wie z. °B. die beispielhaften Verfahren500 und700 , die hierin unter Bezugnahme auf FIG. §§ beschrieben sind. 5 und 7 beschrieben sind. Zusätzlich oder alternativ kann das Satellitenzeitplanungssystem904 jedes hierin beschriebene Verfahren zum Verwenden von Crowd-Sourcing-Daten verwenden, wie z. B. die beispielhaften Verfahren1100 und1200 , die hierin unter Bezugnahme auf11 und12 beschrieben sind. In einigen Ausführungsformen kann das Satellitenzeitplanungssystem904 unter Verwendung der hierin beschriebenen Verfahren einen Zeitplan erreichen, der nahe genug an der optimalen Lösung liegt. In einigen Ausführungsformen kann das Satellitenzeitplanungssystem904 nahezu optimale Zeitpläne unter Verwendung eines gerichteten graphbasierten Ansatzes über eine Größenordnung schneller erstellen, als wenn nicht-graphbasierte Techniken verwendet werden müssten. Das Satellitenzeitplanungssystem904 kann zum Berechnen eines neuen Zeitplans für einen der Satelliten902a ,902b und902c nach dem Empfangen einer neuen Ereignisanforderung, aktualisierter Einschränkungen oder aktualisierter Prioritätsinformationen konfiguriert sein. - Das Satellitenzeitplanungssystem
904 kann Zeitplaninformationen zu dem Satellitensteuerungssystem905 übermitteln. Das Satellitensteuerungssystem905 kann die Zeitplaninformationen in Steuerungsanweisungen konvertieren, die durch Antennen915 zu dem entsprechenden Satelliten in der Konstellation übertragen werden können, wo die Konstellation einen oder mehrere Satelliten umfassen kann, z. B. SAT-1902a , SAT-2902b bis einschließlich SAT-N902c . Das Satellitensteuerungssystem905 kann ein von dem Satellitenzeitplanungssystem904 getrenntes System sein, und kann ein entferntes System im Verhältnis zu dem Zeitplanungssystem904 sein. - Das System
900 kann ein Ereignisanalysesystem910 zum Bereitstellen von Feedback über ausgeführte oder verpasste Ereignisse von den Satelliten902a ,902b und902c beinhalten. Das Satellitenzeitplanungssystem904 kann dieses Feedback von dem Ereignisanalysesystem910 empfangen und aktualisierte Zeitpläne mindestens teilweise basierend auf diesen Informationen erstellen. - Beispiele von Overhead-Bildanforderungen unter Verwendung von Crowd-Sourcing-Daten
- Beispiele eines Satellitenzeitplanungssystems werden bereitgestellt, bei denen Crowd-Sourcing-Daten zum Erzeugen von Bilderfassungsereignissen für ein Netzwerk von Bildgebungssatelliten verwendet werden können. Ein Crowd-Sourcing-System kann Crowd-Sourcing-Daten (z. B. Nachrichten, die durch Benutzer von sozialen Netzwerkdiensten erzeugt wurden) zum Bestimmen von interessierenden Ereignissen und geografischen Standorten solcher Ereignisse verwenden. Ereignisdaten können dann zum Erzeugen oder Aktualisieren von Bilderfassungsaufgaben und/oder Aufgabenprioritäten verwendet werden, die automatisch einem Zeitplanungssystem bereitgestellt werden, um zeitnahe und reaktionsschnelle Erfassung von Overhead-Bildern des geografischen Standorts des Ereignisses zu erleichtern. In unterschiedlichen Ausführungsformen können bei den Systemen und Verfahren, die oben unter Bezugnahme auf
1 –9 beschrieben sind, Crowd-Sourcing-Daten durch Implementieren der unten beschriebenen Techniken und Systeme verwendet werden. - Von humanitärer Hilfe zu Katastrophenhilfe und Medienereignisberichterstattung können zeitnahe Overhead-Bilder wertvoll beim Bereitstellen von Einblick in das sein, was bei solchen Ereignissen aktuell passiert. Aufnehmen von Overhead-Bildern von diesen Ereignissen auf agile und reaktive Art kann durch Kenntnis dieser Ereignisse erleichtert werden, sobald sie beginnen und/oder sobald sie fortfahren, sich zu entfalten. Traditionelle Verfahren zum Erkennen dieser Ereignisse und Aktualisieren der Datensammlungspläne für die Overhead-Bildervermögenswerte beinhalten im Allgemeinen das Erfassen von Informationen von Nachrichtenmedienverkaufsstellen und manuelle Erzeugung von Bilderwerbsanforderungen basierend auf diesen Informationen.
- In einigen Ausführungsformen basiert die Zeitplanung von Overhead-Bilderfassung mindestens teilweise auf Daten, auf die in benutzererzeugten sozialen Netzwerknachrichten und/oder Echtzeit-Newsfeeds zugegriffen wird, die aggregiert und analysiert werden. Die Systeme und Verfahren, die zur Zeitplanung von Overhead-Bilderfassung verwendet werden, können eine Maschine-zu-Maschine-Schnittstelle beinhalten, um zeitnahe Bildsammlungsanforderungen zu erleichtern und/oder menschliche Eingaben oder Überprüfungen zum Erstellen solcher Anforderungen zu reduzieren oder zu beseitigen. Soziale Netzwerknachrichten und/oder Echtzeit-Newsfeeds stellen einen Satz von Quellendaten bereit, der zeitnaher, genauer und globaler als traditionelle Medienberichterstattung oder ähnliche ereignis- und standortzentrische Informationsströme sein kann, was eine Erfassung wertvollerer Overhead-Bilder als Reaktion ermöglichen kann. Durch Aggregieren und/oder Analysieren der Datenströme, die durch diese sozialen Netzwerke und Newsfeeds erzeugt werden, können die hierin beschriebenen Systeme und Verfahren schnell und wiederholt Overhead-Bilderfassungsaufgaben erzeugen, die mit interessierenden Ereignissen rund um die Welt korreliert sind. Beispielsweise können die Systeme und Verfahren Informationen bereitstellen, die durch Overhead-Bildgebungsplattformen (z. B. Satelliten, Mini-Satelliten oder andere Arten von Overhead-Luftfahrzeugen wie z. B. Flugzeugen oder Drohnen) zu verwenden sind, sodass die Bildgebungsplattformen Overhead-Bilder von Standorten (z. B. terrestrische Standorte oder astronomische Standorte) planen und/oder erhalten können, bei denen interessierende Ereignisse auftreten könnten.
- Zum Erzeugen von prompten und reaktiven Bilderfassungsanforderungen kann ein Overhead-Bilderfassungszeitplanungssystem zum Empfangen von Anforderungen von einem Crowd-Sourcing-System konfiguriert sein, das Crowd-Sourcing-Daten analysiert. Crowd-Sourcing-Daten können beispielsweise und ohne Einschränkung Ströme von Informationen beinhalten, die von Benutzern von sozialen Netzwerken erzeugt werden und/oder in Newsfeeds, Websites oder Weblogs („Blogs”) gepostet werden. Crowd-Sourcing-Daten können auch ohne Einschränkung Daten von sozialen Netzwerken und News-Streams einschließlich FACEBOOKTM, TWITTERTM, REDDITTM, Nachrichtenschlagzeilen-Feeds, Mikrobloggingdiensten, Daten und Informationen basierend auf von Benutzern erzeugten Nachrichten und/oder anderen Datenquellen beinhalten, die nahezu in Echtzeit aktualisiert werden. Ströme von Informationen können Textdaten, Metadaten, Bilddaten, Videodaten, globale Positionsbestimmungssystem(GPS)-Daten, georeferenzierte Daten und dergleichen beinhalten. Crowd-Sourcing-Daten können Daten beinhalten, die durch Mitglieder oder Kontoinhaber von der Website hochgeladen wurden, im Gegensatz zu Eigentümern oder Betreibern der Website, oder sogenannter, von Benutzern erzeugter Inhalt. Beispielsweise kann eine Website Infrastruktur und Tools für Benutzer bereitstellen, die zu verwenden sind, um in der Lage zu sein, Inhalt zu erzeugen, diesen Inhalt entweder für die Öffentlichkeit oder eine ausgewählte Gruppe sichtbar zu posten, und den Inhalt von anderen zu betrachten und Feedback über den geposteten Inhalt bereitzustellen. Auf diese Weise kann eine Community von Benutzern Ideen und Diskurse über eine Vielfalt von Themen austauschen, bei denen die Benutzer selbst den diskutierten und ausgetauschten Inhalt bereitstellen.
- Das Crowd-Sourcing-System kann Crowd-Sourcing-Daten zum Bestimmen von interessierenden Ereignissen analysieren, die in Echtzeit oder nahezu in Echtzeit eintreten. Im Allgemeinen kann das Bestimmen von interessierenden Ereignissen und Planen einer Bilderfassungsaufgabe Stunden oder Tage in Anspruch nehmen. Das Crowd-Sourcing-System kann jedoch zum Erzeugen einer Bilderfassungsanforderung in weniger als einer Stunde, in weniger als 10 Minuten, in weniger als 2 Minuten, in weniger als 1 Minute oder in weniger als 30 Sekunden konfiguriert sein. Interessierende Ereignisse können durch Erkennen von Trends in den Crowd-Sourcing-Daten identifiziert werden. Trends können durch die Analyse der Ströme von Informationen erkannt werden, die beispielsweise „Tags” beinhalten können, die Benutzer verwenden, um ihre Nachrichten zu kategorisieren, zu identifizieren oder Ideen oder Ereignissen zuzuordnen. Ein solches Beispiel ist der soziale Netzwerk-Mikroblogging-Dienst TWITTERTM, der ein „Hashtag”-Merkmal bietet, mit dem Benutzer eines oder mehrere Tags für ihre Nachrichten (z. B. Tweets, Statusaktualisierungen usw.) bereitstellen können. Oftmals können diese Hashtags mit interessierenden Ereignissen in Zusammenhang gebracht werden (z. B. „#Olympiade„”, „#Erdbeben”, „#Rebellion”, „#Tornado”, „#Sonnenfinsternis”, „#Asteroid” oder „#Mondlandung”).
- Das Crowd-Sourcing-System kann die Crowd-Sourcing-Daten zum Bestimmen von interessierenden Standorten in Echtzeit oder nahezu in Echtzeit analysieren. Das Crowd-Sourcing-System kann Bilderfassungsanforderungen mindestens teilweise basierend auf seinen Analysen der Crowd-Sourcing-Daten erzeugen. Die Anforderungen können beispielsweise und ohne Einschränkung den interessierenden Standort, ein Zeitfenster beinhalten, während dem ein Bild erfasst werden sollte, eine Priorität, die mit der Anforderung in Zusammenhang steht und einen Indikator, warum die Anforderung durchgeführt wurde (z. B. soziale Netzwerktrends, die angeben, dass dieses Bild von Interesse wäre). Der Standort kann beispielsweise ein geografischer Standort sein, der einem interessierenden Ereignis entspricht. Der Standort kann auch in einigen Fällen eine andere Art von Standort sein, wie z. B. ein astronomischer Standort, der einem interessierenden astronomischen Ereignis entspricht (z. B. ein Komet oder Asteroid, der nahe der Erde vorbeifliegt, eine Mond- oder Sonnenfinsternis, ein Sonnensturm, eine Mond- oder Planetenlandung usw.).
- In einigen Implementierungen können die analysierten Daten dann zusammen mit einem Zeitplanungssystem zum Erzeugen einer Bilderfassungsaufgabe verwendet werden. Die Bilderfassungsaufgabe kann mit einem Overhead-Bildsammlungssystem oder -modul verbunden werden (z. °B. ein Satellit, ein Bildgebungs-Mikrosatellit, Luftfahrzeug, eine Drohne und dergleichen), um zeitnah Overhead-Bilder entsprechend interessierenden Ereignissen oder Standorten aufzunehmen. Beispielsweise kann das Crowd-Sourcing-System bestimmen, dass ein bestimmtes Ereignis eine hohe relative Bedeutung aufweist und eine Anforderung an das Zeitplanungssystem zum Planen einer Erfassung von Overhead-Bildern entsprechend dem bestimmten Ereignis und/oder Standort senden. Die Anforderung kann eine Angabe einer relativen Priorität der Aufgabe beinhalten. Beispielsweise kann das Crowd-Sourcing-System Crowd-Sourcing-Daten analysieren, um zu bestimmen, dass ein interessierendes Ereignis (z. °B. soziale Unruhen) begonnen hat und/oder in Echtzeit eintritt, und um das Ereignis durch den Inhalt von Nachrichten und/oder Tags zu lokalisieren, die mit dem Ereignis in Zusammenhang stehen. Das Crowd-Sourcing-System kann dann eine Bilderfassungsanforderung erzeugen, die den geografischen Standort des interessierenden Ereignisses und eine Angabe bereitstellt, dass eine Sammlung von Overhead-Bildern des geografischen Standorts hohe Priorität erhalten sollte. Das Zeitplanungssystem kann dann diese Informationen zum Planen einer Bilderfassungsaufgabe verarbeiten, die zeitnah und reaktiv aufgenommene Bilder zum Ergebnis hat.
- In einigen Ausführungsformen kann das Crowd-Sourcing-System in Verbindung mit einer Konstellation
10 von Bildgebungs-Mikrosatelliten12 verwendet werden, wie hierin unter Bezugnahme auf1 beschrieben. Das Crowd-Sourcing-System kann direkt kommunikationsfähig mit einem Zeitplanungssystem (z. B. die Steuerungssysteme14 ,100 , das Zeitplanungsmodul104 oder dem System900 ) verbunden werden, das zum Erzeugen eines Zeitplans von Ereignissen und/oder Aufgaben für einen oder mehrere von den Bildgebungs-Mikrosatelliten12 in der Konstellation10 konfiguriert ist. Mindestens teilweise aufgrund der niedrigen Erdumlaufbahnen der Satelliten12 und der Häufigkeit, mit der mindestens einer der Satelliten in der Konstellation positioniert wird, um Bilder von einem bestimmten Abschnitt der Erde zu erfassen, kann das System10 zeitnahe und reaktive Bilder von nahezu überall auf dem Planeten innerhalb relativ kurzer Zeitrahmen erfassen. Wie hierin ausführlicher beschrieben, kann das Zeitplanungssystem zum Erzeugen schneller und nahezu optimaler Ereignis-/Aufgabenzeitpläne für die Satelliten in der Konstellation10 konfiguriert sein (z. B. beispielsweise Verwenden von Implementierungen der Verfahren500 und700 ). Darüber hinaus kann das Crowd-Sourcing-System Crowd-Sourcing-Daten analysieren, um interessierende Ereignisse nahezu in Echtzeit zu identifizieren und zu lokalisieren. Durch eine Maschine-zu-Maschine-Schnittstelle zwischen dem Crowd-Sourcing-System und dem Zeitplanungssystem können schnelle und reaktive Aufgaben für die Konstellation10 von Satelliten12 erstellt werden, die Bilderfassungsereignisse basierend auf Crowd-Sourcing-Daten beinhalten. Dies kann eine Reduktion oder Beseitigung von menschlicher Interaktion mit dem Zeitplanungssystem und/oder dem Steuerungssystem zulassen, um Bilder von interessierenden Ereignissen zu erfassen. Als Ergebnis kann die Konstellation10 von Bildgebungs-Mikrosatelliten12 automatisiert werden, um Bilder zu erfassen, die von Operatoren oder Kunden angefordert wurden, sowie Bilder von interessierenden Ereignissen, die nicht von einem Kunden oder Operator angefordert wurden, sondern die das Ergebnis von Analysen von Crowd-Sourcing-Daten waren. - Beispielhaftes Crowd-SourcinG-System
-
10 veranschaulicht eine beispielhafte Konfiguration eines Crowd-Sourcing-Systems1000 in Kommunikation mit Zeitplanungssystem(en)1080 und Datenquelle(n)1070 . Das Crowd-Sourcing-System1000 kann zum Bereitstellen der hierin beschriebenen Merkmale konfiguriert sein, einschließlich, jedoch nicht beschränkt auf das Analysieren von Crowd-Sourcing-Daten (beispielsweise Daten, auf die über Datenquelle(n)1070 zugegriffen wurde), um Bilderfassung über das/die Zeitplanungssystem(e)1080 zu koordinieren. Das/die Zeitplanungssystem(e)1080 kann/können jedes von den hierin offenbarten Zeitplanungssystemen beinhalten, wie z. B. die Steuerungssysteme14 ,100 , das System900 und/oder das Zeitplanungsmodul104 . In einigen Ausführungsformen kann/können das Crowd-Sourcing-System1000 , das/die Zeitplanungssystem(e)1080 und/oder die Datenquelle(n)1070 Komponenten eines einzelnen Systems sein, wie z. B. die Steuerungssysteme14 ,100 , das System900 und/oder das Zeitplanungsmodul104 . Daher können in einigen Implementierungen Crowd-Sourcing-Daten mindestens teilweise beim Bestimmen der Zeitpläne der Satelliten12 in der Konstellation10 von Satelliten verwendet werden, die in1 dargestellt sind. In einigen Ausführungsformen können andere Systeme zum Erfassen von Overhead-Bildern unter Verwendung von Crowd-Sourcing-Daten, wie hierin beschrieben, zusätzliche oder weniger Komponenten beinhalten, als in dem Beispiel von10 veranschaulicht sind. - Das Crowd-Sourcing-System
1000 kann kommunikationsfähig über eine Maschine-zu-Maschine-Schnittstelle mit dem Zeitplanungssystem(en)1080 zur Kommunikation zwischen den Systemen verbunden sein. In einigen Ausführungsformen kann das Crowd-Sourcing-System1000 mit dem/den Zeitplanungssystem(en)1080 ohne intervenierende Eingabe von einem Menschen kommunizieren, sodass Bilderfassungsanforderungen von dem Crowd-Sourcing-System1000 nahezu in Echtzeit dem/den Zeitplanungssystem(en)1080 bereitgestellt werden können, um zeitnahe und reaktive Bilderfassungsaufgaben zum Ergebnis zu haben. In einigen Ausführungsformen ist/sind das/die Zeitplanungssystem(e)1080 kommunikationsfähig mit einem Steuerungssystem für eine Konstellation von Satelliten verbunden. In einigen Ausführungsformen ist/sind das/die Zeitplanungssystem(e)1080 kommunikationsfähig mit anderen Bilderfassungsvorrichtungen oder -systemen und/oder ihren entsprechenden Steuerungssystemen verbunden. In einigen Ausführungsformen ist/sind das/die Zeitplanungssystem(e)1080 zum Erzeugen von Ausgaben zur Überprüfung durch den Operator konfiguriert, bevor ein Zeitplan tatsächlich erstellt wird. - Das/die Zeitplanungssystem(e)
1080 kann/können zum Erzeugen von Bilderfassungsaufgaben basierend auf einem geeigneten Zeitplanungsalgorithmus konfiguriert sein. Beispielsweise kann/können das/die Zeitplanungssystem(e)1080 zum Optimieren von einem oder mehreren Nutzungsparametern konfiguriert sein, sodass verbundene Bildgebungssysteme maximal oder optimal verwendet werden. Als weiteres Beispiel kann/können Zeitplanungssystem(e)1080 einen Algorithmus verwenden, der Aufgaben mindestens teilweise basierend auf der Reihenfolge erzeugt, in der Anforderungen empfangen werden. Als weiteres Beispiel kann/können das/die Zeitplanungssystem(e)1080 Zeitpläne mindestens teilweise basierend auf einer Priorität in Zusammenhang mit einer Anforderung erzeugen (z. B. ein Ereignis, das vor einem anderen Ereignis geplant ist, wenn es eine höhere Priorität aufweist). Das/die Zeitplanungssystem(e)1080 können zum Analysieren von Prioritätsinformationen, Standortinformationen, Zeitinformationen und dergleichen in Zusammenhang mit einer Bilderfassungsanforderung konfiguriert sein, um einen geeigneten, passenden oder erwünschten Zeitplan für die angeforderte Bilderfassung zu bestimmen. - In einigen Ausführungsformen ist/sind das/die Zeitplanungssystem(e)
1080 die Zeitplanungssysteme, Zeitplanungsmodule und/oder Steuerungssysteme, die hierin unter Bezugnahme auf1 –9 beschrieben sind. Die Algorithmen, die von diesem/diesen Zeitplanungssystem(en)1080 verwendet werden, können die hierin beschriebenen sein, die zum Erzeugen nahezu optimaler Zeitpläne in relativ kurzer Zeit oder nahezu Echtzeit konfiguriert sind, z. B. Ausführungsformen der Verfahren500 und700 , die unter Bezugnahme auf FIG. §§ beschrieben sind. 5 und 7 beschrieben sind. Auf diese Weise kann/können die Kombination des Crowd-Sourcing-Systems1000 und das/die Zeitplanungssystem(e)1080 konfiguriert sein, um schnell und agil bei der Erzeugung von Bilderfassungsereignissen in Zusammenhang mit interessierenden Ereignissen oder Standorten nahezu in Echtzeit zu sein. - In der beispielhaften Ausführungsform von
10 beinhaltet das Crowd-Sourcing-System1000 auch ein Crowd-Sourcing-Analysemodul1090 , das in dem Massenspeichergerät1020 als ausführbare Softwarecodes gespeichert werden kann, die durch die CPU1050 ausgeführt werden. Das Crowd-Sourcing-Module1090 kann beispielsweise Komponenten wie z. B. Softwarekomponenten, objektorientierte Softwarekomponenten, Klassenkomponenten und Aufgabenkomponenten, Verfahren, Funktionen, Attribute, Vorgehensweisen, Unterroutinen, Segmente von Programmcodes, Treiber, Firmware, Mikrocodes, Schaltungen, Daten, Datenbanken, Datenstrukturen, Tabellen Anordnungen und Variablen entsprechen. Das Crowd-Sourcing-System1000 kann zum Ausführen des Crowd-Sourcing-Analysemoduls1090 konfiguriert sein, um Daten zu analysieren, die von Datenquelle(n)1070 abgerufen und/oder empfangen wurden, um interessierende Ereignisse zu bestimmen, diese Ereignisse mit geografischen oder Geostandortinformationen darüber zu korrelieren, wo die Ereignisse eintreten oder eingetreten sind, und Bilderfassungsanforderungen für das/die Zeitplanungssystem(e)1080 zu erstellen, um ein Bilderfassungsereignis entsprechend den Ereignissen und/oder den geografischen Standorten der Ereignisse zu erzeugen. In einigen Ausführungsformen ist das Crowd-Sourcing-Analysemodul1090 konfiguriert, um einen oder mehrere Blöcke in den beispielhaften Verfahren auszuführen, die hierin unter Bezugnahme auf11 und12 beschrieben sind, einschließlich, ohne Beschränkung, Bestimmen von interessierenden Ereignissen mindestens teilweise basierend auf Crowd-Sourcing-Daten, Lokalisieren von interessierenden Ereignissen von den Crowd-Sourcing-Daten, Bestimmen eines Grades von Relevanz für interessierende Ereignisse, Erstellen von Bilderfassungsanforderungen, Lokalisieren von Crowd-Sourcing-Daten, Sortieren von korrelierten Daten und/oder Bereitstellen von Bilderfassungsanforderungen für die Zeitplanungssysteme1080 . - Das Crowd-Sourcing-System
1000 kann beispielsweise einen PC beinhalten, der mit IBM, Macintosh oder Linux/Unix oder einem Server oder einem Arbeitsplatz kompatibel ist. In einer Ausführungsform umfasst das Crowd-Sourcing-System1000 einen Server, einen Laptop-Computer, ein Mobiltelefon, einen PDA, einen Kiosk oder ein verteiltes Computersystem, beispielsweise und ohne Einschränkung. In einer Ausführungsform beinhaltet das Overhead-Bilderfassungssystem1000 eine oder mehrere zentrale Verarbeitungseinheiten („CPUs”)1050 , die jeweils einen herkömmlichen oder proprietären Mikroprozessor beinhalten. Das Crowd-Sourcing-System1000 beinhaltet weiterhin einen oder mehrere Speicher1030 , wie z. B. Arbeitsspeicher („RAM”) zur vorübergehenden Speicherung von Informationen, einen oder mehrere schreibgeschützte Speicher („ROM”) zur dauerhaften Speicherung von Informationen und eines oder mehrere Massenspeichergeräte1020 (veranschaulicht als Benutzer, der Benutzerkontendaten speichert, in der veranschaulichten Ausführungsform), wie z. B. eine Festplatte, Diskette, ein Solid-State-Laufwerk oder eine optische Medienspeichervorrichtung. Typischerweise sind Komponenten des Crowd-Sourcing-Systems1000 unter Verwendung eines standardbasierten Bussystems mit dem Computer verbunden. In unterschiedlichen Ausführungsformen könnte das standardbasierte Bussystem beispielsweise in Peripheral Component Interconnect („PCI”), Mikrokanal, Small Computer System Interface („SCSI”), Industrial Standard Architecture („ISA”) und Extended ISA(„EISA”)-Architektur implementiert werden. Zusätzlich könnte die Funktionalität, die für in den Komponenten und Modulen des Crowd-Sourcing-Systems1000 bereitgestellt ist, in weniger Komponenten und Modulen kombiniert oder weiter in zusätzliche Komponenten und Module getrennt werden. In einigen Ausführungsformen umfasst das Crowd-Sourcing-System1000 mehrere Computer, die miteinander kommunizieren. In einigen Ausführungsformen ist das Crowd-Sourcing-System1000 Teil des Satellitensteuerungssystems, das hierin unter Bezugnahme auf1 –4 und9 beschrieben ist. - Das Crowd-Sourcing-System
1000 kann im Allgemeinen durch Betriebssystemsoftware wie z. B. Windows XP, Windows Vista, Windows 7, Windows Server, Unix, Linux, SunOS, Solaris, Android, iOS, Mac OS oder andere kompatible Betriebssysteme gesteuert und koordiniert werden. In einigen Ausführungsformen kann das Crowd-Sourcing-System1000 durch ein proprietäres oder kundenspezifisches Betriebssystem gesteuert werden. Herkömmliche Betriebssysteme steuern und planen Computerprozesse zur Ausführung, führen Speicherverwaltung aus, stellen Dateisysteme, Netzwerken, E/A-Dienste bereit, und stellen unter Anderem eine Benutzerschnittstelle wie z. B. eine grafische Benutzerschnittstelle („GUI”) bereit. - Das Crowd-Sourcing-System
1000 kann eines oder mehrere allgemein verfügbare Eingabe-/Ausgabe-(E/A)-Vorrichtungen und Schnittstellen1010 beinhalten, wie z. B. eine Tastatur, Maus, ein Touchpad, einen Touchscreen und einen Drucker. In einer Ausführungsform beinhalten die E/A-Vorrichtungen und Schnittstellen1010 eine oder mehrere Anzeigevorrichtungen, wie z. B. einen Monitor, der die visuelle Präsentation von Daten für einen Benutzer ermöglicht. Genauer ausgedrückt sorgt eine Anzeigevorrichtung beispielsweise für die Präsentation von GUIs, Anwendungssoftwaredaten und Multimediapräsentationen. Das Crowd-Sourcing-System1000 kann beispielsweise außerdem eine oder mehrere Multimediavorrichtungen1040 , wie z. B. Lautsprecher, Videokarten, Grafikbeschleuniger und Mikrofone beinhalten. - In einigen Ausführungsformen kann das Crowd-Sourcing-System
1000 verwendet werden, ohne dass E/A-Vorrichtungen konfiguriert sind, um direkt Eingaben von einem Benutzer oder Operator zu empfangen. In solchen Ausführungsformen kann das Crowd-Sourcing-System1000 so konfiguriert werden, dass es autonom läuft und/oder durch entfernte Verbindungen verwaltet wird. Dies kann ermöglichen, dass das System1000 mit weniger oder keiner Benutzerinteraktion läuft, wodurch die automatisierte Art der Interaktionen zwischen dem Crowd-Sourcing-System1000 und dem/den Zeitplanungssystem(en)1080 hervorgehoben wird. - In der beispielhaften Ausführungsform von
10 ist das Crowd-Sourcing-System1000 kommunikationsfähig mit einem Netzwerk1060 verbunden, das eines oder mehrere von einem LAN, WAN und/oder dem Internet beispielsweise über eine verdrahtete, drahtlose oder eine Kombination von verdrahteter und drahtloser Kommunikationsverbindung umfasst, Das Netzwerk1060 kommuniziert mit unterschiedlichen Computergeräten und/oder anderen elektronischen Vorrichtungen über verdrahtete oder drahtlose Kommunikationsverbindungen. In der beispielhaften Ausführungsform, die in10 veranschaulicht ist, ist das Crowd-Sourcing-System1000 mit dem/den Zeitplanungssystem(en)1080 durch das Netzwerk1060 verbunden, doch das Crowd-Sourcing-System1000 kann auch direkt kommmunikationsfähig mit dem/den Zeitplanungssystem(en)1080 verbunden sein (z. B. nicht durch ein Netzwerk) und/oder das Crowd-Sourcing-System1000 kann ein Teil des/der Zeitplanungssystem(s)(e)1080 sein. - Informationen können dem Crowd-Sourcing-System
1000 über das Netzwerk1060 von einer oder mehreren Datenquelle(n)1070 bereitgestellt werden. Die Datenquellen1070 können eine oder mehrere interne und/oder externe Datenquellen beinhalten. Die Datenquellen1070 können beispielsweise soziale Netzwerkdienste und/oder Nachrichten, Statusaktualisierungen, Nachrichtenaggregatoren und anderen Datenquellen beinhalten, die Zugang zu Echtzeit- oder nahezu Echtzeitinformationen in Zusammenhang mit Nachrichten, Ereignissen und dergleichen bereitstellen. Das Crowd-Sourcing-System1000 kann konfiguriert werden, um auf Crowd-Sourcing-Daten zuzugreifen, die in der/den Datenquelle(n)1070 gespeichert sind, wobei die Crowd-Sourcing-Daten in die Datenquelle(n)1070 aggregiert werden, auf sie von ihrer Quellen-Website zugegriffen wird (z. B. durch Scraping der Website oder unter Verwendung von Anwendungsprogrammierschnittstellen („APIs”), die mit der Website verbunden sind), oder einer Kombination von Crowd-Sourcing-Datenaggregatoren und direktem Websitezugang. In einigen Ausführungsformen kann/können eine oder mehrere Datenbanken oder Datenquellen1070 unter Verwendung einer relationalen Datenbank wie z. B. Sybase, Oracle, CodeBase und Microsoft® SQL Server sowie anderen Arten von Datenbanken wie z. B. einer Flatfile-Datenbank, einer Entitätsverhältnisdatenbank und objektorientierten Datenbank und/oder einer aufzeichnungsbasierten Datenbank implementiert werden. - Beispiel des Verfahrens zur Anforderung von Bilderfassung unter Verwendunq von Crowd-Sourcing-Daten
-
11 veranschaulicht schematisch ein beispielhaftes Verfahren1100 , das durch ein Overhead-Bildaufgabensystem implementiert werden kann, um Overhead-Bilderfassungsaufgaben und/oder -Ziele unter Verwendung von Crowd-Sourcing-Daten zu bestimmen. In einigen Implementierungen kann der Prozess1100 durch Ausführungsformen des Crowd-Sourcing-Systems1000 ausgeführt werden, das unter Bezugnahme auf10 beschrieben ist, oder durch eine seiner Komponenten, wie z. B. das Crowd-Sourcing-Analysemodul1090 . Zwecks einfacherer Erklärung beschreibt das Folgende die Dienste, wie sie durch das Crowd-Sourcing-System1000 ausgeführt werden. Die beispielhaften Szenarios sollen unterschiedliche Aspekte des Crowd-Sourcing-Systems1000 veranschaulichen, aber nicht einschränken. - Beginnend bei Block
1105 von11 greift das Crowd-Sourcing-System1000 auf Crowd-Sourcing-Daten in Zusammenhang mit Ereignissen zu. Auf die Crowd-Sourcing-Daten kann beispielsweise von den Datenquellen1070 zugegriffen werden. Bei Block1110 analysiert das Crowd-Sourcing-System1000 beispielsweise über das Crowd-Sourcing-Analysemodul1090 die Crowd-Sourcing-Daten, um Ereignisse zu bestimmen, die von Interesse oder sozialer Bedeutung sein können. Die Analyse kann mindestens teilweise beispielsweise auf semantischer Analyse von benutzererzeugten Nachrichten (einschließlich Nachrichtentext „Tags”, anderen Metadaten in Zusammenhang mit den Nachrichten, Bildern, Video und/oder GPS oder anderen Standortinformationen) basieren. Analysen können durch Erzeugen von Statistiken und/oder Aggregatdaten ausgeführt werden, um Trends in Nachrichten und/oder Themen in Zusammenhang mit Ereignissen zu bestimmen. Interessierende Ereignisse können beispielsweise einer erhöhten Anzahl von Nachrichten und/oder einer erhöhten Verwendung bestimmter Tags in Zusammenhang mit dem Ereignis entsprechen. Eine erhöhte Anzahl von Nachrichten kann beispielsweise durch Finden einer Anzahl von Nachrichten (oder Nachrichten pro Einheitszeit) bestimmt werden, die über einem Schwellenwert liegen. Der Schwellenwert kann eine Anzahl sein (oder Anzahl pro Einheitszeit), die für eine mittlere Anzahl (oder Anzahl pro Einheitszeit) von Nachrichten repräsentativ ist. Daher kann ein Schwellenwert z. B. 110%, 120%, 150%, 200% (oder ein anderer Prozentsatz) des Mittelwerts sein. Der Schwellenwert kann so ausgewählt werden, dass er groß genug ist, dass routinemäßige stündliche, tägliche oder saisonale Fluktuationen bei der Anzahl der Nachrichtenrate keine statistische Fluktuation als ein sozial bedeutendes Ereignis auslösen. - Zum Bestimmen von interessierenden Ereignissen kann das Crowd-Sourcing-System
1000 in einigen Ausführungsformen nach Schlüsselwörtern in den Crowd-Sourcing-Daten suchen. Es können Schlüsselwörter ausgewählt werden, die mit interessierenden Ereignissen im Allgemeinen in Zusammenhang stehen, wie z. B. Erdbeben, Hurrikan, Superbowl, World Cup, Überflutungen, Unruhen, Krieg usw. Schlüsselwörter können ausgewählt werden, die ein enger gefasstes Interesse repräsentieren, das wertvoll für ein ausgewähltes Subset oder einen Teil der Bevölkerung sein kann, wie z. B. einen Namen einer Stadt, ein lokales Ereignis, ein Geschäftsname oder dergleichen. Jeder Anstieg bei der Häufigkeit in der Verwendung des Schlüsselworts/der Schlüsselwörter in den Crowd-Sourcing-Daten kann so interpretiert werden, dass er ein interessierendes Ereignis bedeutet. - In bestimmten Ausführungsformen kann das Crowd-Sourcing-System
1000 Crowd-Sourcing-Daten zwecks geografischer Konzentration analysieren. Wenn beispielsweise die gleichen oder zugehörige Tags oder Schlüsselwörter öfter an einem geografischen Standort als gewöhnlich oder häufiger als in umgebenden Bereichen oder ähnlichen geografischen Bereichen (z. B. Städte einer ähnlichen Größe, kulturell ähnliche Standorte usw.), die dahingehend interpretiert werden können, dass sie ein interessierendes Ereignis in dem geografischen Bereich angeben. - In unterschiedlichen Ausführungsformen kann das Crowd-Sourcing-System
1000 von Benutzern oder Entitäten bereitgestellte Daten verfolgen, die als einflussreich oder bedeutend angesehen werden können. Die von diesen Einzelpersonen oder Entitäten bereitgestellten Informationen können als bedeutender behandelt werden als von anderen Benutzern oder Entitäten bereitgestellte Informationen. Dies kann als ein Gewichtungsfaktor repräsentiert werden, der Daten zugewiesen wird, die von solchen Entitäten erhalten werden. Auf ähnliche Weise können Informationen, die von einigen Websites oder Diensten bereitgestellt werden, ein größeres Gewicht als andere Quellen erhalten. Das Gewichten kann basierend auf Einfluss, Vertrauenswürdigkeit, Interesse und dergleichen einstellbar sein und zugewiesen werden. Informationen, die von Analysen der Crowd-Sourcing-Daten erhalten werden, können zum Informieren von Zuweisungen von Gewichtungsfaktoren verwendet werden. Wenn beispielsweise eine Einzelperson öfter in sozialen Netzwerken erwähnt wird, können durch diese Einzelperson bereitgestellten Informationen ein größeres Gewicht als eine Funktion der Häufigkeit von Erwähnungen erhalten. - In einigen Ausführungsformen kann das Crowd-Sourcing-System
1000 Informationen von ausgewählten Quellen verwenden, um Startwerte zur Identifizierung von interessierenden Ereignissen bereitzustellen. Beispielsweise können neue Provider überwacht werden, um ein Wörterbuch von Schlüsselwörtern und/oder Standorten von potenziellem Interesse zu erzeugen. Die Crowd-Sourcing-Daten können dann mit einem Fokus auf dem Wörterbuch von Schlüsselwörtern und/oder Standorten analysiert werden, um interessierende Ereignisse zu identifizieren. - Bei Block
1115 bestimmt das Crowd-Sourcing-System1000 den/die geografischen Standort(e) für das/die bestimmte(n) interessierende(n) Ereignis(se), oder die von sozialer Bedeutung sind. Die Bestimmung kann mindestens teilweise beispielsweise auf dem Lokalisieren der interessierenden Ereignisse durch Analysieren statistisch bedeutender Anomalien in geografischen Tagging-Trends basieren. Interessierende(s) Ereignis(se) können Ereignisse beinhalten, die eine Bedeutung für eine breite Community von Personen aufweisen (z. B. Ereignisse wie Umweltkatastrophen (natürlich oder von Menschen verursacht), politische oder militärische Aufstände usw.). Interessierende Ereignisse sind nicht auf solche Arten von Ereignissen beschränkt. Dementsprechend sollte ein interessierendes Ereignis breitgefasst konzipiert sein, um ohne Einschränkung jede Art von Ereignis zu beinhalten, das soziale, menschliche, kulturelle, wirtschaftliche, politische, militärische, finanzielle, umweltmäßige, wissenschaftliche oder medizinische Auswirkung oder Belange aufweist. Solche Ereignisse können auf eine große Bandbreite von Personen einwirken oder sie betreffen (z. B. landesweite Katastrophe oder Revolution) oder eine relativ kleine Anzahl von Personen (z. B. Überflutung von einem Kanal in der Nachbarschaft). Solche Ereignisse können auf Entitäten einwirken oder sie betreffen, wie z. B. Regierungsentitäten, Nicht-Regierungsentitäten (z. B. Nicht-Regierungsorganisationen oder NGOs), Geschäftsentitäten (z. B. Gesellschaften) oder jede andere Art von öffentlicher oder nicht öffentlicher Organisation oder Gruppe. Beispielsweise kann ein interessierendes Ereignis ein Zusammenbrechen einer aufgegebenen Mine auf privatem Grundstück beinhalten, das einem Bergbauunternehmen gehört (z. B. ist solch ein Ereignis für das Bergbauunternehmen von Interesse). - In einigen Ausführungsformen kann das Crowd-Sourcing-System
1000 den geografischen Standort für ein interessierendes Ereignis durch Analysieren der Syntax der Crowd-Sourcing-Daten zum Identifizieren von Sprache bestimmen, die mit einem geografischen Standort verbunden ist. Beispielsweise können Ortsnamen, Monumente, Wahrzeichen, berühmte geografische Merkmale, lokalisierter Dialekt und dergleichen überwacht und identifiziert, und mit einem geografischen Standort verbunden werden. Wenn beispielsweise Crowd-Sourcing-Daten Referenzen zu „Eiffelturm” beinhalten, dann kann der geografische Standort dahingehend bestimmt werden, dass er der Standort des Eiffelturms in Paris, Frankreich, ist. Auf ähnliche Weise können Metadaten und/oder Hashtags auf ähnliche Sprache oder Worte in Zusammenhang mit geografischen Standorten überwacht werden. - In bestimmten Ausführungsformen können Crowd-Sourcing-Systeme
1000 Geo-Tags, GPS-Daten oder andere standortbezogene Informationen analysieren, die in Crowd-Sourcing-Daten beinhaltet sind, um einen Standort von interessierenden Ereignissen zu bestimmen. In unterschiedlichen Ausführungsformen kann das Crowd-Sourcing-System1000 Bildanalyse von Bildern in Crowd-Sourcing-Daten zum Identifizieren von geografischen Standorten ausführen. In einigen Ausführungsformen kann das Crowd-Sourcing-System1000 geografische Standorte mindestens teilweise basierend auf einer Verbindung zwischen einer Person und einem Standort identifizieren. Wenn beispielsweise der Präsident der Vereinigten Station bekannterweise in Peking, China ist, dann können Erwähnungen des Präsidenten in Crowd-Sourcing-Daten mit Peking, China verbunden werden. Dementsprechend können Crowd-Sourcing-Daten zum Erzeugen von Verbindungen zwischen Menschen und Standorten verwendet werden. - Bei Block
1120 bestimmt das Crowd-Sourcing-System1000 einen Grad von Relevanz für jedes der bestimmten interessierenden Ereignis(se). Der Grad von Relevanz kann mit einer Häufigkeit von Erwähnungen in den Crowd-Sourcing-Daten verbunden werden. Beispielsweise kann ein Ereignis dahingehend bestimmt werden, dass es einen niedrigeren Grad von Relevanz aufweist, wenn die Anzahl von Nachrichten oder Verwendung von Tags in Zusammenhang mit dem Ereignis relativ niedrig ist. Bei Block1120 können sozial bedeutende Ereignisse unter Verwendung von Techniken wie z. °B. Sentiment-Analyse eingestuft werden, um die relative Bedeutung und/oder Kritikalität bestimmter Ereignisse zu bewerten. In einigen Ausführungsformen kann der Grad von Relevanz mit einem Gewichtungsfaktor verbunden werden, der mit dem Ereignis verbunden ist. Wenn beispielsweise das interessierende Ereignis mit einem aktuellen Ereignis von relativ breitem Interesse verbunden ist, wie z. B. die Olympischen Spiele, dann kann der Grad von Relevanz größer sein als für eine Überflutung in einer kleinen Stadt. - Fortfahrend mit Block
1125 kann das Crowd-Sourcing-System1000 Bilderfassungsanforderungen in Zusammenhang mit geografischen Standorten erstellen, die für Overhead-Bilderfassung abzuzielen sind. Die Bilderfassungsanforderungen können mit einer Priorität verbunden werden (z. B. basierend auf der Relevanz und/oder Einstufung, die bei Block1120 bestimmt wurde), angebend, ob die Bilderfassungsaufgabe vor anderen Aufgaben geplant werden sollte (einschließlich Bilderfassungs- oder Wartungsaufgaben, die durch externe Systeme angefordert wurden und/oder z. B. zuvor durch Zeitplanungssystem(e)1080 erzeugt wurde(n)). - Bei Block
1130 kann/können die Bilderfassungsanforderung(en) einem Zeitplanungssystem bereitgestellt werden, wie z. B. einem der Zeitplanungssystem(e)1080 . Das/die Zeitplanungssystem(e)1080 kann/können dann die Bilderfassungsanforderung(en) verarbeiten und damit in Zusammenhang stehende Zeitpläne aktualisieren und/oder abändern. Irgendwo hierin sind Beispiele für die Erzeugung eines Zeitplans von Aufgaben oder Ereignissen nach der Einbindung von Bilderfassungsanforderungen vorhanden. - Beispielhaftes Verfahren von Maschine-zu-Maschine-Tasking unter Verwendung von Crowd-Sourcing-Daten
-
12 veranschaulicht ein Ablaufdiagramm eines beispielhaften Verfahrens1200 für Maschine-zu-Maschine-Tasking unter Verwendung von Crowd-Sourcing-Daten. Durch Analysieren der Informationsströme, die soziale Netzwerke erzeugen, können interessierende Ereignisse durch statistisches Erkennen statistisch bedeutender Anomalien in geografischen Tagging-Trends lokalisiert werden. Zusätzlich können diese Tags unter Verwendung von Matching-Analyse des Textes von Tags und Nachrichtendaten korreliert werden. Korrelierte Ereignisse können unter Verwendung von Techniken wie z. B. Sentiment-Analyse eingestuft werden, um die relative Bedeutung und/oder Kritikalität von Ereignissen zu bewerten. Durch Analysieren der Datenströme, die durch diese sozialen Netzwerke erzeugt werden, und Implementieren einer Lokalisierungs-, Korrelierungs-, Sortierungs- und Erzeugungsaufgabenverfahrensschleife können Ausführungsformen der offenbarten Systeme und Verfahren schnell und wiederholt aktuelle Overhead-Bilder von interessierenden Ereignissen rund um die Welt erhalten. - Das beispielhafte Verfahren
1200 beinhaltet das Lokalisieren von Crowd-Sourcing-Daten, das das Identifizieren eines Standorts für Nachrichten oder Daten in den Crowd-Sourcing-Daten in Block1205 beinhalten kann. Bestimmen des Standorts in Zusammenhang mit Informationen in den Crowd-Sourcing-Daten kann jedes geeignete Verfahren beinhalten, wie z. B. diejenigen, die hierin unter Bezugnahme auf11 beschrieben sind. - In Block
1210 können die lokalisierten Daten korreliert sein. Korrelieren von Daten kann das Verwenden von Matching-Analyse der Ströme von Informationen beinhalten, um zugehörige Nachrichten, Tags, Bilder und dergleichen zu identifizieren. Korrelierte Ereignisse können interessierende Ereignisse mindestens teilweise basierend auf Verfahren zum Bestimmen der Bedeutung von Ereignissen angeben, wie irgendwo hierin beschrieben. Solche Verfahren können beispielsweise und ohne Einschränkung die Häufigkeit von Schlüsselwörtern in lokalisierten Daten, geografische Anomalien, Gewichtungsfaktoren und dergleichen beinhalten. - In Block
1215 können die korrelierten Ereignisse unter Verwendung von Techniken wie z. B. Sentiment-Analyse, semantische Analyse, K-Means-Clustering und unterschiedlichen Maschinenlerntechniken sortiert werden. Sortieren der korrelierten Ereignisse kann verwendet werden, um die relative Bedeutung und/oder Kritikalität von Ereignissen zu bewerten. - In Block
1220 können Bilderfassungsanforderungen mindestens teilweise basierend auf den lokalisierten Daten und der Sortierung der Daten formuliert werden. In Block1225 werden die Bilderfassungsanforderungen zum Erzeugen eines Zeitplans von Ereignissen für die Bilderfassungssysteme verwendet. - In einigen Ausführungsformen kann das Verfahren
1200 unter Verwendung eines Crowd-Sourcing-Systems und eines Zeitplanungssystems implementiert werden, wie hierin beschrieben. Diese Systeme können Teil eines größeren Satellitensteuerungssystems sein, wie unter Bezugnahme auf1 –9 beschrieben. Als Teil des Satellitensteuerungssystems können das Crowd-Sourcing-System und das Zeitplanungssystem eine Maschine-zu-Maschine-Schnittstelle beinhalten, die den Systemen ermöglicht, ohne menschliche Intervention miteinander zu kommunizieren. Auf diese Weise kann das Zeitplanungssystem Bilderfassungsereignisse basierend auf Crowd-Sourcing-Daten auf automatisierte, schnelle Art, und nahezu in Echtzeit erzeugen. Die Bilderfassungsereignisse können daher mit einer Vielfalt von Ereignissen verbunden werden, die rund um die Welt eintreten. - Zusätzliche Beispiele und Ausführungsformen
- Beispiele von Zeitplanungssystemen und -verfahren
- In einer Ausführungsform 1 wird ein System für die Zeitplanung von Ereignissen für eine Konstellation von Bildgebungssatelliten bereitgestellt, wobei das System einen nicht vorübergehenden Datenspeicher umfasst, der zum Speichern von Satelliteneigenschaftsinformationen entsprechend den Eigenschaften von einem oder mehreren Bildgebungssatelliten in der Konstellation von Bildgebungssatelliten konfiguriert ist. Das System beinhaltet auch ein Computergerät in Kommunikation mit dem Datenspeicher, wobei das Computergerät konfiguriert ist, um Folgendes auszuführen: Ein Auftragsverwaltungssystem, das zum Erzeugen oder Empfangen von Anfragen für ein Bildsammlungsereignis konfiguriert ist; ein Umlaufbahnanalysesystem, das zum Identifizieren von einem oder mehreren Bildgebungssatelliten in der Konstellation von Bildgebungssatelliten konfiguriert ist, die über einem Bereich positioniert sein werden, der zum Ausführen eines angeforderten Bildsammlungsereignisses geeignet ist; ein Wartungssystem, das zum Erzeugen von Anforderungen für Onboard-Wartung für Bildgebungssatelliten in der Konstellation von Bildgebungssatelliten konfiguriert ist; ein Satellitenzeitplanungssystem, das zum Empfangen von Ereignisanforderungen und Satelliteneigenschaften, und zum Erzeugen eines nahezu optimalen Zeitplans von Ereignissen konfiguriert ist, der keine Einschränkungen der Konstellation von Bildgebungssatelliten verletzt; und ein Satellitensteuerungssystem, das zum Empfangen des nahezu optimalen Zeitplans von Ereignissen und Konvertieren des nahezu optimalen Zeitplans von Ereignissen in Steuerungsanweisungen zur Übertragung zu dem einen oder den mehreren Bildgebungssatelliten in der Konstellation von Bildgebungssatelliten konfiguriert ist.
- Das System nach Ausführungsform 2 beinhaltet alle Elemente nach Ausführungsform 1 und ist weiterhin zum Verwenden eines gerichteten azyklischen Graphen zum Erzeugen des nahezu optimalen Zeitplans von Ereignissen konfiguriert. Das System nach Ausführungsform 3 beinhaltet alle Elemente von einem der Ausführungsformen 1 oder 2, und umfasst weiterhin ein Ereignisanalysesystem, das zum Empfangen von Informationen von dem einen oder den mehreren Bildgebungssatelliten konfiguriert ist, worin die empfangenen Informationen mit einem Ereignis des Ausführens der Steuerungsanweisungen verbunden ist, die zu dem einen oder den mehreren Bildgebungssatelliten übertragen werden. Das System nach Ausführungsform 4 beinhaltet alle Elemente nach Ausführungsform 3 und ist weiterhin zum Empfangen von Ereignisanalyseinformationen von dem Ereignisanalysesystem, und zum Erzeugen eines aktualisierten, nahezu optimalen Zeitplans von Ereignissen konfiguriert, der die empfangenen Ereignisanalyseinformationen einbindet. Das System nach Ausführungsform 5 beinhaltet alle Elemente nach einer der Ausführungsformen 1 bis 4, worin das Auftragsverwaltungssystem weiterhin zum Zuweisen einer Priorität zu jeder Ereignisanforderung konfiguriert ist, und das Satellitenzeitplanungssystem zum Empfangen der Priorität in Zusammenhang mit jeder Ereignisanforderung, und zum Verwenden der Priorität, die mit jeder Ereignisanforderung verbunden ist, zum Erzeugen des nahezu optimalen Zeitplans von Ereignissen. Das System nach Ausführungsform 6 beinhaltet alle Elemente nach einer der Ausführungsformen 1 bis 5, worin das Auftragsverwaltungssystem weiterhin zum Empfangen von Crowd-Sourcing-Daten und zum Analysieren der Crowd-Sourcing-Daten zum Bestimmen eines Bildsammlungsereignisses konfiguriert ist.
- In Ausführungsform 7 wird ein System zum Planen von Ereignissen für eine Mehrzahl von Satelliten bereitgestellt, wobei das System ein Computergerät umfasst, das zum Ausführen eines Ereignissystems konfiguriert ist, das zum Erzeugen, Speichern oder Empfangen von Ereignisanforderungen konfiguriert ist; ein Einschränkungssystem, das zum Erzeugen, Speichern oder Empfangen von Eigenschaften von der Mehrzahl von Satelliten konfiguriert ist; ein Priorisierungssystem, das zum Erzeugen, Speichern oder Empfangen von Prioritätsinformationen entsprechend den Ereignisanforderungen konfiguriert ist; und ein Steuerungssystem, das betriebsmäßig mit dem Ereignissystem, dem Einschränkungssystem und dem Priorisierungssystem verbunden ist. Das Steuerungssystem umfasst ein Zeitplanungsmodul, das zum Verarbeiten der Ereignisanforderungen konfiguriert ist, die von dem Ereignissystem empfangen werden, der Merkmale der Mehrzahl von Satelliten, die von dem Einschränkungssystem empfangen werden, und der Prioritätsinformationen, die von dem Priorisierungssystem empfangen werden, und zum Erzeugen eines nahezu optimalen Zeitplans von Ereignissen nahezu in Echtzeit, der keine Einschränkungen der Mehrzahl von Objekten verletzt. Das Steuerungssystem umfasst auch ein Befehlsmodul, das zum Empfangen des nahezu optimalen Zeitplans von Ereignissen und Erstellen von Steuerungsanweisungen für die Mehrzahl von Objekten mindestens teilweise basierend auf dem nahezu optimalen Zeitplan von Ereignissen konfiguriert ist.
- Das System nach Ausführungsform 8 beinhaltet alle Elemente nach Ausführungsform 7, worin das Zeitplanungsmodul weiterhin zum Verwenden eines gerichteten azyklischen Graphen zum Erzeugen des nahezu optimalen Zeitplans von Ereignissen konfiguriert ist. Das System nach Ausführungsform 9 beinhaltet die Elemente nach Ausführungsformen 7 und 8, worin mindestens ein Ereignis derart beschaffen ist, dass alle annehmbaren Wege durch den gerichteten azyklischen Graphen durch das Ereignis hindurchgehen. Das System nach Ausführungsform 10 beinhaltet alle Elemente von jeder der Ausführungsformen 7 bis 9, worin die Merkmale der Mehrzahl von Satelliten paarweise Einschränkungen und kumulative Einschränkungen beinhaltet. Das System nach Ausführungsform 11 beinhaltet alle Elemente nach Ausführungsform 10, worin die kumulative Einschränkung eine von einer Datenkapazitätsbegrenzung, einer Leistungsanforderung oder einem thermischen Wert ist. Das System nach Ausführungsform 12 beinhaltet alle Elemente nach Ausführungsform 10, worin die paarweise Einschränkung eine Anstiegsrate eines Satelliten ist. Das System nach Ausführungsform 13 beinhaltet alle Elemente nach einer der Ausführungsformen 7 bis 12, worin das Zeitplanungsmodul zum Erzeugen des nahezu optimalen Zeitplans von Ereignissen durch Aufbauen einer Sequenz von Ereignissen und Entfernen eines neu hinzugefügten Ereignisses konfiguriert ist, wenn sich eine Nutzungsfunktion nicht erhöht. Das System nach Ausführungsform 14 beinhaltet alle Elemente nach einer der Ausführungsformen 7 bis 13, worin das Zeitplanungsmodul zum Erzeugen des nahezu optimalen Zeitplans von Ereignissen durch Aufbauen einer Sequenz von Ereignissen und Entfernen eines neu hinzugefügten Ereignisses konfiguriert ist, wenn eine kumulative Einschränkung durch Aufrechterhalten des neu hinzugefügten Ereignisses in dem nahezu optimalen Zeitplan von Ereignissen verletzt würde. Das System nach Ausführungsform 15 beinhaltet alle Elemente nach einer der Ausführungsformen 7 bis 14, worin das Ereignissystem weiterhin zum Erzeugen eines Ereignisses basierend auf Crowd-Sourcing-Daten konfiguriert ist. Das System nach Ausführungsform 16 beinhaltet alle Elemente nach einer der Ausführungsformen 7 bis 15, worin die Mehrzahl von Satelliten Mikrosatelliten umfasst.
- In Ausführungsform 17 wird ein nicht vorübergehender Computerspeicher bereitgestellt, der mit ausführbaren Anweisungen zum Planen von Ereignissen für eine Mehrzahl von Satelliten konfiguriert ist. Die ausführbaren Anweisungen umfassen ein Zeitplanungsmodul, das zum Erzeugen eines nahezu optimalen Zeitplans von Ereignissen nahezu in Echtzeit durch Aufbauen eines vorübergehenden Zeitplans von Ereignissen mit einem Ereignis auf einmal, und Entfernen eines neu hinzugefügten Ereignisses von dem vorübergehenden Zeitplan konfiguriert ist, wenn es eine Verletzung einer kumulativen Einschränkung verursacht. Die ausführbaren Anweisungen umfassen auch ein Befehlsmodul, das zum Empfangen des nahezu optimalen Zeitplans von Ereignissen und Erstellen von Steuerungsanweisungen für die Mehrzahl von Satelliten mindestens teilweise basierend auf dem nahezu optimalen Zeitplan von Ereignissen konfiguriert ist. Der nahezu optimale Zeitplan von Ereignissen ist der vorübergehende Zeitplan von Ereignissen, der keine kumulative Einschränkung verletzt.
- Der nicht flüchtige Computerspeicher nach Ausführungsform 18 beinhaltet alle Elemente nach Ausführungsform 17, worin der nahezu optimale Zeitplan von Ereignissen der vorübergehende Zeitplan von Ereignissen ist, der einen höheren Wert für eine Nutzungsfunktion als andere vorübergehende Zeitpläne von Ereignissen zum Ergebnis hat. Der nicht vorübergehende Computerspeicher nach Ausführungsform 19 beinhaltet alle Elemente nach einer der Ausführungsformen 17 oder 18, worin das Zeitplanungsmodul zum Aufbauen des vorübergehenden Zeitplans von Ereignissen durch Starten mit einem ersten Ereignis und Hinzufügen eines zweiten Ereignisses zeitlich später als das erste Ereignis konfiguriert ist, worin das zweite Ereignis nicht paarweise eingeschränkt ist, dem ersten Ereignis in dem vorübergehenden Zeitplan zu folgen. Der nicht vorübergehende Computerspeicher nach Ausführungsform 20 beinhaltet alle Elemente nach einer der Ausführungsformen 17 bis 19, worin der Satellit einen Bildgebungssatelliten beinhaltet und das Zeitplanungsmodul weiterhin zum Analysieren von Crowd-Sourcing-Daten zum Bestimmen eines interessierenden Ereignisses konfiguriert ist; Bestimmen eines geografischen Standorts für das interessierende Ereignis unter Verwendung der Crowd-Sourcing-Daten; und Erstellen einer Bilderfassungsanforderung, die den bestimmten geografischen Standort des interessierenden Ereignisses umfasst. Der nicht vorübergehende Computerspeicher nach Ausführungsform 21 beinhaltet alle Elemente nach einer der Ausführungsformen 17 bis 20, weiterhin umfassend ein Anzeigemodul, das zum Anzeigen des nahezu optimalen Zeitplans von Ereignissen konfiguriert ist.
- In einer Ausführungsform 22 wird ein Verfahren zum Planen von Ereignissen für eine Mehrzahl von Objekten bereitgestellt, das Verfahren umfassend, unter der Steuerung eines Computergeräts in Kommunikation mit einem nicht vorübergehenden Datenspeicher, der zum Speichern von Eigenschaften entsprechend Merkmalen der Mehrzahl von Objekten konfiguriert ist, Bestimmen eines wahrscheinlichen Weges für jedes von der Mehrzahl von Objekten; Empfangen von Ereignisanforderungen und Objekteigenschaften für die Mehrzahl von Objekten; Erzeugen eines nahezu optimalen Zeitplans von Ereignissen, der keine Einschränkungen der Mehrzahl von Objekten verletzt; und Konvertieren des nahezu optimalen Zeitplans von Ereignissen in Steuerungsanweisungen zum Übertragen zu der Mehrzahl von Objekten. Eine erste Einschränkung der Mehrzahl von Objekten ist eine kumulative Einschränkung und eine zweite Einschränkung der Mehrzahl von Objekten ist eine paarweise Einschränkung.
- Das Verfahren nach Ausführungsform 23 beinhaltet alle Elemente nach Ausführungsform 22, worin Erzeugen des nahezu optimalen Zeitplans von Ereignissen das Verwenden eines gerichteten azyklischen Graphen zum Bestimmen des nahezu optimalen Zeitplans von Ereignissen umfasst. Das Verfahren nach Ausführungsform 24 beinhaltet alle Elemente nach Ausführungsform 22, worin mindestens einige von der Mehrzahl von Objekten Bildgebungssatelliten beinhalten und die kumulative Einschränkung eine von einer Datenkapazitätsbegrenzung, einer Leistungsanforderung oder einem thermischen Wert ist. Das Verfahren nach Ausführungsform 25 beinhaltet alle Elemente nach Ausführungsform 22, worin mindestens einige von der Mehrzahl von Objekten Bildgebungssatelliten beinhalten und die paarweise Einschränkung eine Anstiegsrate von einem von den Bildgebungssatelliten ist. Das Verfahren nach Ausführungsform 26 beinhaltet alle Elemente nach Ausführungsform 22, worin mindestens einige von der Mehrzahl von Objekten eine Konstellation von Bildgebungssatelliten umfasst, und das Verfahren weiterhin das Zugreifen auf Crowd-Sourcing-Daten umfasst; Analysieren der Crowd-Sourcing-Daten zum Bestimmen eines interessierenden Ereignisses; Bestimmen eines geografischen Standorts für das interessierende Ereignis unter Verwendung der Crowd-Sourcing-Daten; Bestimmen eines Grades von Relevanz für das interessierende Ereignis; Erzeugen einer Bilderfassungsanforderung, worin die Bilderfassungsanforderung den bestimmten geografischen Standort des interessierenden Ereignisses umfasst; und Einbinden der Bilderfassungsanforderung in den Zeitplan von Ereignissen. Das Verfahren nach Ausführungsform 27 beinhaltet alle Elemente nach einer der Ausführungsformen 22 bis 26, worin das Verfahren den nahezu optimalen Zeitplan von Ereignissen nahezu in Echtzeit erzeugt. Das Verfahren nach Ausführungsform 28 beinhaltet alle Elemente nach Ausführungsform 27, worin das Verfahren den nahezu optimalen Zeitplan von Ereignissen in weniger als etwa 10 Minuten erzeugt. Das Verfahren nach Ausführungsform 29 beinhaltet alle Elemente nach Ausführungsform 28, worin mindestens einige von der Mehrzahl von Objekten Satelliten umfassen.
- Beispiele von Crowd-Sourcing-Zeitplanungssystemen und -verfahren
- In Ausführungsform 30 wird ein Verfahren zum Verwenden von Crowd-Sourcing-Daten zur automatischen Zeitplanung eines Bilderfassungsereignisses in einer Konstellation von Bildgebungs-Mikrosatelliten bereitgestellt. Das Verfahren beinhaltet das Zugreifen auf Crowd-Sourcing-Daten; Analysieren der Crowd-Sourcing-Daten zum Bestimmen eines interessierenden Ereignisses; Bestimmen eines geografischen Standorts für das interessierende Ereignis unter Verwendung der Crowd-Sourcing-Daten; Bestimmen eines Grades von Relevanz für das interessierende Ereignis; Erzeugen einer Bilderfassungsanforderung, worin die Bilderfassungsanforderung (1) den bestimmten geografischen Standort des interessierenden Ereignisses und (2) eine Aufgabenpriorität mindestens teilweise basierend auf dem bestimmten Grad von Relevanz für das interessierende Ereignis umfasst; und automatisches Bereitstellen der Bilderfassungsanforderung über eine Maschine-zu-Maschine-Schnittstelle für ein Zeitplanungssystem in Zusammenhang mit der Konstellation von Bildgebungs-Mikrosatelliten, wobei das Zeitplanungssystem zum Erzeugen einer Bilderfassungsaufgabe in Zusammenhang mit dem bestimmten geografischen Standort für mindestens einen Bildgebungs-Mikrosatelliten in der Konstellation von Bildgebungs-Mikrosatelliten betreibbar ist. Das Verfahren wird unter der Steuerung eines Crowd-Sourcing-Systems ausgeführt, das Computerhardware umfasst.
- Das Verfahren nach Ausführungsform 31 beinhaltet alle Elemente nach Ausführungsform 30, worin Analysieren der Crowd-Sourcing-Daten zum Bestimmen eines interessierenden Ereignissees Erzeugen einer Liste von Begriffen von Textdaten innerhalb der Crowd-Sourcing-Daten umfasst; Bestimmen einer Häufigkeit der Verwendung innerhalb der Crowd-Sourcing-Daten für jeden Begriff in der Liste von Begriffen; Vergleichen der Häufigkeit der Verwendung für jeden Begriff in der Liste von Begriffen mit einer Basisverwendungshäufigkeit; und Identifizieren eines interessierenden Ereignisses, wenn ein ereignisbezogener Begriff in der Liste von Begriffen eine Häufigkeit aufweist, die einen Interessensschwellenwert über der Basisverwendungshäufigkeit überschreitet. Das Verfahren nach Ausführungsform 32, das alle Elemente nach Ausführungsform 31 beinhaltet, worin der Interessensschwellenwert mindestens 110% der Basisverwendungshäufigkeit beträgt. Das Verfahren nach Ausführungsform 33 beinhaltet alle Elemente nach einer der Ausführungsformen 30 bis 32, worin Analysieren der Crowd-Sourcing-Daten zum Bestimmen eines interessierenden Ereignisses Suchen nach einer Liste von Schlüsselwörtern in den Crowd-Sourcing-Daten beinhaltet; Bestimmen einer Verwendungshäufigkeit für jedes der Schlüsselwörter in der Liste von Schlüsselwörtern in den Crowd-Sourcing-Daten; Identifizieren eines interessierenden Ereignisses, wenn die Verwendungshäufigkeit eines ereignisbezogenen Schlüsselworts einen Basisschwellenwert überschreitet. Das Verfahren nach Ausführungsform 34 beinhaltet alle Elemente nach einer der Ausführungsformen 30 bis 33, worin Bestimmen des geografischen Standorts des interessierenden Ereignisses unter Verwendung der Crowd-Sourcing-Daten identifizieren statistisch bedeutender Anomalien in geografischen Tagging-Trends umfasst. Das Verfahren nach Ausführungsform 35 beinhaltet alle Elemente nach einer der Ausführungsformen 30 bis 34, worin Bestimmen des Grades von Relevanz für das interessierende Ereignis Verwendung von Sentiment-Analyse zum Bewerten einer relativen Bedeutung des interessierenden Ereignisses umfasst. Das Verfahren nach Ausführungsform 36 beinhaltet alle Elemente nach einer der Ausführungsformen 30 bis 35, worin das Verfahren nahezu in Echtzeit zum Erzeugen der Bilderfassungsanforderung ausgeführt wird. Das Verfahren nach Ausführungsform 37 beinhaltet alle Elemente nach einer der Ausführungsformen 30 bis 36, worin auf die Crowd-Sourcing-Daten auf regelmäßiger Basis zugegriffen wird, und diese automatisch ohne intervenierende Eingabe von einem Benutzer analysiert werden. Das Verfahren nach Ausführungsform 38 beinhaltet alle Elemente nach einer der Ausführungsformen 30 bis 37, worin das interessierende Ereignis eine Umweltkatastrophe, eine politische Revolution, soziale Unruhen oder ein Ereignis ist, das eine soziokulturelle Auswirkung auf eine Community ausübt. Das Verfahren nach Ausführungsform 39 beinhaltet alle Elemente nach einer der Ausführungsformen 30 bis 38, worin das Zeitplanungssystem einen gerichteten azyklischen Graphen zum Erzeugen der Bilderfassungsaufgabe verwendet.
- In einer Ausführungsform 40 wird ein System zum Verwenden von Crowd-Sourcing-Daten zum automatischen Erzeugen einer Bilderfassungsanforderung für ein Satellitenzeitplanungssystem bereitgestellt. Das System umfasst ein Computergerät und eine Netzwerkeingabe-/-ausgabevorrichtung, die zum Abrufen von Crowd-Sourcing-Daten von einer oder mehreren Datenquellen über ein Netzwerk konfiguriert ist. Das System umfasst auch ein Crowd-Sourcing-Datenanalysemodul, das zum Verwenden des Computergeräts zum Analysieren der Crowd-Sourcing-Daten zum Bestimmen eines interessierenden Ereignisses, Bestimmen eines geografischen Standorts für das interessierende Ereignis unter Verwendung der Crowd-Sourcing-Daten, und Erstellen einer Bilderfassungsanforderung konfiguriert ist, die den bestimmten geografischen Standort des interessierenden Ereignisses und eine Aufgabenpriorität umfasst. Das System umfasst auch eine Maschine-zu-Maschine-Schnittstelle, die zum automatischen Bereitstellen der Bilderfassungsanforderung für das Satellitenzeitplanungssystem konfiguriert ist.
- Das System nach Ausführungsform 41 beinhaltet alle Elemente nach Ausführungsform 40, worin das Crowd-Sourcing-Datenanalysemodul zum Bestimmen des geografischen Standorts durch Identifizieren statistisch bedeutender Anomalien in geografischen Tagging-Trends konfiguriert ist. Das System nach Ausführungsform 42 beinhaltet alle Elemente nach einer der Ausführungsformen 40 oder 41, worin das Crowd-Sourcing-Datenanalysemodul zum Bestimmen des Grades von Relevanz unter Verwendung von Sentiment-Analyse zum Bewerten einer relativen Bedeutung des interessierenden Ereignisses konfiguriert ist. Das System nach Ausführungsform 43 beinhaltet alle Elemente nach einer der Ausführungsformen 40 bis 42, worin die Bilderfassungsanforderung nahezu in Echtzeit erstellt wird. Das Verfahren nach Ausführungsform 44 beinhaltet alle Elemente nach einer der Ausführungsformen 40 bis 43, worin auf die Crowd-Sourcing-Daten auf regelmäßiger Basis zugegriffen wird, und diese automatisch ohne intervenierende Eingabe von einem Benutzer analysiert werden.
- In Ausführungsform 45 wird ein System zur Zeitplanung von Ereignissen für Bildgebungssatelliten bereitgestellt. Das System umfasst einen nicht vorübergehenden Datenspeicher, der zum Speichern von Crowd-Sourcing-Daten in Zusammenhang mit Ereignissen konfiguriert ist. Das System umfasst auch ein physisches Computersystem in Kommunikation mit dem nicht vorübergehenden Datenspeicher, wobei das physische Computersystem zum Analysieren der Crowd-Sourcing-Daten für Trends konfiguriert ist, die eines oder mehrere sozial bedeutende Ereignisse angeben; Bestimmen eines geografischen Standorts für jedes von den sozial bedeutenden Ereignissen; Bestimmen eines Grades von Relevanz für jedes von den sozial bedeutenden Ereignissen; Erstellen einer Bilderfassungsaufgabe, worin die Bilderfassungsaufgabe mindestens (1) den bestimmten geografischen Standort entsprechend einem oder mehreren von den sozial bedeutenden Ereignissen, und (2) eine Aufgabenpriorität mindestens teilweise basierend auf dem bestimmten Grad von Relevanz für das eine oder die mehreren sozial bedeutenden Ereignisse umfasst; und Bereitstellen der Bilderfassungsaufgabe für ein Zeitplanungssystem in Zusammenhang mit den Bildgebungssatelliten, wobei das Zeitplanungssystem zum Erzeugen eines Zeitplans von Aufgaben für die Bildgebungssatelliten betreibbar ist, der mindestens die Bilderfassungsaufgabe beinhaltet.
- Das System nach Ausführungsform 46 beinhaltet alle Elemente nach Ausführungsform 45 und umfasst weiterhin eine Maschine-zu-Maschine-Schnittstelle, die zum Übermitteln der Bilderfassungsaufgabe zu dem Zeitplanungssystem konfiguriert ist. Das System nach Ausführungsform 47 beinhaltet alle Elemente nach einer der Ausführungsformen 45 oder 46, worin das Zeitplanungssystem zum Verwenden eines gerichteten azyklischen Graphen zum Erzeugen des nahezu optimalen Zeitplans von Aufgaben konfiguriert ist. Das System nach Ausführungsform 48 beinhaltet alle Elemente nach Ausführungsform 47, worin mindestens eine Aufgabe derart beschaffen ist, dass alle annehmbaren Wege durch den gerichteten azyklischen Graphen durch die Aufgabe hindurchgehen. Das System nach Ausführungsform 49 beinhaltet alle Elemente nach einer der Ausführungsformen 47 oder 48, worin das Zeitplanungssystem den Zeitplan von Aufgaben vorbehaltlich paarweiser Einschränkungen und kumulativer Einschränkungen erzeugt. Das System nach Ausführungsform 50 beinhaltet alle Elemente nach Ausführungsform 49, worin die kumulativen Einschränkungen eine von einer Datenkapazitätsbegrenzung, einer Leistungsanforderung oder einem thermischen Wert beinhalten. Das System nach Ausführungsform 51 beinhaltet alle Elemente nach Ausführungsform 49, worin die paarweisen Einschränkungen eine Anstiegsrate von einem der Bildgebungssatelliten ist. Das Verfahren nach Ausführungsform 52 beinhaltet alle Elemente nach einer der Ausführungsformen 45 bis 51, worin das physische Computersystem zum Erstellen der Bilderfassungsanforderung nahezu in Echtzeit konfiguriert ist. Das Verfahren nach Ausführungsform 53 beinhaltet alle Elemente nach einer der Ausführungsformen 45 bis 52, worin die Crowd-Sourcing-Daten auf regelmäßiger Basis automatisch ohne intervenierende Eingabe von einem Benutzer analysiert werden.
- In einer Ausführungsform 54 wird ein Verfahren zum Erzeugen einer Bilderfassungsanforderung bereitgestellt, wobei das Verfahren unter der Steuerung eines Crowd-Sourcing-Systems ausgeführt wird, das Computerhardware umfasst, die einen oder mehrere physische Prozessoren beinhaltet. Das Verfahren umfasst Analysieren von Crowd-Sourcing-Daten zum Bestimmen eines Standorts eines interessierenden Ereignisses; Einstufen des interessierenden Ereignisses; Erzeugen einer Bilderfassungsanforderung, umfassend den bestimmten Standort und das Einstufen des interessierenden Ereignisses; und Bereitstellen der Bilderfassungsanforderung über eine Maschine-zu-Maschine-Schnittstelle für ein Zeitplanungssystem. Das interessierende Ereignis wird bestimmt und die Bilderfassungsanforderung wird für das Zeitplanungssystem ohne intervenierende Eingabe von einem Benutzer bereitgestellt.
- Das Verfahren nach Ausführungsform 55 beinhaltet alle Elemente nach Ausführungsform 54, worin das interessierende Ereignis ein politisches Ereignis, ein soziales Ereignis, ein Umweltereignis, ein astronomisches Ereignis oder ein soziokulturelles Ereignis ist, das eine Auswirkung auf eine Community ausübt. Das Verfahren nach Ausführungsform 56 beinhaltet alle Elemente nach einer der Ausführungsformen 54 oder 55, worin die Crowd-Sourcing-Daten mindestens Daten umfassen, die durch einen oder mehrere Benutzer eines sozialen Netzwerks erzeugt werden, Daten, die von einem oder mehreren Benutzern eines Webdienstes erzeugt werden, in einem Web-Blog veröffentlichte Daten oder Daten, die auf einer Online-Nachrichtenwebsite veröffentlicht werden.
- Schlussfolgerung
- Beispiele von Zeitplanungssystemen und zugehörigen Komponenten und Verfahren wurden unter Bezugnahme auf die Figuren beschrieben. Die Figuren stellen unterschiedliche Systeme und Module sowie Verbindungen zwischen ihnen dar. Die unterschiedlichen Module und Systeme können in unterschiedlichen Konfigurationen kombiniert werden, und Verbindungen zwischen den unterschiedlichen Modulen und Systemen können physische oder logische Verbindungen repräsentieren. Die Darstellungen in den Figuren wurden dargestellt, um die Prinzipien klar zu veranschaulichen, wie erwünschte Zeitpläne auf relativ schnelle und effiziente Art erzeugt werden, und Details in Bezug auf Teilungen von Modulen oder Systemen wurden zwecks einfacherer Beschreibung bereitgestellt, anstatt zu versuchen, separate physische Ausführungsformen voneinander abzugrenzen. Zusätzlich wurden die Darstellungen in den Figuren dargestellt, um die Prinzipien des Analysierens von Crowd-Sourcing-Daten klar zu veranschaulichen, um erwünschte Zeitpläne auf relativ schnelle und effiziente Art zu erzeugen, und Details in Bezug auf Teilungen von Modulen oder Systemen wurden zwecks einfacherer Beschreibung bereitgestellt, anstatt zu versuchen, separate physische Ausführungsformen voneinander abzugrenzen. Die Beispiele und Figuren sind dazu gedacht, um den Umfang der hierin beschriebenen Erfindungen zu veranschaulichen, und nicht ihn zu begrenzen. Beispielsweise können die Prinzipien hierin auf eine Konstellation von Satelliten angewandt werden, worin Satelliten Kommunikationssatelliten, Bildgebungssatelliten, Erdbeobachtungssatelliten, Navigationssatelliten, Wettersatelliten oder andere Arten von Satelliten beinhalten. Die Satelliten können alle von einer Vielfalt von Größen wie z. B. große Satelliten, mittlere Satelliten, Minisatelliten, Mikrosatelliten, Nanosatelliten, Pikosatelliten und dergleichen sein. Die hierin offenbarten Prinzipien können auf Systeme angewandt werden, die keine Konstellation von Bildgebungssatelliten umfassen, wie z. B. Luftverkehrssteuerungssysteme, Tourenplanungssysteme usw.
- Obwohl bestimmte bevorzugte Ausführungsformen und Beispiele hierin offenbart werden, erstreckt sich der Gegenstand der Erfindung über die gesondert offenbarten Ausführungsformen auf andere alternative Ausführungsformen und/oder Verwendungen und auf Abwandlungen und Entsprechungen davon hinaus. Daher ist der Schutzumfang der hier beigefügten Ansprüche nicht durch spezifische hierin beschriebene Ausführungsformen begrenzt. Beispielsweise können in einem beliebigen hier beschriebenen Verfahren oder Prozess die Handlungen oder Operationen des Verfahrens oder des Prozesses in jeder geeigneten Reihenfolge durchgeführt werden, und sind nicht notwendigerweise auf eine bestimmte offenbarte Sequenz beschränkt. Verschiedene Operationen können als mehrere diskrete Operationen der Reihe nach beschrieben werden, in einer Weise, die hilfreich für das Verständnis bestimmter Ausführungsformen sein kann; jedoch sollte die Reihenfolge der Beschreibung nicht so ausgelegt werden, dass diese Vorgänge abhängig von der Reihenfolge sind. Zusätzlich können die hierin beschriebenen Strukturen als integrierte Komponenten oder als separate Komponenten ausgebildet sein. Zum Zwecke des Vergleichs verschiedener Ausführungsformen werden bestimmte Aspekte und Vorteile dieser Ausführungsformen beschrieben. Nicht notwendigerweise alle derartigen Aspekte und Vorteile werden durch eine besondere Ausführungsform erreicht. So können beispielsweise verschiedene Ausführungsformen in einer Weise durchgeführt werden, die einen Vorteil oder eine Gruppe von Vorteilen, wie hier gelehrt, erreicht oder optimiert, ohne notwendigerweise die Verwirklichung anderer Aspekte oder Vorteile zu erreichen, wie sie auch hier gelehrt oder nahegelegt werden können.
- Jeder der Prozesse, Verfahren und Algorithmen, die hierin beschrieben und/oder in den beigefügten Figuren (einschließlich
5 ,7 ,11 und12 beschrieben sind) können verkörpert sein in, und vollständig oder teilweise automatisiert sein durch Codemodule, die durch eines oder mehrere physische Computersysteme, Computerprozessoren, anwendungsspezifische Schaltungen und/oder elektronische Hardware ausgeführt werden, die zum Ausführen von Computeranweisungen konfiguriert ist. Beispielsweise können Computersysteme Allgemein- oder Spezialcomputer, Server, Desktopcomputer, Laptop- oder Notebookcomputer oder Tablets, PDA-Rechnergeräte, Mobiltelefone usw. beinhalten. Ein Codemodul kann in ein ausführbares Programm kompiliert und damit verbunden, in einer DLL installiert werden, oder kann in einer interpretierten Programmiersprache geschrieben werden. - Unterschiedliche Ausführungsformen wurden in Bezug auf die Funktionalität von solchen Ausführungsformen angesichts der allgemeinen Austauschbarkeit von Hardware und Software beschrieben. Ob diese Funktionalität in anwendungsspezifische Hardware oder Schaltungen oder in Software implementiert wird, die in einem oder mehreren physischen Computergeräten ausgeführt wird, ist von der bestimmten Anwendung und Konzeptionseinschränkungen abhängig, die dem Gesamtsystem auferlegt werden. Weiterhin sind bestimmte Implementierungen der Funktionalität der vorliegenden Offenbarung genügend mathematisch, rechnerisch oder technisch komplex, dass anwendungsspezifische Hardware oder eines oder mehrere physische Computergeräte (unter Verwendung von passenden ausführbaren Anweisungen) zum Ausführen der Funktionalität notwendig sein können, z. B. aufgrund des Umfangs oder der Komplexität der enthaltenen Berechnungen, oder um Ergebnisse im Wesentlichen in Echtzeit bereitzustellen.
- Codemodule können auf jeder Art von nicht vorübergehendem computerlesbarem Medium gespeichert werden, wie z. B. ein physischer Computerspeicher mit Festplatten, Festkörperspeicher, Arbeitsspeicher (RAM), schreibgeschützter Speicher (ROM), optische Festplatte, flüchtiger oder nicht flüchtiger Speicher, Kombinationen davon und/oder dergleichen. Die Systeme und Module können auch als erzeugte Datensignale (z. B. als Teil einer Trägerwelle oder eines anderen analog oder digital verbreiteten Signals) auf einer Vielzahl computerlesbarer Übertragungsmedien übertragen werden, z. B. drahtlose und/oder verdrahtete/drahtgebundene Medien, und sie können eine Vielzahl von Formen annehmen (z. B. als Teil eines einzelnen oder gemultiplexten analogen Signals oder als mehrere getrennte digitale Pakete oder Einzelbilder). Die Ergebnisse der offenbarten Verfahren und Verfahrensschritte können dauerhaft oder ansonsten in jeder Art von nicht vorübergehendem materiellem Computerspeicher gespeichert werden, oder können über ein computerlesbares Übertragungsmedium übermittelt werden.
- Alle Verfahren, Blöcke, Status, Schritte oder Funktionalitäten in hierin beschriebenen Ablaufdiagrammen und/oder die in den beigefügten Figuren dargestellt sind, verstehen sich als potenziell Codemodule, Segmente oder Abschnitte von Codes darstellend, die eine oder mehrere ausführbare Anweisungen zum Implementieren von spezifischen Funktionen (z. °B. logisch oder arithmetisch) oder Schritten in dem Verfahren beinhalten. Die unterschiedlichen Verfahren, Blöcke, Status, Schritte oder Funktionalitäten können kombiniert, neu angeordnet, hinzugefügt werden zu, gelöscht werden von, oder ansonsten von den hierin bereitgestellten veranschaulichenden Beispielen geändert werden. In einigen Ausführungsformen können zusätzliche oder andere Computersysteme oder Codemodule einige oder alle von den hierin beschriebenen Funktionalitäten ausführen. Die hierin beschriebenen Verfahren und Prozesse sind außerdem nicht auf eine bestimmte Sequenz beschränkt, und die damit verbundenen Blöcke, Schritte oder Status können in anderen geeigneten Sequenzen durchgeführt werden, beispielsweise seriell, parallel oder auf eine andere Art. Aufgaben oder Ereignisse können zu den offenbarten beispielhaften Ausführungsformen hinzugefügt oder davon entfernt werden. Darüber hinaus dient die Trennung der unterschiedlichen Systemkomponenten in den hierin beschriebenen Implementierungen veranschaulichenden Zwecken und versteht sich dahingehend, dass diese Trennung in allen Implementierungen erforderlich ist. Es versteht sich, dass die beschriebenen Programmkomponenten, Verfahren und Systeme allgemein zusammen in einem einzelnen Computer- oder Softwareprodukt integriert, oder in mehrere Computer- oder Softwareprodukte als Pakete integriert werden können. Viele Implementierungsvariationen sind möglich.
- Die Prozesse, Verfahren und Systeme können in einem Netzwerk (oder einer verteilten) Computerumgebung implementiert werden. Netzwerkumgebungen beinhalten unternehmensweite Netzwerke, Intranets, lokale Netzwerke (LAN), Großraumnetzwerke (WAN), Personal Area Networks (PAN), Cloud-Computing-Netzwerke, Crowd-Sourcing-Computing-Netzwerke, das Internet und das World Wide Web. Das Netzwerk kann ein verdrahtetes oder ein drahtloses Netzwerk (z. B. ein terrestrisches und/oder Satellitennetzwerk) oder jede andere Art von Kommunikationsnetzwerk sein.
- Die verschiedenen, hierin beschriebenen Elemente, Merkmale und Prozesse können unabhängig voneinander verwendet oder auf verschiedene Weise kombiniert werden. Alle möglichen Kombinationen und Teilkombinationen sollen in den Umfang dieser Offenbarung fallen. Weiterhin soll nichts in der vorstehenden Beschreibung implizieren, dass ein bestimmtes Merkmal, Element, eine bestimmte Komponente, Eigenschaft, ein bestimmter Schritt, ein bestimmtes Modul, ein bestimmtes Verfahren, ein bestimmter Prozess, eine bestimmte Aufgabe oder ein bestimmter Block notwendig oder unerlässlich ist. Die hierin beschriebenen beispielhaften Systeme und Komponenten können anders als beschrieben konfiguriert sein. Beispielsweise können Elemente im Vergleich zu den offenbarten Beispielen hinzugefügt, davon entfernt oder neu angeordnet werden.
- Wie hierin verwendet, bedeutet jeder Verweis auf „eine Ausführungsform” oder „einige Ausführungsformen”, dass ein bestimmtes Element, Merkmal, eine Struktur oder eine Eigenschaft, das/die in Verbindung mit der Ausführungsform beschrieben wird, zumindest in einer Ausführungsform beinhaltet ist. Das Erscheinen der Phrase „in einer Ausführungsform” an verschiedenen Orten in der Spezifikation bezieht sich nicht notwendigerweise immer auf dieselbe Ausführungsform. Hierin verwendete Konditionalsprache, wie etwa unter anderem „kann”, „könnte”, „z. B.” und ähnliche, soll im Allgemeinen vermitteln, dass gewisse Ausführungsformen gewisse Merkmale, Elemente und/oder Schritte umfassen, während andere Ausführungsformen diese nicht umfassen, wenn dies nicht spezifisch anders angegeben oder in dem Kontext, wie er verwendet wird, anders verstanden wird. Zusätzlich sollen die Artikel „ein” oder „eine”, wie in dieser Anmeldung und den beigefügten Ansprüchen verwendet, „eine/r/s oder mehrere” oder „mindestens eine/r/s” bedeuten, außer wenn anders spezifiziert.
- Wie hierin verwendet, sind die Begriffe „umfasst”, „umfassend”, „beinhaltet”, „beinhaltend”, „aufweist”, „aufweisend” und andere Varianten davon Begriffe mit zeitlich offenem Ende und sollen eine nicht ausschließliche Einbeziehung abdecken. Zum Beispiel ist ein Prozess, ein Verfahren, ein Artikel oder eine Vorrichtung, der/die eine Liste von Elementen umfasst, nicht notwendigerweise nur auf diese Elemente beschränkt, sondern kann andere Elemente beinhalten, die nicht ausdrücklich aufgelistet oder bei einem solchen Prozess, einem solchen Verfahren, einem solchen Artikel oder einer solchen Vorrichtung inhärent sind. Des Weiteren bezieht sich, sofern nichts Gegenteiliges angegeben wird, „oder” auf ein einschließendes und nicht auf ein ausschließendes Oder. Zum Beispiel ist eine Bedingung A oder B durch eines der folgenden erfüllt: A ist wahr (oder vorhanden) und B ist falsch (oder nicht vorhanden), A ist falsch (oder nicht vorhanden) und B ist wahr (oder vorhanden) und sowohl A als auch B sind wahr (oder vorhanden). Wie hierin verwendet, bezieht sich ein Satz, der sich auf „mindestens eine/r/s” von bezieht, auf jede Kombination dieser Punkte, einschließlich einzelner Elemente. Beispielsweise soll „mindestens eine/r/s von A, B oder C” abdecken: A, B, C, A und B, A und C, B und C, und A, B, und C. Verbindende Sprache, wie etwa der Ausdruck „zumindest eines von X, Y und Z” wird, wenn nicht spezifisch anders angegeben, andernfalls mit dem Kontext verstanden, wie er im Allgemeinen verwendet wird, um zu vermitteln, dass ein Gegenstand, Begriff, usw. entweder X, Y oder Z sein kann. Folglich soll derartige verbindende Sprache im Allgemeinen nicht implizieren, dass gewisse Ausführungsformen das Vorhandensein mindestens eines X, mindestens eines Y und mindestens eines Z erfordern.
- Die vorangegangene Offenbarung wurde zum Zwecke der Erklärung unter Bezugnahme auf spezifische Ausführungsformen, Anwendungen und Verwendungsfälle beschrieben. Die obigen veranschaulichenden Erörterungen sollen jedoch nicht allumfassend sein oder die Erfindungen genau auf die offenbarten Formen beschränken. in Bezug auf die obigen Anleitungen sind viele Modifizierungen und Varianten möglich. Die Ausführungsformen wurden gewählt und beschrieben, um die Prinzipien der Erfindungen und ihre praktischen Anwendungen zu beschreiben, um es dadurch anderen Fachleuten zu ermöglichen, die Erfindungen und verschiedenen Ausführungsformen mit verschiedenen Modifizierungen zu nutzen, die für die besondere, erwägte Nutzung geeignet sind.
- Die Spezifikation umfasst auch die folgenden Klauseln:
- 1. System für die Zeitplanung von Ereignissen für eine Konstellation von Bildgebungssatelliten, das System umfassend: einen nicht vorübergehenden Datenspeicher, der zum Speichern von Satelliteneigenschaftsinformationen entsprechend den Eigenschaften von einem oder mehreren Bildgebungssatelliten in der Konstellation von Bildgebungssatelliten konfiguriert ist; ein Computergerät in Kommunikation mit dem Datenspeicher, wobei das Computergerät konfiguriert ist, um Folgendes auszuführen: ein Auftragsverwaltungssystem, das zum Erzeugen oder Empfangen von Anfragen für ein Bildsammlungsereignis konfiguriert ist; ein Umlaufbahnanalysesystem, das zum identifizieren von einem oder mehreren Bildgebungssatelliten in der Konstellation von Bildgebungssatelliten konfiguriert ist, die über einem Bereich positioniert sein werden, der zum Ausführen eines angeforderten Bildsammlungsereignisses geeignet ist; ein Wartungssystem, das zum Erzeugen von Anforderungen für Onboard-Wartung für Bildgebungssatelliten in der Konstellation von Bildgebungssatelliten konfiguriert ist; ein Satellitenzeitplanungssystem, das zum Empfangen von Ereignisanforderungen und Satelliteneigenschaften, und zum Erzeugen eines nahezu optimalen Zeitplans von Ereignissen konfiguriert ist, der keine Einschränkungen der Konstellation von Bildgebungssatelliten verletzt; und ein Satellitensteuerungssystem, das zum Empfangen des nahezu optimalen Zeitplans von Ereignissen und Konvertieren des nahezu optimalen Zeitplans von Ereignissen in Steuerungsanweisungen zur Übertragung zu dem einen oder den mehreren Bildgebungssatelliten in der Konstellation von Bildgebungssatelliten konfiguriert ist.
- 2. System nach Klausel 1, worin das Satellitenzeitplanungssystem zum Verwenden eines gerichteten azyklischen Graphen zum Erzeugen des nahezu optimalen Zeitplans von Ereignissen konfiguriert ist.
- 3. System nach einer von Klauseln 1 oder 2, weiterhin umfassend ein Ereignisanalysesystem, das zum Empfangen von Informationen von dem einen oder den mehreren Bildgebungssatelliten konfiguriert ist, worin die empfangenen Informationen mit einem Ereignis des Ausführens der Steuerungsanweisungen verbunden sind, die zu dem einen oder den mehreren Bildgebungssatelliten übertragen werden.
- 4. System nach Klausel 3, worin das Satellitenzeitplanungssystem zum Empfangen von Ereignisanalyseinformationen von dem Ereignisanalysesystem, und zum Erzeugen eines aktualisierten, nahezu optimalen Zeitplans von Ereignissen konfiguriert ist, der die empfangenen Ereignisanalyseinformationen einbindet.
- 5. System nach einer der Klauseln 1 bis 4, worin das Auftragsverwaltungssystem weiterhin zum Zuweisen einer Priorität zu jeder Ereignisanforderung konfiguriert ist, und das Satellitenzeitplanungssystem zum Empfangen der Priorität in Zusammenhang mit jeder Ereignisanforderung, und zum Verwenden der Priorität, die mit jeder Ereignisanforderung verbunden ist, zum Erzeugen des nahezu optimalen Zeitplans von Ereignissen konfiguriert ist.
- 6. System nach einer der Klauseln 1 bis 5, worin das Auftragsverwaltungssystem weiterhin zum Empfangen von Crowd-Sourcing-Daten und zum Analysieren der Crowd-Sourcing-Daten zum Bestimmen eines Bildsammlungsereignisses konfiguriert ist.
- 7. System für die Zeitplanung von Ereignissen für eine Mehrzahl von Satelliten, das System umfassend: ein Computergerät, konfiguriert zum Ausführen: eines Ereignissystems, das zum Erzeugen, Speichern oder Empfangen von Ereignisanforderungen konfiguriert ist; eines Einschränkungssystems, das zum Erzeugen, Speichern oder Empfangen von Eigenschaften von der Mehrzahl von Satelliten konfiguriert ist; eines Priorisierungssystems, das zum Erzeugen, Speichern oder Empfangen von Prioritätsinformationen entsprechend den Ereignisanforderungen konfiguriert ist; und eines Steuerungssystems, das betriebsmäßig mit dem Ereignissystem, dem Einschränkungssystem und dem Priorisierungssystem verbunden ist, das Steuerungssystem umfassend: eines Zeitplanungsmoduls, das zum Verarbeiten der Ereignisanforderungen, die von dem Ereignissystem empfangen werden, der Merkmale der Mehrzahl von Satelliten, die von dem Einschränkungssystem empfangen werden, und der Prioritätsinformationen, die von dem Priorisierungssystem empfangen werden, und zum Erzeugen eines nahezu optimalen Zeitplans von Ereignissen nahezu in Echtzeit, der keine Einschränkungen der Mehrzahl von Objekten verletzt, konfiguriert ist; und eines Befehlsmoduls, das zum Empfangen des nahezu optimalen Zeitplans von Ereignissen und Erstellen von Steuerungsanweisungen fÜr die Mehrzahl von Objekten mindestens teilweise basierend auf dem nahezu optimalen Zeitplan von Ereignissen konfiguriert ist.
- 8. System nach Klausel 7, worin das Zeitplanungsmodul zum Verwenden eines gerichteten azyklischen Graphen zum Erzeugen des nahezu optimalen Zeitplans von Ereignissen konfiguriert ist.
- 9. System nach Klausel 8, worin mindestens ein Ereignis derart beschaffen ist, dass alle annehmbaren Wege durch den gerichteten azyklischen Graphen durch das Ereignis hindurchgehen.
- 10. System nach einer der Klauseln 7 bis 9, worin die Merkmale der Mehrzahl von Satelliten paarweise Einschränkungen und kumulative Einschränkungen beinhaltet.
- 11. System nach Klausel 10, worin die kumulativen Einschränkungen eine von einer Datenkapazitätsbegrenzung, einer Leistungsanforderung oder eines thermischen Werts beinhalten.
- 12. System nach Klausel 10, worin die paarweisen Einschränkungen eine Anstiegsrate eines Satelliten beinhalten.
- 13. System nach einer der Klauseln 7 bis 12, worin das Zeitplanungsmodul zum Erzeugen des nahezu optimalen Zeitplans von Ereignissen durch Aufbauen einer Sequenz von Ereignissen und Entfernen eines neu hinzugefügten Ereignisses konfiguriert ist, wenn sich eine Nutzungsfunktion nicht erhöht.
- 14. System nach einer der Klauseln 7 bis 13, worin das Zeitplanungsmodul zum Erzeugen des nahezu optimalen Zeitplans von Ereignissen durch Aufbauen einer Sequenz von Ereignissen und Entfernen eines neu hinzugefügten Ereignisses konfiguriert ist, wenn eine kumulative Einschränkung durch Aufrechterhalten des neu hinzugefügten Ereignisses in dem nahezu optimalen Zeitplan von Ereignissen verletzt würde.
- 15. System nach einer der Klauseln 7 bis 14, worin das Ereignissystem weiterhin zum Erzeugen eines Ereignisses basierend auf Crowd-Sourcing-Daten konfiguriert ist.
- 16. System nach einer der Klauseln 7 bis 15, worin die Mehrzahl von Satelliten Mikrosatelliten umfasst.
- 17. Nicht vorübergehender Computerspeicher, der mit ausführbaren Anweisungen zum Planen von Ereignissen für eine Mehrzahl von Satelliten konfiguriert ist, die ausführbaren Anweisungen umfassend: ein Zeitplanungsmodul, das zum Erzeugen eines nahezu optimalen Zeitplans von Ereignissen nahezu in Echtzeit durch Aufbauen eines vorÜbergehenden Zeitplans von Ereignissen mit einem Ereignis auf einmal, und Entfernen eines neu hinzugefügten Ereignisses von dem vorübergehenden Zeitplan konfiguriert ist, wenn es eine Verletzung einer kumulativen Einschränkung verursacht; und ein Befehlsmodul, das zum Empfangen des nahezu optimalen Zeitplans von Ereignissen und Erstellen von Steuerungsanweisungen für die Mehrzahl von Satelliten mindestens teilweise basierend auf dem nahezu optimalen Zeitplan von Ereignissen konfiguriert ist. worin der nahezu optimale Zeitplan von Ereignissen der vorübergehende Zeitplan von Ereignissen ist, der keine kumulative Einschränkung verletzt.
- 18. Nicht vorübergehender Computerspeicher nach Klausel 17, worin der nahezu optimale Zeitplan von Ereignissen der vorübergehende Zeitplan von Ereignissen ist, der einen höheren Wert für eine Nutzungsfunktion anders als vorübergehende Zeitpläne von Ereignissen zum Ergebnis hat.
- 19. Nicht vorübergehender Computerspeicher nach einer der Klauseln 17 oder 18, worin das Zeitplanungsmodul zum Aufbauen des vorübergehenden Zeitplans von Ereignissen durch Starten mit einem ersten Ereignis und Hinzufügen eines zweiten Ereignisses zeitlich später als das erste Ereignis konfiguriert ist, worin das zweite Ereignis nicht paarweise eingeschränkt ist, dem ersten Ereignis in dem vorübergehenden Zeitplan zu folgen.
- 20. Nicht vorübergehender Computerspeicher nach einer der Klauseln 17 bis 19, worin der Satellit einen Bildgebungssatelliten beinhaltet und das Zeitplanungsmodul weiterhin konfiguriert ist zum: Analysieren von Crowd-Sourcing-Daten zum Bestimmen eines interessierenden Ereignisses; Bestimmen eines geografischen Standorts für das interessierende Ereignis unter Verwendung der Crowd-Sourcing-Daten; und Erstellen einer Bilderfassungsanforderung, die den bestimmten geografischen Standort des interessierenden Ereignisses umfasst.
- 21. Nicht vorübergehender Computerspeicher nach einer der Klauseln 17 bis 20, weiterhin umfassend ein Anzeigemodul, das zum Anzeigen des nahezu optimalen Zeitplans von Ereignissen konfiguriert ist.
- 22. Verfahren zum Planen von Ereignissen für eine Mehrzahl von Objekten, das Verfahren umfassend: unter der Steuerung eines Computergeräts in Kommunikation mit einem nicht vorübergehenden Datenspeicher, der zum Speichern von Eigenschaften entsprechend Merkmalen der Mehrzahl von Objekten konfiguriert ist: Bestimmen eines wahrscheinlichen Weges für jedes von der Mehrzahl von Objekten; Empfangen von Ereignisanforderungen und Objekteigenschaften für die Mehrzahl von Objekten; Erzeugen eines nahezu optimalen Zeitplans von Ereignissen, der keine Einschränkungen der Mehrzahl von Objekten verletzt; und Konvertieren des nahezu optimalen Zeitplans von Ereignissen in Steuerungsanweisungen zum Übertragen zu der Mehrzahl von Objekten. worin eine erste Einschränkung der Mehrzahl von Objekten eine kumulative Einschränkung und eine zweite Einschränkung der Mehrzahl von Objekten eine paarweise Einschränkung ist.
- 23. Verfahren nach Klausel 22, worin Erzeugen des nahezu optimalen Zeitplans von Ereignissen das Verwenden eines gerichteten azyklischen Graphen zum Bestimmen des nahezu optimalen Zeitplans von Ereignissen umfasst.
- 24. Verfahren nach Klausel 22, worin mindestens einige von der Mehrzahl von Objekten Bildgebungssatelliten beinhalten und die kumulative Einschränkung eine von einer Datenkapazitätsbegrenzung, einer Leistungsanforderung oder einem thermischen Wert ist.
- 25. Verfahren nach Klausel 22, worin mindestens einige von der Mehrzahl von Objekten Bildgebungssatelliten beinhalten und die paarweise Einschränkung eine Anstiegsrate von einem von den Bildgebungssatelliten ist.
- 26. Verfahren nach Klausel 22, worin mindestens einige von der Mehrzahl von Objekten eine Konstellation von Bildgebungssatelliten umfasst, und das Verfahren weiterhin umfasst: Zugreifen auf Crowd-Sourcing-Daten; Analysieren der Crowd-Sourcing-Daten zum Bestimmen eines interessierenden Ereignisses; Bestimmen eines geografischen Standorts für das interessierende Ereignis unter Verwendung der Crowd-Sourcing-Daten; Bestimmen eines Grades von Relevanz für das interessierende Ereignis; Erzeugen einer Bilderfassungsanforderung, worin die Bilderfassungsanforderung den bestimmten geografischen Standort des interessierenden Ereignisses umfasst; und Einbinden der Bilderfassungsanforderung in den Zeitplan von Ereignissen.
- 27. Verfahren nach einer der Klauseln 22 bis 26, worin das Verfahren den nahezu optimalen Zeitplan von Ereignissen nahezu in Echtzeit erzeugt.
- 28. Verfahren nach Klauseln 27, worin das Verfahren den nahezu optimalen Zeitplan von Ereignissen in weniger als etwa 10 Minuten erzeugt.
- 29. Verfahren nach Klausel 28, worin mindestens einige von der Mehrzahl von Objekten Satelliten umfassen.
- 30. Verfahren zum Verwenden von Crowd-Sourcing-Daten zur automatischen Zeitplanung eines Bilderfassungsereignisses in einer Konstellation von Bildgebungs-Mikrosatelliten, das Verfahren umfassend: Zugreifen auf Crowd-Sourcing-Daten; Analysieren der Crowd-Sourcing-Daten zum Bestimmen eines interessierenden Ereignisses; Bestimmen eines geografischen Standorts für das interessierende Ereignis unter Verwendung der Crowd-Sourcing-Daten; Bestimmen eines Grades von Relevanz für das interessierende Ereignis; Erzeugen einer Bilderfassungsanforderung, worin die Bilderfassungsanforderung (1) den bestimmten geografischen Standort des interessierenden Ereignisses und (2) eine Aufgabenpriorität mindestens teilweise basierend auf dem bestimmten Grad von Relevanz für das interessierende Ereignis umfasst; und automatisches Bereitstellen der Bilderfassungsanforderung über eine Maschine-zu-Maschine-Schnittstelle für ein Zeitplanungssystem in Zusammenhang mit der Konstellation von Bildgebungs-Mikrosatelliten, wobei das Zeitplanungssystem zum Erzeugen einer Bilderfassungsaufgabe in Zusammenhang mit dem bestimmten geografischen Standort für mindestens einen Bildgebungs-Mikrosatelliten in der Konstellation von Bildgebungs-Mikrosatelliten betreibbar ist. worin das Verfahren unter der Steuerung eines Crowd-Sourcing-Systems ausgeführt wird, das Computerhardware umfasst.
- 31. Verfahren nach Klausel 30, worin Analysieren der Crowd-Sourcing-Daten zum Bestimmen eines interessierenden Ereignisses umfasst: Erzeugen einer Liste von Begriffen aus Textdaten innerhalb der Crowd-Sourcing-Daten; Bestimmen einer Verwendungshäufigkeit in den Crowd-Sourcing-Daten für jeden Begriff in der Liste von Begriffen; Vergleichen der Häufigkeit der Verwendung für jeden Begriff in der Liste von Begriffen mit einer Basisverwendungshäufigkeit; und Identifizieren eines interessierenden Ereignisses, wenn ein ereignisbezogener Begriff in der Liste von Begriffen eine Häufigkeit aufweist, die einen Interessensschwellenwert über der Basisverwendungshäufigkeit überschreitet.
- 32. Verfahren nach Klausel 31, worin der Interessensschwellenwert mindestens 110% der Basisverwendungshäufigkeit beträgt.
- 33. Verfahren nach einer der Klauseln 30 bis 32, worin Analysieren der Crowd-Sourcing-Daten zum Bestimmen eines interessierenden Ereignisses umfasst: Suchen nach einer Liste von Schlüsselwörtern in den Crowd-Sourcing-Daten; Bestimmen einer Verwendungshäufigkeit für jedes der Schlüsselwörter in der Liste von Schlüsselwörtern in den Crowd-Sourcing-Daten; Identifizieren eines interessierenden Ereignisses, wenn die Verwendungshäufigkeit eines ereignisbezogenen Schlüsselworts einen Basisschwellenwert überschreitet.
- 34. Verfahren nach einer der Klauseln 30 bis 33, worin Bestimmen des geografischen Standorts des interessierenden Ereignisses unter Verwendung der Crowd-Sourcing-Daten Identifizieren statistisch bedeutender Anomalien in geografischen Tagging-Trends umfasst.
- 35. Verfahren nach einer der Klauseln 30 bis 34, worin Bestimmen des Grades von Relevanz für das interessierende Ereignis Verwendung von Sentiment-Analyse zum Bewerten einer relativen Bedeutung des interessierenden Ereignisses umfasst.
- 36. Verfahren nach einer der Klauseln 30 bis 35, worin das Verfahren nahezu in Echtzeit zum Erzeugen der Bilderfassungsanforderung ausgeführt wird.
- 37. Verfahren nach einer der Klauseln 30 bis 36, worin auf die Crowd-Sourcing-Daten auf regelmäßiger Basis zugegriffen wird, und diese automatisch ohne intervenierende Eingabe von einem Benutzer analysiert werden.
- 38. Verfahren nach einer der Klauseln 30 bis 37, worin das interessierende Ereignis eine Umweltkatastrophe, eine politische Revolution, soziale Unruhen oder ein Ereignis ist, das eine soziokulturelle Auswirkung auf eine Community ausübt.
- 39. Verfahren nach einer der Klauseln 30 bis 38, worin das Zeitplanungssystem einen gerichteten azyklischen Graphen zum Erzeugen der Bilderfassungsaufgabe verwendet.
- 40. System zum Verwenden von Crowd-Sourcing-Daten zum automatischen Erzeugen einer Bilderfassungsanforderung für ein Satellitenzeitplanungssystem, das System umfassend: ein Computergerät; eine Netzwerkeingabe-/-ausgabevorrichtung, die zum Abrufen von Crowd-Sourcing-Daten von einer oder mehreren Datenquellen über ein Netzwerk konfiguriert ist; Crowd-Sourcing-Datenanalysemodul, das zum Verwenden des Computergeräts konfiguriert ist zum: Analysieren der Crowd-Sourcing-Daten zum Bestimmen eines interessierenden Ereignisses; Bestimmen eines geografischen Standorts für das interessierende Ereignis unter Verwendung der Crowd-Sourcing-Daten; und Erstellen einer Bilderfassungsanforderung, die den bestimmten geografischen Standort des interessierenden Ereignisses und eine Aufgabenpriorität umfasst; und eine Maschine-zu-Maschine-Schnittstelle, die zum automatischen Bereitstellen der Bilderfassungsanforderung für das Satellitenzeitplanungssystem konfiguriert ist.
- 41. System nach Klausel 40, worin das Crowd-Sourcing-Datenanalysemodul zum Bestimmen des geografischen Standorts durch Identifizieren statistisch bedeutender Anomalien in geografischen Tagging-Trends konfiguriert ist.
- 42. System nach einer der Klauseln 40 oder 41, worin das Crowd-Sourcing-Datenanalysemodul zum Bestimmen des Grades von Relevanz unter Verwendung von Sentiment-Analyse zum Bewerten einer relativen Bedeutung des interessierenden Ereignisses konfiguriert ist.
- 43. System nach einer der Klauseln 40 oder 42, worin die Bilderfassungsanforderung nahezu in Echtzeit erstellt wird.
- 44. System nach einer der Klauseln 40 bis 43, worin auf die Crowd-Sourcing-Daten auf regelmäßiger Basis zugegriffen wird, und diese automatisch ohne intervenierende Eingabe von einem Benutzer analysiert werden.
- 45. System für die Zeitplanung von Ereignissen für Bildgebungssatelliten, das System umfassend: einen nicht vorübergehenden Datenspeicher, der zum Speichern von Crowd-Sourcing-Daten in Zusammenhang mit Ereignissen konfiguriert ist; und ein physisches Computersystem in Kommunikation mit dem nicht vorübergehenden Datenspeicher, wobei das physische Computersystem konfiguriert ist zum: Analysieren der Crowd-Sourcing-Daten für Trends, die eines oder mehrere sozial bedeutende Ereignisse angeben; Bestimmen eines geografischen Standorts für jedes von den sozial bedeutenden Ereignissen; Bestimmen eines Grades von Relevanz für jedes von den sozial bedeutenden Ereignissen; Erstellen einer Bilderfassungsaufgabe, worin die Bilderfassungsaufgabe mindestens (1) den bestimmten geografischen Standort entsprechend einem oder mehreren von den sozial bedeutenden Ereignissen, und (2) eine Aufgabenpriorität mindestens teilweise basierend auf dem bestimmten Grad von Relevanz für das eine oder die mehreren sozial bedeutenden Ereignisse umfasst; und Bereitstellen der Bilderfassungsaufgabe für ein Zeitplanungssystem in Zusammenhang mit den Bildgebungssatelliten, wobei das Zeitplanungssystem zum Erzeugen eines Zeitplans von Aufgaben für die Bildgebungssatelliten betreibbar ist, der mindestens die Bilderfassungsaufgabe beinhaltet.
- 46. System nach Klausel 45, weiterhin umfassend eine Maschine-zu-Maschine-Schnittstelle, die zum Übermitteln der Bilderfassungsaufgabe zu dem Zeitplanungssystem konfiguriert ist.
- 47. System nach einer der Klauseln 45 oder 46, worin das Zeitplanungssystem zum Verwenden eines gerichteten azyklischen Graphen zum Erzeugen des nahezu optimalen Zeitplans von Aufgaben konfiguriert ist.
- 48. System nach Klausel 47, worin mindestens ein Ereignis derart beschaffen ist, dass alle annehmbaren Wege durch den gerichteten azyklischen Graphen durch das Ereignis hindurchgehen.
- 49. System nach einer der Klauseln 47 oder 48, worin das Zeitplanungssystem den Zeitplan von Aufgaben vorbehaltlich paarweiser Einschränkungen und kumulativer Einschränkungen erzeugt.
- 50. System nach Klausel 49, worin die kumulativen Einschränkungen eine von einer Datenkapazitätsbegrenzung, einer Leistungsanforderung oder einem thermischen Wert beinhalten.
- 51. System nach Klausel 49, worin die paarweisen Einschränkungen eine Anstiegsrate von einem der Bildgebungssatelliten beinhalten.
- 52. System nach einer der Klauseln 45 bis 51, worin das physische Computersystem zum Erstellen der Bilderfassungsanforderung nahezu in Echtzeit konfiguriert ist.
- 53. System nach einer der Klauseln 45 bis 52, worin die Crowd-Sourcing-Daten auf regelmäßiger Basis automatisch ohne intervenierende Eingabe von einem Benutzer analysiert werden.
- 54. Verfahren zum Erzeugen einer Bilderfassungsanforderung, wobei das Verfahren unter der Steuerung eines Crowd-Sourcing-Systems ausgeführt wird, das Computerhardware umfasst, die einen oder mehrere physische Prozessoren beinhaltet, das Verfahren umfassend: Analysieren von Crowd-Sourcing-Daten zum Bestimmen eines Standorts eines interessierenden Ereignisses; Einstufen des interessierenden Ereignisses; Erzeugen einer Bilderfassungsanforderung, umfassend den bestimmten Standort und das Einstufen des interessierenden Ereignisses; und Bereitstellen der Bilderfassungsanforderung über eine Maschine-zu-Maschine-Schnittstelle für ein Zeitplanungssystem. worin das interessierende Ereignis bestimmt, und die Bilderfassungsanforderung für das Zeitplanungssystem ohne intervenierende Eingabe von einem Benutzer bereitgestellt wird.
- 55. Verfahren nach Klausel 54, worin das interessierende Ereignis ein politisches Ereignis, ein soziales Ereignis, ein Umweltereignis, ein astronomisches Ereignis oder ein soziokulturelles Ereignis ist, das eine Auswirkung auf eine Community ausübt.
- 56. Verfahren nach einer der Klauseln 54 oder 55, worin die Crowd-Sourcing-Daten mindestens Daten umfassen, die durch einen oder mehrere Benutzer eines sozialen Netzwerks erzeugt werden, Daten, die von einem oder mehreren Benutzern eines Webdienstes erzeugt werden, in einem Web-Blog veröffentlichte Daten oder Daten, die auf einer Online-Nachrichtenwebsite veröffentlicht werden.
- ZITATE ENTHALTEN IN DER BESCHREIBUNG
- Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
- Zitierte Nicht-Patentliteratur
-
- E. W. Dijkstra, „A Note on Two Problems in Connexion with Graphs” (Ein Hinweis auf zwei Probleme in Verbindung mit Graphen) Numerische Mathematik, Band. 1, Nr. 1, Seiten 269–271 (1959) [0069]
Claims (6)
- System zum Verwenden von Crowd-Sourcing-Daten zum automatischen Erzeugen einer Bilderfassungsanforderung für ein Satellitenzeitplanungssystem, das System umfassend: ein Computergerät; eine Netzwerkeingabe-/-ausgabevorrichtung, die zum Abrufen von Crowd-Sourcing-Daten von einer oder mehreren Datenquellen über ein Netzwerk konfiguriert ist; Crowd-Sourcing-Datenanalysemodul, das zum Verwenden des Computergeräts konfiguriert ist zum: Analysieren der Crowd-Sourcing-Daten zum Bestimmen eines interessierenden Ereignisses; Bestimmen eines geografischen Standorts für das interessierende Ereignis unter Verwendung der Crowd-Sourcing-Daten; und Erstellen einer Bilderfassungsanforderung, die den bestimmten geografischen Standort des interessierenden Ereignisses und eine Aufgabenpriorität umfasst; und eine Maschine-zu-Maschine-Schnittstelle, die zum automatischen Bereitstellen der Bilderfassungsanforderung für das Satellitenzeitplanungssystem konfiguriert ist.
- System für die Zeitplanung von Ereignissen für Bildgebungssatelliten, das System umfassend: einen nicht vorübergehenden Datenspeicher, der zum Speichern von Crowd-Sourcing-Daten in Zusammenhang mit Ereignissen konfiguriert ist; und ein physisches Computersystem in Kommunikation mit dem nicht vorübergehenden Datenspeicher, wobei das physische Computersystem konfiguriert ist zum: Analysieren der Crowd-Sourcing-Daten für Trends, die eines oder mehrere sozial bedeutende Ereignisse angeben; Bestimmen eines geografischen Standorts für jedes von den sozial bedeutenden Ereignissen; Bestimmen eines Grades von Relevanz für jedes von den sozial bedeutenden Ereignissen; Erstellen einer Bilderfassungsaufgabe, worin die Bilderfassungsaufgabe mindestens (1) den bestimmten geografischen Standort entsprechend einem oder mehreren von den sozial bedeutenden Ereignissen, und (2) eine Aufgabenpriorität mindestens teilweise basierend auf dem bestimmten Grad von Relevanz für das eine oder die mehreren sozial bedeutenden Ereignisse umfasst; und Bereitstellen der Bilderfassungsaufgabe für ein Zeitplanungssystem in Zusammenhang mit den Bildgebungssatelliten, wobei das Zeitplanungssystem zum Erzeugen eines Zeitplans von Aufgaben für die Bildgebungssatelliten betreibbar ist, der mindestens die Bilderfassungsaufgabe beinhaltet.
- System nach Anspruch 2, worin das physische Computersystem zum Erstellen der Bilderfassungsanforderung nahezu in Echtzeit konfiguriert ist.
- System nach Anspruch 2, worin die Crowd-Sourcing-Daten auf regelmäßiger Basis automatisch ohne intervenierende Eingabe von einem Benutzer analysiert werden.
- System nach Anspruch 2, worin die Crowd-Sourcing-Daten mindestens Daten umfassen, die durch einen oder mehrere Benutzer eines sozialen Netzwerks erzeugt werden, Daten, die von einem oder mehreren Benutzern eines Webdienstes erzeugt werden, in einem Web-Blog veröffentlichte Daten oder Daten, die auf einer Online-Nachrichtenwebsite veröffentlicht werden.
- System nach Anspruch 2, worin der nicht vorübergehende Datenspeicher weiterhin zum Speichern von Satelliteneigenschaftsinformationen entsprechend Merkmalen einer Mehrzahl von Bildgebungssatelliten in einer Konstellation von Bildgebungssatelliten konfiguriert ist, und das physische Computersystem weiterhin konfiguriert ist zum: Identifizieren von einem oder mehreren Bildgebungssatelliten in der Konstellation von Bildgebungssatelliten, der/die über einem Bereich positioniert wird/werden, der/die geeignet ist/sind, um die Bilderfassungsaufgabe auszuführen; Empfangen von Aufgabenanforderungen und Satelliteneigenschaftsinformationen, und Erzeugen eines nahezu optimalen Zeitplans von Aufgaben, der Einschränkungen der Konstellation von Bildgebungssatelliten nicht verletzt, wobei die Aufgabenanforderungen die Bilderfassungsaufgabe beinhalten; und Konvertieren des nahezu optimalen Zeitplans von Aufgaben in Steuerungsanweisungen zum Übertragen zu dem identifizierten einen oder mehreren Bildgebungssatelliten in der Konstellation von Bildgebungssatelliten.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261679581P | 2012-08-03 | 2012-08-03 | |
US201261679581P | 2012-08-03 | ||
US201261682047P | 2012-08-10 | 2012-08-10 | |
US201261682047P | 2012-08-10 |
Publications (1)
Publication Number | Publication Date |
---|---|
DE202013012472U1 true DE202013012472U1 (de) | 2017-01-13 |
Family
ID=49083735
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE202013012472.5U Expired - Lifetime DE202013012472U1 (de) | 2012-08-03 | 2013-08-02 | Satellitenplanungssystem |
Country Status (5)
Country | Link |
---|---|
US (3) | US8977619B2 (de) |
EP (2) | EP3070001B1 (de) |
CN (2) | CN104885104B (de) |
DE (1) | DE202013012472U1 (de) |
WO (1) | WO2014022810A2 (de) |
Families Citing this family (105)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8300798B1 (en) | 2006-04-03 | 2012-10-30 | Wai Wu | Intelligent communication routing system and method |
US9375115B2 (en) | 2009-02-26 | 2016-06-28 | Safeway Safety Step Llc | Bathtub overlay |
WO2012106339A2 (en) | 2011-01-31 | 2012-08-09 | Safeway Safety Step, Llc | Bathtub insert for retrofit installation |
CN104885104B (zh) | 2012-08-03 | 2018-05-22 | 泰拉贝拉技术公司 | 卫星调度系统 |
US20140067486A1 (en) * | 2012-08-29 | 2014-03-06 | International Business Machines Corporation | Systems, methods, and computer program products for prioritizing information |
US20140136451A1 (en) * | 2012-11-09 | 2014-05-15 | Apple Inc. | Determining Preferential Device Behavior |
US9639610B1 (en) * | 2013-08-05 | 2017-05-02 | Hrl Laboratories, Llc | Method for gauging public interest in a topic using network analysis of online discussions |
US9838486B2 (en) | 2013-09-12 | 2017-12-05 | International Business Machines Corporation | Checking documents for spelling and/or grammatical errors and/or providing recommended words or phrases based on patterns of colloquialisms used among users in a social network |
US20150186953A1 (en) | 2013-09-27 | 2015-07-02 | John Nicholas And Kristin Gross Trust U/A/D April 13, 2010 | Automated Tool for Property Assessment, Prospecting, and Targeted Marketing |
US10762458B1 (en) * | 2013-10-24 | 2020-09-01 | Planet Labs, Inc. | Satellite scheduling system |
US9936346B2 (en) * | 2013-11-28 | 2018-04-03 | Microsoft Technology Licensing, Llc | Geofences from context and crowd-sourcing |
US10136251B2 (en) | 2013-11-28 | 2018-11-20 | Microsoft Technology Licensing, Llc | Geofence compositions |
US9738403B1 (en) | 2013-12-30 | 2017-08-22 | Terra Bella Technologies Inc. | Parallel calculation of satellite access windows and native program implementation framework |
US10325295B1 (en) | 2013-12-30 | 2019-06-18 | Planet Labs, Inc. | Pricing of imagery and collection priority weighting |
US20150254738A1 (en) * | 2014-03-05 | 2015-09-10 | TerrAvion, LLC | Systems and methods for aerial imaging and analysis |
US20150335206A1 (en) | 2014-04-28 | 2015-11-26 | Safeway Safety Step, Llc | Bathtub systems and methods |
IL239237B (en) * | 2014-06-05 | 2018-12-31 | Rotem Efrat | Network document extension |
CN104168420B (zh) * | 2014-07-24 | 2016-10-19 | 努比亚技术有限公司 | 移动终端的拍摄方法及移动终端 |
US9647749B2 (en) * | 2014-09-30 | 2017-05-09 | Google Inc. | Satellite constellation |
US9664726B2 (en) | 2014-10-15 | 2017-05-30 | Spire Global, Inc. | Satellite communication system |
EP3259714A4 (de) * | 2015-02-16 | 2018-08-01 | Optibus Ltd | System und verfahren zur transportterminierung und -planung |
US9919814B2 (en) | 2015-02-26 | 2018-03-20 | Spire Global, Inc. | System and method for power distribution in a autonomous modular system |
US9830297B2 (en) | 2015-02-26 | 2017-11-28 | Spire Global, Inc. | Processor system for control of modular autonomous system |
WO2016170767A1 (ja) * | 2015-04-20 | 2016-10-27 | 日本電気株式会社 | 群集誘導装置、群集誘導システム、群集誘導方法、および、記憶媒体 |
CN104869017B (zh) * | 2015-04-30 | 2017-05-31 | 北京空间飞行器总体设计部 | 一种基于核度积的卫星信息系统拓扑结构优化方法 |
WO2016184521A1 (en) * | 2015-05-20 | 2016-11-24 | Nec Europe Ltd. | Method for providing locations for performing tasks of moving objects |
FR3039728B1 (fr) * | 2015-07-28 | 2017-10-27 | Airbus Defence & Space Sas | Procede de planification d'acquisition d'images de zones terrestres par un engin spatial |
US10346446B2 (en) * | 2015-11-02 | 2019-07-09 | Radiant Geospatial Solutions Llc | System and method for aggregating multi-source data and identifying geographic areas for data acquisition |
EP3380400B1 (de) * | 2015-11-27 | 2021-02-17 | Telesat Canada | Satellitensystem und verfahren für globale abdeckung |
FR3045990B1 (fr) * | 2015-12-18 | 2018-02-02 | Airbus Defence And Space Sas | Procede et systeme d'acquisition d'images par une constellation de satellites d'observation |
US10054686B2 (en) | 2015-12-31 | 2018-08-21 | Spire Global, Inc. | System and method for remote satellite and ground station constellation management |
USD790047S1 (en) | 2016-01-19 | 2017-06-20 | Safeway Safety Step, Llc | Bathtub closure |
US10111560B2 (en) | 2016-01-19 | 2018-10-30 | Safeway Safety Step, Llc | Vertical bathtub closure systems and methods |
JP2019513315A (ja) * | 2016-02-29 | 2019-05-23 | ウルグス ソシエダード アノニマ | 惑星規模解析のためのシステム |
US10684347B2 (en) * | 2016-03-08 | 2020-06-16 | Aurora Insight Inc. | Systems and methods for measuring terrestrial spectrum from space |
US10114149B2 (en) | 2016-06-03 | 2018-10-30 | International Business Machines Corporation | Cloud coverage estimation by dynamic scheduling of a distributed set of cameras |
US9651946B1 (en) * | 2016-06-29 | 2017-05-16 | Planet Labs Inc. | Automated schedule calculation for controlling a constellation of satellites |
US10368251B1 (en) * | 2016-07-25 | 2019-07-30 | SpaceWorks Enterprises, Inc. | Satellites and satellite-based systems for ground-to-space short-burst data communications |
US10764077B2 (en) * | 2016-07-26 | 2020-09-01 | RAM Laboratories, Inc. | Crowd-sourced event identification that maintains source privacy |
CN106371448B (zh) * | 2016-08-04 | 2018-12-18 | 北京空间飞行器总体设计部 | 一种基于动作优化的成像卫星自主指令生成方法 |
US9722692B1 (en) * | 2016-10-19 | 2017-08-01 | Vector Launch Inc. | Statefulness among clustered satellite platforms |
US10805001B2 (en) | 2016-10-19 | 2020-10-13 | Lockheed Martin Corporation | State transfer among spaceborne and airborne devices |
US10530468B2 (en) | 2016-10-19 | 2020-01-07 | Vector Launch Inc. | State transfer among virtualized nodes in spaceborne or airborne systems |
US9641238B1 (en) | 2016-10-19 | 2017-05-02 | Vector Launch Inc. | Virtualization-enabled satellite platforms |
US11036552B2 (en) | 2016-10-25 | 2021-06-15 | International Business Machines Corporation | Cognitive scheduler |
CN106529826B (zh) * | 2016-11-30 | 2017-10-03 | 中国电子科技集团公司第五十四研究所 | 一种基于超启发式算法的多星对地观测任务规划调度方法 |
CN107291090B (zh) * | 2017-05-12 | 2020-05-12 | 北京空间飞行器总体设计部 | 一种基于关键路径优化的连续成像控制方法 |
US10552161B2 (en) * | 2017-06-21 | 2020-02-04 | International Business Machines Corporation | Cluster graphical processing unit (GPU) resource sharing efficiency by directed acyclic graph (DAG) generation |
CN107370535B (zh) * | 2017-06-26 | 2019-11-29 | 航天东方红卫星有限公司 | 基于微小卫星系统的天地一体化及时响应信息获取方法 |
US10069935B1 (en) | 2017-07-19 | 2018-09-04 | Vector Launch Inc. | Role-specialization in clustered satellite platforms |
US9819742B1 (en) | 2017-07-19 | 2017-11-14 | Vector Launch Inc. | Bandwidth aware state transfer among satellite devices |
US10757027B2 (en) | 2017-07-19 | 2020-08-25 | Lockheed Martin Corporation | Quality of service management in a satellite platform |
US9998207B1 (en) | 2017-07-19 | 2018-06-12 | Vector Launch Inc. | Orbital network layering in satellite platforms |
US9960837B1 (en) | 2017-07-19 | 2018-05-01 | Vector Launch Inc. | Pseudo-geosynchronous configurations in satellite platforms |
US10491710B2 (en) | 2017-07-19 | 2019-11-26 | Vector Launch Inc. | Role-specialization in spaceborne and airborne computing platforms |
US10271236B1 (en) | 2017-09-29 | 2019-04-23 | At&T Intellectual Property I, L.P. | Collection of crowd-sourced access point data for 5G or other next generation network |
US10382995B2 (en) | 2017-09-29 | 2019-08-13 | At&T Intellectual Property I, L.P. | Utilization of crowd-sourced access point data for 5G or other next generation network |
US10231134B1 (en) | 2017-09-29 | 2019-03-12 | At&T Intellectual Property I, L.P. | Network planning based on crowd-sourced access point data for 5G or other next generation network |
US10474976B2 (en) * | 2017-10-20 | 2019-11-12 | HawkEye 360, Inc. | Hierarchical satellite task scheduling system |
KR102024305B1 (ko) * | 2017-11-15 | 2019-09-23 | 성균관대학교산학협력단 | 드론 네트워크 환경에서의 서비스 영역 스케줄링 방법 및 장치 |
CN108333922B (zh) * | 2017-12-26 | 2021-02-02 | 佛山科学技术学院 | 一种基于智能优化与约束推理的单星自主任务规划方法 |
CN108335012A (zh) * | 2017-12-26 | 2018-07-27 | 佛山科学技术学院 | 一种智能遥感卫星层次化分布式自主协同任务规划系统 |
US10749959B2 (en) | 2018-02-09 | 2020-08-18 | Lockheed Martin Corporation | Distributed storage management in a spaceborne or airborne environment |
US10630378B2 (en) | 2018-02-09 | 2020-04-21 | Lockheed Martin Corporation | Bandwidth optimizing range adjustments among satellites |
CN108449129B (zh) * | 2018-03-09 | 2021-03-26 | 北京空间机电研究所 | 一种全球多目标全天时实时监测系统及方法 |
EP3766191A4 (de) * | 2018-03-16 | 2021-11-24 | Lockheed Martin Corporation | Auswahl des dienstgütegrades für peer-satellitenkommunikation |
CN108846504B (zh) * | 2018-05-25 | 2020-10-23 | 北京控制工程研究所 | 一种超敏捷卫星区域多点目标任务优化方法及系统 |
WO2020028098A1 (en) * | 2018-07-31 | 2020-02-06 | Loft Orbital Solutions Inc. | System and method for providing spacecraft-based services |
US11561251B2 (en) * | 2018-08-01 | 2023-01-24 | Florida Power & Light Company | Remote autonomous inspection of utility system components utilizing drones and rovers |
US10769419B2 (en) * | 2018-09-17 | 2020-09-08 | International Business Machines Corporation | Disruptor mitigation |
US11853055B2 (en) * | 2018-10-17 | 2023-12-26 | Hyundai Motor Company | Vehicle, server, control method of vehicle and control method of server |
CN109684443B (zh) * | 2018-11-01 | 2020-11-24 | 百度在线网络技术(北京)有限公司 | 智能交互方法和装置 |
CN113179122B (zh) * | 2018-11-07 | 2022-07-29 | 长沙天仪空间科技研究院有限公司 | 一种卫星调度系统 |
FR3092565B1 (fr) * | 2019-02-08 | 2021-08-27 | Airbus Defence & Space Sas | Systèmes informatiques pour l’acquisition d’images satellitaires avec prise en compte de l’incertitude météorologique |
CN109960268B (zh) * | 2019-03-29 | 2021-12-07 | 航天恒星科技有限公司 | 面向遥感卫星接收站的异构设备资源动态调度方法及系统 |
CN110113212B (zh) * | 2019-05-16 | 2020-10-13 | 中南大学 | 一种适于断点续传的中继卫星单址天线调度方法 |
EP3983297A4 (de) * | 2019-06-17 | 2023-06-21 | The Board Of Trustees Of The University Of Illinois | Multifunktionsstrukturen zur lageregelung |
CN112307360B (zh) * | 2019-07-30 | 2023-08-25 | 百度在线网络技术(北京)有限公司 | 基于搜索引擎的区域性事件检测方法、装置和搜索引擎 |
US10979137B2 (en) | 2019-08-01 | 2021-04-13 | Planet Labs, Inc. | Multi-pathway satellite communication systems and methods |
US11463158B2 (en) * | 2019-08-01 | 2022-10-04 | Planet Labs Pbc | Multi-pathway satellite communication systems and methods |
CN110705775B (zh) * | 2019-09-27 | 2022-04-01 | 中国电子科技集团公司第五十四研究所 | 一种面向应急任务的星地资源快速配置方法 |
US11188853B2 (en) * | 2019-09-30 | 2021-11-30 | The Travelers Indemnity Company | Systems and methods for artificial intelligence (AI) damage triage and dynamic resource allocation, routing, and scheduling |
CN110717673B (zh) * | 2019-10-10 | 2022-04-01 | 合肥工业大学 | 一种资源充足情形下最小观测成本的卫星任务规划方法 |
CN111027801B (zh) * | 2019-10-29 | 2023-04-07 | 合肥工业大学 | 基于任务邀请的卫星筛选方法和系统 |
CN111130629B (zh) * | 2019-12-27 | 2020-09-18 | 成都星时代宇航科技有限公司 | 多终端遥感卫星控制方法、装置及可读存储介质 |
US20220411109A1 (en) * | 2020-03-25 | 2022-12-29 | Nec Corporation | Information processing device, information processing method, and computer-readablestorage medium |
CN111460822B (zh) * | 2020-03-27 | 2024-02-27 | 北京百度网讯科技有限公司 | 主题扩展的方法、装置、设备和存储介质 |
US11228362B2 (en) | 2020-04-17 | 2022-01-18 | Raytheon Company | System and method for satellite constellation management and scheduling |
US20230178896A1 (en) * | 2020-05-01 | 2023-06-08 | Fleet Space Technologies Pty Ltd | Antenna and antenna systems for leo satellite communication |
CN112036459B (zh) * | 2020-08-24 | 2023-12-22 | 中南大学 | 基于k-means聚类算法的卫星任务归并方法、装置及存储介质 |
CA3194289A1 (en) * | 2020-09-29 | 2022-04-07 | Kiruthika DEVARAJ | Multi-pathway satellite communication systems and methods |
US11958634B2 (en) * | 2020-11-04 | 2024-04-16 | Spire Global Subsidiary, Inc. | Optimization system of heterogeneous low earth orbit multi-use spacecraft |
CN112866028B (zh) * | 2021-01-20 | 2022-07-12 | 重庆邮电大学 | 有线无线融合的卫星时间敏感网络时隙分配方法 |
CN113269386B (zh) * | 2021-03-02 | 2023-09-26 | 北京市遥感信息研究院 | 基于合成策略的成像卫星应急任务规划方法和系统 |
CN113269385B (zh) * | 2021-03-02 | 2023-10-24 | 北京市遥感信息研究院 | 面向敏捷卫星资源的应急调度方法和系统 |
CN113038530B (zh) * | 2021-03-22 | 2021-09-28 | 军事科学院系统工程研究院网络信息研究所 | 卫星移动通信系统QoS保障的分组业务高效传输方法 |
GB2611316B (en) * | 2021-09-29 | 2023-10-11 | Iceye Oy | Earth monitoring system and method of managing a satellite constellation |
US11531943B1 (en) * | 2021-11-18 | 2022-12-20 | Slate Technologies Inc. | Intelligence driven method and system for multi-factor optimization of schedules and resource recommendations for smart construction |
CN114189272B (zh) * | 2021-11-18 | 2024-01-16 | 北京微纳星空科技有限公司 | 一种微小卫星的综合测试系统 |
CN114604443B (zh) * | 2022-02-17 | 2023-06-06 | 中国电子科技集团公司第十研究所 | 一种真实复杂约束条件下的多星测控调度方法及系统 |
US11868686B2 (en) | 2022-03-04 | 2024-01-09 | Slate Technologies Inc. | System and method for manufacture and customization of construction assemblies in a computing environment |
US11907885B1 (en) | 2022-03-29 | 2024-02-20 | Slate Technologies Inc. | System and method for computational simulation and augmented/virtual reality in a construction environment |
US20230336696A1 (en) * | 2022-04-15 | 2023-10-19 | Microsoft Technology Licensing, Llc | Ground sensor-triggered satellite image capture |
EP4354760A1 (de) * | 2022-10-07 | 2024-04-17 | Tata Consultancy Services Limited | Randomisierungsbasierte redundante sammlungsaufgabenplanung zur minderung von okklusionen bei der erfassung durch kleine satellitenkonstellationen |
CN115535297B (zh) * | 2022-11-30 | 2023-03-28 | 南京航空航天大学 | 一种卫星星座在轨分布式协同调度方法 |
Family Cites Families (51)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5785279A (en) | 1996-01-19 | 1998-07-28 | Itt Defense, Inc. | Satellite exclusion zone viewing and control system |
US5987363A (en) | 1996-03-26 | 1999-11-16 | California Institute Of Technology | Three-dimensional representation of a spacecraft's trajectory |
US5911389A (en) | 1996-12-20 | 1999-06-15 | Lockheed Martin Corp. | Wave based satellite constellation |
US5978653A (en) | 1997-05-02 | 1999-11-02 | Motorola, Inc. | Method and apparatus for providing additional resources in a satellite communication system |
JP2000111359A (ja) | 1998-10-05 | 2000-04-18 | Hitachi Ltd | 地球観測システム |
DE19845911A1 (de) * | 1998-10-06 | 2000-04-13 | Sel Verteidigungssysteme Gmbh | Satellitengestütztes Verteidigungssystem und Verfahren zur satellitengestützten Verteidigung |
US6738346B1 (en) | 1999-03-16 | 2004-05-18 | Northrop Grumman Corporation | Hierarchical downlink scheduler for a processed satellite payload |
JP2000315972A (ja) | 1999-05-06 | 2000-11-14 | Nec Corp | 衛星通信システム及びそのハンドオーバ処理方法 |
US6271877B1 (en) | 1999-06-25 | 2001-08-07 | Astrovision, Inc. | Direct broadcast imaging satellite system apparatus and method for providing real-time, continuous monitoring of earth from geostationary earth orbit |
US6491257B1 (en) | 1999-10-13 | 2002-12-10 | Motorola, Inc. | Technique for satellite constellation growth |
US7002918B1 (en) | 2000-05-22 | 2006-02-21 | Northrop Grumman Corporation | Method and apparatus for real time scheduling in a satellite communications network |
US6606529B1 (en) | 2000-06-09 | 2003-08-12 | Frontier Technologies, Inc. | Complex scheduling method and device |
US6502790B1 (en) | 2001-11-20 | 2003-01-07 | Northrop Grumman Corporation | Inclined non-uniform planar spaced constellation of satellites |
KR100536097B1 (ko) | 2002-11-28 | 2005-12-12 | 한국전자통신연구원 | 저궤도 위성 명령계획 장치와 그 방법 및 이를 포함하는저궤도 위성 관제 시스템 |
US20040158832A1 (en) * | 2003-01-28 | 2004-08-12 | Gal Chechik | Method and system for scheduling image acquistion events based on dynamic programming |
US7406199B2 (en) * | 2004-05-12 | 2008-07-29 | Northrop Grumman Corporation | Event capture and filtering system |
US20100114702A1 (en) * | 2006-09-13 | 2010-05-06 | Arthur Wu | Ask/respond affinity group referral method and apparatus |
US20080255908A1 (en) * | 2007-04-13 | 2008-10-16 | Smith Gary S | Generic framework for resource modeling |
FR2920615B1 (fr) | 2007-08-31 | 2011-01-28 | Centre Nat Etd Spatiales | Instrument d'acquisition et de distribution d'images d'observation terrestre a haute resolution spatiale et temporelle |
US8180657B2 (en) | 2007-12-31 | 2012-05-15 | International Business Machines Corporation | System and method for event slot negotiation |
RU2492575C2 (ru) | 2008-08-28 | 2013-09-10 | Сентр Насьональ Д'Этюд Спатьяль (Снес) | Сеть наземных станций для приема и хранения спутниковых данных |
US20100070335A1 (en) * | 2008-09-18 | 2010-03-18 | Rajesh Parekh | Method and System for Targeting Online Ads Using Social Neighborhoods of a Social Network |
US7974983B2 (en) | 2008-11-13 | 2011-07-05 | Buzzient, Inc. | Website network and advertisement analysis using analytic measurement of online social media content |
US9132925B2 (en) | 2009-02-19 | 2015-09-15 | C. Laurence Korb | Methods for optimizing the performance, cost and constellation design of satellites for full and partial earth coverage |
CN201465170U (zh) * | 2009-05-19 | 2010-05-12 | 江苏克蒂纳信息技术有限公司 | 提供第三方认证的食品安全追溯系统 |
US8558899B2 (en) | 2009-11-16 | 2013-10-15 | The Aerospace Corporation | System and method for super-resolution digital time delay and integrate (TDI) image processing |
US9654202B2 (en) | 2010-01-15 | 2017-05-16 | Harris Corporation | Satellite resource reservation and demand based pricing for satellite data broadcast services |
EP2529183A4 (de) | 2010-01-25 | 2014-03-12 | Tarik Ozkul | Autonomes entscheidungssystem zur zielauswahl in beobachtungssatelliten |
CN101794432A (zh) * | 2010-02-05 | 2010-08-04 | 民政部国家减灾中心 | 灾情信息采集与支持方法及系统 |
US8218476B2 (en) | 2010-05-02 | 2012-07-10 | Viasat, Inc. | Flexible capacity satellite communications system with dynamic distribution and coverage areas |
CN101894367A (zh) * | 2010-05-26 | 2010-11-24 | 中国人民解放军国防科学技术大学 | 成像卫星观测调度的目标聚类方法 |
JP5538090B2 (ja) * | 2010-06-23 | 2014-07-02 | 株式会社ジャパンディスプレイ | ガラスカッター |
US20120029812A1 (en) * | 2010-07-29 | 2012-02-02 | King Abdul Aziz City For Science And Technology | Method and system for automatically planning and scheduling a remote sensing satellite mission |
US20120036085A1 (en) | 2010-08-05 | 2012-02-09 | Accenture Global Services Gmbh | Social media variable analytical system |
US9886727B2 (en) * | 2010-11-11 | 2018-02-06 | Ikorongo Technology, LLC | Automatic check-ins and status updates |
US8937886B2 (en) | 2010-12-17 | 2015-01-20 | Cisco Technology, Inc. | Dynamic reroute scheduling in a directed acyclic graph (DAG) |
US9536269B2 (en) * | 2011-01-19 | 2017-01-03 | 24/7 Customer, Inc. | Method and apparatus for analyzing and applying data related to customer interactions with social media |
US8631416B2 (en) | 2011-03-31 | 2014-01-14 | Verisign, Inc. | Parallelizing scheduler for database commands |
CN102322850B (zh) | 2011-05-18 | 2012-12-26 | 航天东方红卫星有限公司 | 一种基于成像质量预估的任务预处理方法 |
CN102354288B (zh) | 2011-06-22 | 2013-01-23 | 航天东方红卫星有限公司 | 一种成像质量优先的任务调度方法 |
US9067693B2 (en) | 2011-07-26 | 2015-06-30 | Lawrence Livermore National Security, Llc | Monitoring objects orbiting earth using satellite-based telescopes |
WO2013032823A1 (en) * | 2011-08-26 | 2013-03-07 | Skybox Imaging, Inc. | Adaptive image acquisition and processing with image analysis feedback |
US10013136B2 (en) * | 2011-09-29 | 2018-07-03 | Michael L Bachman | User interface, method and system for crowdsourcing event notification sharing using mobile devices |
US20130086072A1 (en) | 2011-10-03 | 2013-04-04 | Xerox Corporation | Method and system for extracting and classifying geolocation information utilizing electronic social media |
CN102594433B (zh) * | 2011-12-14 | 2014-05-14 | 大连大学 | 一种卫星网络多对一通信冲突的动态优先级调度方法 |
EP2664989A1 (de) | 2012-05-14 | 2013-11-20 | Alcatel-Lucent | Aufgabenplanung |
US20140027576A1 (en) | 2012-07-25 | 2014-01-30 | Planet Labs Inc. | Earth Observation Constellation Methodology & Applications |
CN104885104B (zh) | 2012-08-03 | 2018-05-22 | 泰拉贝拉技术公司 | 卫星调度系统 |
CN102867107B (zh) | 2012-08-16 | 2015-05-13 | 中国人民解放军国防科学技术大学 | 一种多成像卫星应急任务动态调度方法 |
US9661601B2 (en) * | 2012-12-13 | 2017-05-23 | Qualcomm Incorporated | Crowdsourcing information in a communication network using small cells |
CN103336715B (zh) | 2013-07-03 | 2016-04-27 | 邢立宁 | 基于本体的成像卫星调度问题模型构建方法 |
-
2013
- 2013-08-02 CN CN201380049121.9A patent/CN104885104B/zh active Active
- 2013-08-02 DE DE202013012472.5U patent/DE202013012472U1/de not_active Expired - Lifetime
- 2013-08-02 EP EP16162129.7A patent/EP3070001B1/de active Active
- 2013-08-02 WO PCT/US2013/053492 patent/WO2014022810A2/en active Application Filing
- 2013-08-02 CN CN201711073547.4A patent/CN108197770B/zh active Active
- 2013-08-02 US US13/958,444 patent/US8977619B2/en active Active
- 2013-08-02 EP EP13753920.1A patent/EP2880606B1/de active Active
- 2013-08-02 US US13/958,433 patent/US9262734B2/en active Active
-
2016
- 2016-02-05 US US15/016,851 patent/US9996810B2/en active Active
Non-Patent Citations (1)
Title |
---|
E. W. Dijkstra, „A Note on Two Problems in Connexion with Graphs" (Ein Hinweis auf zwei Probleme in Verbindung mit Graphen) Numerische Mathematik, Band. 1, Nr. 1, Seiten 269–271 (1959) |
Also Published As
Publication number | Publication date |
---|---|
CN108197770A (zh) | 2018-06-22 |
WO2014022810A3 (en) | 2014-07-24 |
US20160155073A1 (en) | 2016-06-02 |
US8977619B2 (en) | 2015-03-10 |
EP2880606B1 (de) | 2017-02-01 |
EP2880606A2 (de) | 2015-06-10 |
EP3070001A1 (de) | 2016-09-21 |
CN104885104A (zh) | 2015-09-02 |
CN108197770B (zh) | 2022-07-19 |
CN104885104B (zh) | 2018-05-22 |
US20140039963A1 (en) | 2014-02-06 |
WO2014022810A2 (en) | 2014-02-06 |
US9996810B2 (en) | 2018-06-12 |
EP3070001B1 (de) | 2017-10-25 |
US9262734B2 (en) | 2016-02-16 |
WO2014022810A8 (en) | 2014-09-12 |
US20140040282A1 (en) | 2014-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE202013012472U1 (de) | Satellitenplanungssystem | |
Mohammed et al. | UAVs for smart cities: Opportunities and challenges | |
DE102016103266A1 (de) | Cloud-gestütztes Steuersystem für unbemannte Luftfahrzeuge | |
Mohammed et al. | Opportunities and challenges of using UAVs for Dubai smart city | |
US9489397B1 (en) | Impact data manager for dynamic data delivery | |
Rios et al. | NASA UAS traffic management national campaign: Operations across Six UAS Test Sites | |
Murphy | Emergency informatics: Using computing to improve disaster management | |
DE202013012435U1 (de) | Maßgeschneiderte Kennzeichnung einer Karte auf Basis des Inhalts | |
Alvear et al. | Mobile pollution data sensing using UAVs | |
Chuang et al. | Combining unmanned aerial vehicles, and internet protocol cameras to reconstruct 3-D disaster scenes during rescue operations | |
DE102013206354A1 (de) | Adaptive Bewertung der Objektrelevanz auf der Grundlage dynamischer Benutzereigenschaften | |
Mehallegue et al. | Efficient use of UAVs for public safety in disaster and crisis management | |
DE202022100460U1 (de) | Ein intelligentes System für Wetterüberwachung und Naturkatastrophenprävention mit IoT und ML | |
Zaréa et al. | First steps in developing an automated aerial surveillance approach | |
Hershey et al. | System of systems for autonomous mission decisions | |
McMullen et al. | Emergency management: Exploring hard and soft data fusion modeling with unmanned aerial systems and non-governmental human intelligence mediums | |
DE102019104795A1 (de) | Vorrichtung zum Erstellen einer Flugplanung für Leichtbauluftfahrzeuge | |
Doctor et al. | Literature Review on Employment of Unmanned Aerial Vehicles for Disaster Management | |
Simion | Civil Drone Applications and Connectivity Opportunities | |
Meegoda | MANAGING DISASTER FROM THE AIR: THE ROLE OF AIR POWER IN STRENGTHENING SRI LANKA’S HUMANITARIAN ASSISTANCE AND DISASTER RELIEF CAPABILITIES | |
Zhang et al. | Geological disaster information sharing based on Internet of Things standardization | |
Fu et al. | Towards Exploiting Stakeholder Resources for Data-Driven Resilient Hazard Management | |
Liu et al. | The analysis of civil aviation incident information based on knowledge map | |
Đorđević et al. | How Human Security could be a beneficiary of Information Communications Technology | |
DE112020006941T5 (de) | Bereichsübergreifendes Zellendatenverarbeitungssystem und -verfahren auf Grundlage von Datenressourcenverteilung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R207 | Utility model specification | ||
R150 | Utility model maintained after payment of first maintenance fee after three years | ||
R081 | Change of applicant/patentee |
Owner name: PLANET LABS, INC., SAN FRANCISCO, US Free format text: FORMER OWNER: TERRA BELLA TECHNOLOGIES INC., MOUNTAIN VIEW, CALIF., US |
|
R082 | Change of representative |
Representative=s name: BETTEN & RESCH PATENT- UND RECHTSANWAELTE PART, DE |
|
R151 | Utility model maintained after payment of second maintenance fee after six years | ||
R152 | Utility model maintained after payment of third maintenance fee after eight years | ||
R071 | Expiry of right |