2022年12月31日土曜日

やり残し事項 2022

昨年の後悔や反省を引きづりつつも、何とか1年が無事に終わりました。
達成感はありません。が、低空飛行ながら失敗は回避できた年だったように思います。
中期目標はまだありません。その日暮らしから早く脱却せねば。

やり残し事項はそのまま+1。もう消して良いかなとも思えますが、もう一年残しておきましょう。

優先度中:MEMSセンサー+マイコン
優先度中:流体+個体(不連続体+連続体)+振動
優先度低:PSInSAR
優先度低:Dtransu の GPU 対応
優先度低:地表流+地下水+移流拡散

2022年12月25日日曜日

地震時の岩盤斜面の安定性

地震時の斜面安定性に関する数値解析を扱った文献3つです。
要約と結論以外は飛ばし読み、機械翻訳ベースです。

いずれも中国の方、Itasca社の製品を使われています。流行りですかね?**************************************

Study on Dynamic Response of Rock Slope With Inverse Non-Persistent Joints Under Earthquake

受け盤斜面の地震応答に対し、節理の傾斜角、節理間隔、節理が途切れている距離が与える影響を数値実験で検討した。使用ソフトはUDEC(2D)。

検討の結果、節理が斜面の動的応答に大きな影響を与えることが示された。節理の傾斜角が大きくなるか節理間隔が減少すると、斜面上のPGA増幅係数が増加。影響範囲は主に斜面の中央から肩に集中。
水平方向では、節理の傾斜角の増加と節理が途切れている距離&節理間隔の減少に伴ってPGA増幅係数が増加。
垂直方向では、PGA増幅係数曲線は最初に増加し、次に減少し、その後、標高の変化とともに増加。
応答は節理が密に発達した斜面で大きくなる。


Dynamic Analysis of the Seismo-Dynamic Response of Anti-Dip Bedding Rock Slopes Using a Three-Dimensional Discrete-Element Method

受け盤斜面の地震時おける動的応答解析。使用ソフトは3DEC。

【増幅率】
一般的に2次元解析では、標高が増加するにつれて増幅率は単調に増加する。しかし、3次元動的解析では、その「標高効果」を示さなかった(最大値は斜面の中央部と上部に表示された)。
同様に、斜面の表面近くで大きな増幅率を示す「表面効果」は、3次元条件下では現れなかった。
全体として、プロファイル1、2、および3に沿った3方向加速度は単調に増加しない。代わりに、最初に値を増やす(減少させる)パターンがあり、その後に値を減少(増加)させるパターンが見られた。

【周波数】
斜面上部ほど低周波は増幅され、高周波は低減される。支配的な周波数は減少する傾向がある。

【破壊】
斜面の下部で斜面が崩壊し始め、上部に進行する。破壊面は階段状であり、トップリングの特性を示している。斜面と節理の角度が大きくなると、破壊面の深さが大きくなり、斜面の不安定部分の範囲が広くなり、変位が増加。
Newmark 法は、一方向の地震波の作用のみを考慮しており(つまり、この方法は平面問題にのみ役立つ)、動的解析の変位結果よりもはるかに小さくなる。


Numerical analysis of evaluation methods and influencing factors for dynamic stability of bedding rock slope

流れ盤斜面の安定性評価方法と影響要因について検討。FLAC3Dを使用。

【安定性】
水平震度を加算する擬似静的法で計算された安全率は、他の解析方法で得られた値よりも大。
斜面高さの増加と地層の厚さの減少に伴って斜面の安定性が低下。ただし、これら2つのパラメータの影響には臨界値がある。本論文の斜面の例では、斜面の高さが200 mに達し、地層の厚さが10 mに達すると、斜面の安定性の低下は明らかではなくなる。
地層傾斜は、堆積性斜面の動的安定性に直接的かつ重要な影響を及ぼす。理論的および数値計算結果によると、斜面の安定性は斜面角度の増加とともに継続的に低下する。ただし、降下速度は、斜面角度の増加とともに大幅に低下。この論文のモデル勾配では、角度が55°に達すると斜面安定性の低下は明瞭でなくなる。

【破壊】
主に斜面の堆積面に沿って破壊が発生。

【周波数】
入力周波数が斜面の固有振動数に近いと、動的安定性が悪化。
安全率は1Hzから3Hzへの周波数の増加とともに増加。増加率は比較的遅い。3Hz〜10Hzの範囲内では安全率は直線的に増加し、10Hz〜15Hz以内で上昇傾向は徐々に緩やかになる。斜面の動的安定性は、動的負荷の中低周波部分の影響を大きく受けるが、高周波部分の影響をあまり受けない。


2022年12月24日土曜日

PINN examples

NVIDIA Modulus の examples を読みながら動かしました。

以前、エラーを吐く example があったのですが、他にも動かないモノが混ざっていました。設定を変更すると動きますが、収束しないとかも。ユーザー側の GPU が様々ですので、細かい設定は環境に合わせて変えないといけないのかな?となると、GPU毎に答えが変わっているってこと?ありそうですね。

1Dはすぐに収束するのですが、2D や 3D は打ち切り回数がない場合に延々と回り続ける場合も。NVIDIA さんでも難しいのは変わらないようです。
書くべき内容は簡易なコードと大きく変わりません。込み入った部分は Modulus 側で対応してくれています。

困ったのは post。3次元の点に色を付けることはできますが、形状は困難。粒子法のように表面を抽出するアルゴリズムの追加が必要でしょうか?NVIDIAさん、どうやっているのでしょう。

まだまだ時間がかかりそうです。


2022年12月18日日曜日

機械学習コンペ

機械学習のコンペサイトは Kaggle が有名ですが、日本にもあります。

SIGNATE https://signate.jp/

土木がらみのコンペも開かれています。
昔は衛星データから崩壊個所を予測する内容や、海岸線を抽出するものが出ていました。最近では、広島県から河川水位と雨量から翌日の水位を予測するコンペ、山口県からドライブレコーダーの画像から要補修個所を拾うコンペが出ています。

仕事では、機械学習の性能を発揮できないようなダーティーなデータを扱うことが多いため、たまには綺麗なデータを扱ってみたいと思うことがあります。が、経験上、これらのコンペに出ているデータもそれほど綺麗なものではありません。ストレス解消にはならないのです。

が、発見がないというわけではありません。
山口県のコンペが成功すれば、今後、安価な代替え手法として流行るかもしれません。結果には注目です。

PINNや物理探査など、機械学習が様々な分野で身近になってきた1年だったように感じます。
来年はどこまで迫ってくるでしょうか。


PINN 2D は難しい

PINN 1D から 2D へ展開したのですが、うまくいきませんでした。

簡単なコードだからダメなのか、NNが難しいのか。

分かったこともあります。
商用ソフトでは境界条件を張る場所を指定し、経時変化を入力すれば自動で処理してくれるのですが、簡単なコードでは点数×時間分、境界条件を定めなくてはなりません。当たり前ですが、慣れ切っていましたね。同様に、初期条件はイメージ通りとしても、途中の観測点も時間分作らないといけません。良い復習になりました。

正しく解けたかどうかは分かり難いですね。loss が大きくてもそれなりの答えが出てしまうところが難点。十分小さな loss を目安にするしかないのでしょう。そのために、ニューロンを増やす、隠れ層を増やすなどの対応もあるのでしょうが、いつものように最適な構造を探すのは難しい。時間がかかりそうです。

それでも、試行錯誤したことで PINN の仕組みはわかりました。当初目的は達成したので、次のステップへ移りましょう。
NVIDIA さんの Example は動かなかったのですが、なんとかなると思います。いきなり分かり難くなるのですが、中間が見当たりません。当面、これを動かすことを目標に進めましょう。


2022年12月11日日曜日

PINN で 1D 移流拡散

続きです。

拡散項を追加。自動微分がありがたい。

良さそうです。

が、ここに至るまでにおかしな結果を何度か見ました。

拡散係数が小さいと、移流しなくなる答えを出してきます。
念の為、昨日の移流のみの計算を繰り返したところ、全く移流しないパターンが出てきました。NN的には loss が最小のものを出せば良いだけなので、それはそれで答えの一つなのかもしれません。が、怖い。かなり。

2022年12月10日土曜日

PINN で 1D 移流

GitHubから、 最も理解しやすかったコードをDL。
https://github.com/nanditadoloi/PINN

PDE を移流方程式に変えて計算してみました。



移流が綺麗に解けると伺っていましたが、本当に驚き。個々の値のブレが若干大きな気もしますが、全体形状を見るとオーバー、アンダーシュートが見られません。NNなので計算時間はかかりましたが、アリですね。

Pytorch ですので、一度計算をかけた後に観測点を増やして先の続きから計算、というのが手軽にできます。FEMでは計算途中でメッシュを切りなおして、なんていうと構えてしましますが、こちらはほぼ制限なし。メッシュレスの良い点でしょう。
数値解析の解法に関する知識がほぼ不要というのも受けそうです。機械学習をやっている方なら、問題なく扱え、すぐに計算結果を出すことができるでしょう。教師データが不要なのも入りやすいと思います。

残念ながら、解けない場合にどのように改善していくかというノウハウがありません。解けた場合でも、厳密解がない場合は、正しく解けているのかどうかわかりません。これから知見が蓄積されるのでしょうね。いえ、もう数年たっていますので、どこかにあるのかもしれません。

これ、面白いので、もう少し触ってみましょう。



2022年12月8日木曜日

Failed to Install linux-image

Ubuntu22.04 の1台で、apt upgrade が使えなくなって2ヶ月。
Teams を入れようとして支障が出たため、重い腰を上げることにしました。

「大量のエラーが発生したため、処理が停止しました。」

この場合の対応はweb上に色々と書かれています。手当り次第試しましたが駄目。そういえば、手がなくなって寝かせていたのでした。

最後にた取りついたのがコチラ。
you need to remove the post-installation script of the packages
https://askubuntu.com/questions/1371963/ubuntu-20-04-lts-failed-to-install-linux-image-5-4-0-89-generic

次は1発で済ませます。

 

2022年12月6日火曜日

PINN の動向

先日、PINN の話を聞く機会がありました。

初歩的な話でしたので計算に役に立つ、というようなレベルではなかったのですが、質問する機会は得られました。

PINNで気持ち悪いのが、時空間の関係があいまいになっている点。
FEMなら全体剛性マトリックス、SPHなら粒子間距離を使って近傍の関係性を明示できるのですが、PINN は NN の weight に押し込められています。時間方向も同様です。
これについて、時間方向は1タイムステップ毎に収束させてから次に進む研究があるとの回答を頂きました。ある時点で特異値を得ても全体で均されるとわからなくなるという状況を解決したいというところから始まっているようです。まだ論文は見つけていませんが、時間方向だけでも明確になれば空間方向は NN の構成と weight で、というのはありかなと思えてきます。

もう一つはGPU。
陰解法では倍精度主体の GPU が欲しいものの、機械学習や陽解法では単精度主体の GPU で良いと思っています。では、PINNはどうか?個人的には求める制度にもよりますが、基本は単精度で良さそうだと考えていました。
この点を伺うと、単精度で書かれたコードは多くみられるが、倍精度でないと結果が合わないケースもあるとのこと。ま、そうなんでしょうね。

今後はサロゲートモデルも選択肢の一つに入る時代になるでしょう。既存の手法を深めつつ、新しい手法も身に着ける必要があります。ま、新技術に対し真摯に取り組む必要があること自体は、時代が変わっても不変です。


2022年12月4日日曜日

Georisk

PINN の論文をたどりながら、思いかけず出会った雑誌。

ジオリスクのみで雑誌ができるとは思ってもいませんでした。
興味を惹かれたので、Open になっている中から、一つ読んでみました。
Observational method as risk management tool: the Hvalfjörður tunnel project, Iceland 

フォールトツリー分析を用いたトンネル掘削時のリスクマネジメント例です。詳細までは書かれていませんが、スタンダードな手法でリスクマネジメントを行われたことは理解できます。

これを読んでいて思い出したのが、総監。「あなたは管理技術の何を使いましたか?」と聞かれたのを思い出しました。FTAのような技術を選択肢として複数持っていないと、管理は低レベルになり事故を引き起こしかねません。裸でリスク源に向かっていくようなものです(先のexecutivesです)。

適切な技術を選択し、観測データによるリスク対応をトンネル掘削前に決めておく。これが標準なのでしょう。管理技術を学んだ方々にとっては特に難しい話ではないのですが、訓練は必要でしょうね。