JASMINEのデータ解析
Z203a

山田良透(京都大学)
河田大介(University College London)
上塚貴史、福井曉彦(東京大学)
片坐宏一、臼井文彦、河原創(宇宙研)
大澤亮、辰巳大輔、郷田直輝、矢野太平、泉浦秀行、三好真、
宮川浩平(国立天文台)
平野照幸(東京工業大学)
服部公平(統数研)
大宮正士(ABC)吉岡諭(東京海洋大学)
立川崇之(高知高専)
1

目次• データ解析の概要• 開発のタイムライン• 開発の方法• ソフトウエア設計• ソフトウエアを用いた実現性検討• 国際協力の状況• まとめ2

物理情報の流れと解析の流れ

概要

開発方法

開発タイムライン

設計

実現性検討

国際協力

物理情報の流れ
感度・非線形性
量子化誤差
暗電流
読み出しノイズ

補助的データクロストーク
指向擾乱

PSF形状
色
背景ノイズ
迷光
光学歪み

検出器
geometry
光学歪み

姿勢⇒ノミナル指向
軌道⇒光行差
指向擾乱

時刻

切り出し

パイプライン
上のデータ

処理

星像
データ

他のパラメタ電気的像2

電気的像1

光学的像

PSFモデル作成

像面での星位置

検出器座標での星位置

星像中心推定Calibration
Calibration data

カタログ

PSFモデル

貼り合わせ歪推定
検出器geometry

像歪み

位置天文パラメタ

位置天文推定星ID

粗姿勢星同定参照カタログ

解析
Step I

天球上の星の位置

Step II

Step III

3

まとめJASMINEデータ解析の概要

概要

開発タイムライン

10万星
数万観測/星25μ秒角

光学特性とその変動、7秒以下の姿勢
擾乱、検出器特性、ePSF構築アルゴ
リズムが精度に影響する。

同じ星は動かないことを使って、5次多項式で表現した歪み、ピクセルごとのサイズ不均一、星位置を同時にを解く

Gaiaとの違い

観測方式• Gaiaはscan衛星• JASMINEはstep stair観測
装置・波長• CMOSはCCDよりnoisy
混雑領域

27000光子/星像

PSF形状をデータから推定し、Bayes
Splineを用いてePSFを構築する
構築したePSFにfitし、星像の中心を推定

II: フレーム歪みの補正

実現性検討

国際協力

まとめ

400mas (回折幅)I: 星像中心推定

特徴

設計

開発方法

測定座標(ひずんでいる)

歪みをとった座標

光学系性能、光行差、望遠鏡熱変動、検出器の製造由来誤差、フィルタのひずみ、照合する星の数や明るさが精度に影響する。

星像中にNph=2.7万個の光子がある。HSTで確立した手法を試し、結果を再現した。星像中心
推定精度は回折幅の1/√Nphに低減、systematic誤差は1/300pixel以下。

(付録 PSF推定)

4mas
歪を双多項式で表現、システム安定性を同時に要求することで、所定精度を得られることをシミュレーションとHST実データで確認した。
(付録 フレーム連結)システム安定性は、温度制御と低膨張素材の開発で実現可能である見通しをつけている。(次ページ)

天球上

III: 位置天文パラメータ推定
Step IIで解けない絶対位置とスケールはGaia星を頼りに、多項式、フーリエ級数、Bayes Spline回帰を用いて推定参照するGaia星の明るさと数、近接する星のPSFのテール、拡散天体が精度に影響する。

星の運動則が精度良く決まっていることから、
self calibrationができ1.5mas る。
100万撮像で誤差が1/√N則で低減することを、模擬星像を使った地上実験で確認。

8000 scan/ミッション

25μas(付録 誤差低減実験)

4概要

他のプロジェクトとの比較

開発タイムライン

開発方法

設計

国際協力

実現性検討

まとめ

最適化問題
星像データ

Hipparcos
Gaia

JASMINE

検出器座標での星位置

Image Dissector Tube解析
Initial Data Treatment

Step I
Step I

天球上の星の位置

大円解析

位置天文パラメタ

座標固定

球面構築

分割すると正しい最適点に落ちる保証がない

AGIS(Matrixをblock 対角で近似反転+iteration)

Step II

Step III

Heidelberg ARIで行う解析
Gaia Direct Solutionは成功しなかった

一度に処理すると問題がmanageableにならない5

概要

開発のタイムライン
超小型着手

開発方法

設計

実現性検討

国際協力

まとめ

星の数・観測数など簡単化して良いので、end 2 endを実施せよ

2007

2003

開発タイムライン

2016
Gaiaチームとの協力(超小型に関して)JASMINEの解析着手

1人(effort < 30%) + Gaiaメンバー or 企業 or etc

E2E委託
国際審査

要素開発
精度評価

2028

2020

2032

End 2 endが目標
まだastropy, scipyが無かった、普及してなかった
最小二乗から作るチームで設計した部分はきれいに書ける設計から任せるとスパゲッティーになる(しかし、設計のマンパワーがとれなかった)
パイプラインのバグが取り切れない

20名

E2Eグループ立ち上げ MDRあるもの(astropy, scipy)は使う。
どうもpython ライブラリは精度が不安
後から作り直すとしても、とにかくE2Eを通しで若手約20名

cvssvn

衛星打ち上げカタログ公開専門家のアドバイスを得つつチーム構築
10年以上維持できるソフトウェアを作る
gitlabgithub6

業務系ソフトウエアとの違い

概要

開発タイムライン

開発方法

設計

実現性検討

国際協力

衛星計画は計画からデータリリースまで30年程度=>長期に維持できるソフトウエア
業務系ソフトウェア

科学ソフトウェア

開発者は仕様通りのものを開発することが目的

開発者はできたものを使って論文を書くことが目的

いつも開発をしている
開発者は開発のために雇われている

開発フェーズとそれ以外のフェーズがある
研究のために雇われている人が、必要に迫られて開発をしている

従って、開発者は同一組織に居る

開発者の所属機関はバラバラ

従って、一日に一度の朝礼は可能

全員が時間を合わせることは難しい

必要に応じて関係者数名を集めることも可能

関係者が集まれる時間もなかなか決まらない

リリースしたソフトウエアに責任がある

ソフトウエアではなく計算結果に責任がある

後から見てわかるソフトであることが必要

論文を書いてしまえばソフトは不要

後から見てわかるソフトを書くスキルも大切

ソフトスキルは二の次

結果はたいてい離散的な状態
テストが明確

結果は実数値
テストを書くのが難しい。

7まとめ

概要

アジャイル開発を適用
1940

1950

機械語
λ式

1960
高級言語

開発タイムライン

開発方法

設計

実現性検討

国際協力

まとめ

今1970

1980

1990

2000

2010

2020

構造化プログラミング
Haskell等

関数型(宣言型)言語
論理型(宣言型)言語

アジャイルソフトウエア開発宣言• 顧客満足が優先• 要求の変更は歓迎• 短期リリース(2-3w～2-3m)• 顧客と開発者は日々一緒に働く• 意欲に満ちた人を集めて彼らを信頼する• Face to faceで話をする• 動くソフトウエアを進捗の尺度とする• 一定の開発ペースを維持する• 技術的卓越性と優れた設計• シンプルが本質• 自己組織的なチーム• チーム効率向上のため定期的な振り返り

プログラミン
グパラダイムオブジェクト指向の台頭
ウォーターフォール開発
アジャイル開発

Scrum開発は不可能

XP

開発手法

アジャイルソフトウエア開発宣言
SCRUM開発
カンバン、クリスタル、・・・
Pythonの台頭

マルチパラダイム言語

8

開発の特徴

概要

開発タイムライン

開発方法

設計

実現性検討

国際協力

• 科学的な解析手法の検討にとどまらず、30年維持する開発手法やチーム構築が必要• Open Source品質がキーワード• 業務系ソフトの開発手法を、科学ソフト開発にマッチした形にアレンジ。
• 設計の重視(モデル駆動)• テスト駆動開発• スクラム開発⇒チームに合った手法として、カンバン方式を適用• スクラムは同じ場所に居る、最低限同じ時間を共有できることが前提• ツール• GitHUB(コードの共有)• CodeClimate(コード品質の確保)• Trello(カンバン方式によるタスクの管理)• 対話• 週一回のオンライン会合(毎日の朝礼は無理)• モデリングセッションの実施(小数人で)• Slack(共通の居場所)
9

まとめ

概要

ソフトウエア開発技術の向上

開発タイムライン

開発方法

設計

実現性検討

国際協力

テストができていない行の表示

カンバン

品質の可視化ツール導入

コードの品質(保守性、テストの充実度)

コードの要修正箇所の提示

10

まとめ

概要

機能設計星像データ

Gaia
JASMINE

開発タイムライン

検出器座標での星位置

Initial Data Treatment

Step I

疑似観測データを生成する
要求機能
疑似観測データを解析して精度評価をする

開発方法

設計

天球上の星の位置実現性検討

国際協力

まとめ

位置天文パラメタ

AGIS(Matrixをblock 対角で近似反転+iteration)

Step III

Step II

詳細疑似データはJasmine-imagesim

ノミナル仕様解析ソフトの逆回しでも簡易simulation

誤差要因
データ仕様
解析
評価

各ステップの解析
パイプライン
評価対象選択の柔軟性
可視化

11

概要

データモデリング
撮像ID
9x9のピクセル値
ノイズ情報
撮像時刻
切り出したピクセルの位置

D星の検出器面の位置
撮像ID(=>時刻、指向)

星像
データ

JASMINE

開発タイムライン

開発方法

設計

星の天球面の位置
軌道ID(=>時刻)

B

検出器座標でC の星位置

天球上の星の位置実現性検討

国際協力

位置天文パラメータ星IDA

Step I

Step II

Step III

検出器特性
光学特性
迷光
背景星
指向擾乱特性

光学歪光行差(衛星軌道、公転)
ノミナル指向
検出器歪
星同定

星同定
年周期擾乱

位置天文パラメタ

ハッブル宇宙望遠鏡での高精度位置天文観測の手法(effective PSF:
ePSF、Anderson & King 2000) をJASMINEに適用した。
12まとめ

概要

Pipeline設計(クラス)

Build A

Build B

B⇒A

Bundle A
createModel()destoroyModel()saveModel()loadModel()

1
1

A⇒B

0..1

開発タイムライン

Bundle B

createModel()destoroyModel()saveModel()＊loadModel()

B⇒C

1
1

0..1

設計

国際協力

C→DD⇒C

Bundle C

createModel()destoroyModel()saveModel()＊ loadModel()

1

1..4

1

1..4

Bundle D
createModel()destoroyModel()saveModel()loadModel()

111

1

＊＊

＊

＊

Model A

Model B

Model C

Model D

Model B = PositionOnTheSky
Bundle B =MapOnTheSky

Model C = PositionOnDetector
Bundle C =MapOnDetector

Model A = CatalogueEntry
Bundle A = AstrometricCatlogue

実現性検討

Build D

Build CC⇒B

開発方法

Model D = DetectorImage
Bundle D =DetectorImageCatalogue

13

まとめ

Pipeline設計(オブジェクト)

概要

開発タイムライン

開発方法

設計

実現性検討

国際協力

Bundel C
Model C・・・

Bundel A

Bundel B

Model C

Bundel D・・・

Model D

Model B
Model A
Model A・・・
Model B

Bundel C
Model C

Model D

・・・
Model C・・・

Bundel B

Bundel C

Model B・・・・・・
Model B

Model D

Bundel C

Model D

・・・

・・・

Bundel B
Model B
Model A・・・

Model D

Model B

AB間: 星(ModelAに対応するModelB群)ごと独立で、並列化可能

BC間:Bundle Bごとに独立で、並列化可能

CD間:Model Dごとに独立で、並列化可能

14まとめ

概要

開発タイムライン

精度達成確認のストラテジー(総点検)
1撮像で、中心推定精度4～6masを達成する。

前提:
星の数が十分多いので、歪をとり、運動を推定しても、精度は1.15×撮像精度/√(N=撮像数)

星当たりN=34000(4mas/撮像)、N=77000(6mas/撮像)回の撮像を行う。

開発方法

設計

実現性検討

国際協力まとめJasmine-imagesimを開発、考えられる擾乱を入れて、中心推定精度達成を確認する。

前提の成立性をシミュレーションで確認する。

そのようなMappingが存在する。

ミッション全体で年周視差25μasを達成する
15

概要

Step I

開発タイムライン

開発方法

設計

実現性検討

国際協力

 観測シミュレーションソフトウェアjasmine-imagesimを用いた系統的な調査に基づいて、望遠鏡口径および観測波長域の最適化を行った。
• 実際に観測される状況を想定した星の明るさ(12-14.5等級)を設定して、視野内に400天体をランダムに配置した観測模擬データを作成した。これを用いて星像位置決定精度を評価した。

主鏡有効口径・開口形状(アパーチャ)• PSF(Point Spread Function)を決めるパラメータとして導入。
• 主鏡有効口径は340-360mmを設定した。

衛星姿勢制御誤差 (姿勢安定度)• 積分星像形状を決めるパラメータとして導入。
• 衛星姿勢制御誤差を規定するパワースペクトル密度(PSD)はひのでの実績に基づいて、-2乗則を仮定した。

主鏡有効口径副鏡遮蔽 (中心遮蔽率＝0.35)
スパイダ遮蔽 (厚さ＝5mm)

焦点距離・ピクセルサイズ・フラット• 取得画像形状を決めるパラメータとして導入。
• 焦点距離＝4369mmで固定とする。
• ピクセルサイズは浜ホトで開発中のInGaAsセンサとして10μmとする。
• ピクセル間フラットは0-2%を標準偏差とする乱数で生成。

波長特性・観測波長帯• 「望遠鏡光学系効率」「フィルター効率」「検出器量子効率」をそれぞれ導入。
• 光学フィルターについてはカットオン波長 0.9-1.1μm、カットオフ波長 1.6μm とする。
• 検出器量子効率は想定よりも良好な性能が得られている(右図；技術FL・FY2021の成果)。
• 基板除去・反射防止コートによって既存の地上用検出器より高い量子効率を実現• (本年会Z208c鹿野他)

16

まとめ

Step I概要

開発タイムライン

開発方法

設計

実現性検討

国際協力

まとめ

 シミュレーションの結果、星像の位置決定精度を支配するのは以下の組み合わせであることが明らかとなった。
• 星像の回折パターン• 衛星の姿勢安定度 (指向擾乱)• ピクセル間フラット• 検出器の読み出しタイミングの違い

 位置決定精度の向上には光子数を稼ぎ、星像をシャープにすることが重要である。すな
わち、口径は大きく、カットオン波長は短い方が望ましい。

シミュレーションで得られた星像。衛星の姿勢安定度を考慮す
ると星像の形状が球対称から外れている。

色の影響
フラットのばらつきが大きいほど精度が悪化

暗い星では影響が小さい

ピクセル間フラットの影響を星の明るさ(等級)と位置決定精度の関係で見たもの。⇒LED光源で補正

 望遠鏡口径は400mm→360mmに縮小する。
 カットオン波長を1.1um→1.0umに広げて、観測波長帯は1.0-1.6umとする。
 ただし、メニスカスフィルターの導入を検討

指向擾乱による視野中心の滞在時間分布
タイミングの違いによる誤差はモデル化で吸収できそう
検出器フォーマットと、1ピクセルの読み出しタイミング。
200kHz (5μs/pix)で読み出す場合、1ch(123×1968ピクセル)の中で最大1.2秒の読み出しタイミングのずれが生じる。

17

概要

Step II

開発タイムライン

開発方法

設計

実現性検討

国際協力

 光学歪みの補正および位置天文較正試験:

光学収差と天体位置を同時に解く試験を実施、撮像回数に応じて測定精度が向上することを実証した。
左図: 使用した光学収差のパターン
下図: 天体位置の測定精度と撮像回数の関係
撮像回数×1

下図: 天体の測定回数と位置測定精度の関係
一回撮像測定精度 4 mas

撮像回数×16

目標達成精度 1 mas

視野の張り合わせ方の評価
18

まとめ

概要

Step III

開発タイムライン

開発方法

設計

実現性検討

国際協力

 アストロメトリパラメータの推定:観測を模擬したデータセットを作成して推定問題を解く試験を実施した。
多数回の測定によって目標とする精度でアストロメトリパラメータを推定できることを実証した。

天体の真の運動

データ点 (灰色) より運動を推定 (マゼンタ)

左図: バルジに存在する星の動き (黒実線) と
1 mas の精度で 8000 回測定した位置の分布
下図: 推定したアストロメトリパラメータから再構成した天体の運動と誤差 (マゼンタ)

推定精度:
天体位置 ~ 10 μas
年周視差 ~ 16 μas
固有運動 ~ 12 μas/yr

推定精度
σ ~ 16 μas を達成

上図: 1000 回の試験で得られた年周視差の分布

19まとめ

概要

開発タイムラインチームによる総点検の実施(サマリー)
Step I(星像中心推定)
単位フレーム12.5秒

開発方法

設計

実現性検討

国際協力

まとめ

2020年までの検討

2021年度の検討

口径=約40cmあれば十分更新された数値をもとに、口径36cmでの成立性を確認した。

中心遮蔽率0.35
検出器感度・読み出しノイズ・暗電流は20年4月の実績値

感度が過去の実績値より高いことが確認されたので、組み入れ上記前提で星像中心推定精度を、誤差伝搬を考慮して評価

N回観測で1/√Nで低減

指向擾乱、背景の暗い星の影響は別途簡易モデルでの評価を実施し、RSSで積み上げ指向擾乱・背景の暗い星を含めた模擬データを作成して、中心推定精度を評価した。(RSS積み上げではなく)観測領域の星データベース作成。

軌道周回50%を観測に使う前提

迷光影響とのトレードオフを行い、軌道周回49%を観測に使う

波長は1.1～1.6μm固定とした波長域の最適化を行った。(1.0～1.6μm)
フラット補正の方法と精度を検討、評価に組み込み

Step II(歪推定)

NEC速報値の柔構造を含まない視野変更後の静定時間を用いて、軌道半周で全領域をカバーする運用を前提静定時間が長かったため、軌道半周でカバーする領域は観測領域の一部として、最適化を行った。

張り合わせによる視野パラメータの誤差の影響は、誤差伝搬を考慮して評価。

左影響を、模擬データを用いて評価した。

周回で観測領域全体を掃くGaiaを頼ると、周回で一部だけ掃くで良い観測領域も最適化した

Step III(星運動推定)

3年、一年の半分がバルジ観測期間として、8200周回にマージを入れた7400周回を観測期間として評価

放射線帯の影響などを考慮して、観測周回が6000周回で成立する解を検討した。

20

国際協力の状況

概要

開発タイムライン

開発方法

設計

実現性検討

国際協力

• Heidelberg• Gaia DPAC CU3(core processing) FL(First Look)チーム• DLRの予算を獲得して、共同研究をスタート• 今月日本からHeidelberg訪問(1週間のワークショップ)• 11月末( or 12月初)にHeidelbergから来日• Barcelona• Gaia DPAC CU2(Simulation)およびCU5(Photometry processing)チーム

21

まとめ

まとめ

概要

開発タイムライン

開発方法

設計

実現性検討

国際協力

• ソフトウエア開発のチームビルディングを行った• ソフトウエア開発の環境構築を行った• ソフトウエア開発のための、品質可視化ツールを整備した• そこで開発したソフトウエア部品を使って、JASMINEの実現性を確認した• 今後はソフトウエア部品を組み合わせて解析ソフトを作り、end to endシミュレーションを行う。

22

まとめ