-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
数理システム 最適化メールマガジン
https://www.msi.co.jp/solution/nuopt/top.html
2025 Vol.5 ( 2025 年 9 月 9 日 発行 )
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
数理システム 最適化メールマガジンでは,数理最適化パッケージ
Nuorium Optimizer をはじめとして,最適化に関する様々な情報や
ご案内を提供していきます.
++++ [目次] ++++++++++++++++++++++++++++++++++++++++++++++++++++++
■ <トピック> 事例記事公開のお知らせ(東京ガス株式会社様)
■ <トピック> 発表案内
■ <トピック> 学会展示のご案内
■ <イベント> MSIISM Conference 開催のお知らせ
■ < tips > 使ってみよう PySIMPLE(第 38 回)
■ <イベント> Nuorium Optimization Day 2025 開催報告
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
******************************************************************
■ <トピック> 事例記事公開のお知らせ(東京ガス株式会社様)
******************************************************************
7/28 (月) に東京ガス様の事例記事を公開いたしました.
URL は以下になります.
https://www.msiism.jp/article/tokyogas-valve-scheduling.html
本事例は東京ガス様で行われている開栓業務の差配に対して ALNS を
用いた事例です.ここで,開栓業務とは,新たにガスの利用を開始する
際に行われるガスメータの開通作業のことです.
また,ALNS とは比較的単純なロジックでありながら柔軟性を併せ持つ,
配車計画問題に対する強力な最適化手法です.
皆様も引っ越し等でガスメータの開通作業を依頼されると思いますが,
身近なところで数理最適化が使われている事例としてぜひ一度ご覧
いただけますと幸いです.
また,保守点検等を行うフィールドサービス業務に応用できる話かと
思います.この分野に携わっている方もぜひご覧ください.
(石橋 保身)
******************************************************************
■ <トピック> 発表案内
******************************************************************
駒沢大学にて開催される数理最適化の国際学会にて弊社から発表を
行います.
The 9th ISM-ISCT-NII-ZIB-NUS-MODAL Workshop
開催日:9 月 24 日(水) ~ 9 月 29 日(月)
場所:駒沢大学 深沢キャンパス
https://sites.google.com/view/optds2025
Nuorium Optimizer・数理最適化に関する日頃の研究成果を発表させて
いただきます.ご興味ある方は是非ご聴講ください.
"Weighting Jump Search: an enhanced LP-free MIP heuristic"
* 神谷俊介 (株式会社NTTデータ数理システム)
藤井浩一 (株式会社NTTデータ数理システム)
石橋保身 (株式会社NTTデータ数理システム)
Nuorium Optimizer に搭載されている解法の一つ,重み付き局所探索法
(WLS)について,V27 で新たに導入した連続変数に対する追加近傍や
並列化手法を中心に紹介します.数値実験の結果では,分枝限定法に
対して LP-free 解法である WLS が相互補完的な性能を発揮することを
示し,汎用数理最適化パッケージの可能性の広がりについて論じます.
(神谷 俊介)
******************************************************************
■ <トピック> 学会展示のご案内
******************************************************************
例年通り OR 学会にて企業展示を行います.
また,今年は計算力学講演会でも企業展示を行います.
Nuorium Optimizer の新機能や最新事例に関してご興味ある方は当日
弊社の者がブースにおりますので,お気軽にお声がけください.
最適化に関するご相談,Nuorium Optimizer に関するご質問お待ちして
おります.
[ OR 学会 2025 年秋季研究発表会]
開催日 : 2025 年 9 月 11 日(木) - 12 日(金)
場所 : 広島大学(東広島キャンパス)
学会 HP : https://orsj.org/2025f/
[ 機械学会 第 38 回計算力学講演会 ]
開催日 : 2025 年 9 月 24 日(水) - 26 日(金)
場所 : 信州大学 工学部
学会 HP : https://www.jsme.or.jp/conference/cmdconf25/index.html
(保科 拓紀)
******************************************************************
■ <イベント> MSIISM Conference 開催のお知らせ
******************************************************************
今年も当社主催のイベントを 10 月 24 日(金)に五反田の
CITY HALL & GALLEREY GOTANDA にて開催いたします.
AI や 数理科学のビジネスへの展望を講演やポスター発表を通してお伝え
する予定です.
テーマ:生成 AI は世の中をかえたのか 業務×技術の再評価と新設計
日時:2025 年 10 月 24 日(金) 10:15~18:00(懇親会 18:00~19:30)
会場:CITY HALL & GALLERY GOTANDA
(JR 山手線「五反田」駅から徒歩 5 分)
参加費:無料(事前お申込み制)
数理最適化に関しては,ライオン株式会社様の講演を予定しています.
また,当日は個別商談スペースも設ける予定です.
些細なことでも構いませんので,ご相談がございましたら,どうぞお気軽に
お申込みください.
なお,9 月 18 日に詳細ページが公開される予定です.
当日お会いできることを楽しみにしております.
(金村 佳範)
******************************************************************
■ < tips > 使ってみよう PySIMPLE(第 38 回)
******************************************************************
このコーナーでは,Nuorium Optimizer の Python インターフェース
PySIMPLE のエッセンスを紹介していきます.
3 月にリリースされた V27 では幾つもの機能追加がされました.
特に PySIMPLE のスタブファイルが同梱されたことによって,開発環境に
依っては,シンタックスハイライト,メソッド・引数・型のサジェストが
行われるようになります.また,型ヒントを記述しておくことで型チェッカー
による型チェックを補助できるようになります.
前回はこの PySIMPLE の型ヒントの使い方を関数の引数に限定して紹介
しました.今回はそのままでは型チェッカーがエラーと判定する場合の
対応方法について紹介します.
次の例では Set.__getitem__ の戻り値の型を考えています.
------------------------------------------------------------------
from typing import reveal_type
from pysimple import Set
# Set.__getitem__(self, key: int) -> DType | Key
I = Set(value=[1, 2])
i0 = I[0] # int
IJ = Set(value=[(1, 3), (1, 4), (2, 3)])
ij0 = IJ[0] # tuple[int, int]
------------------------------------------------------------------
Set.__getitem__(int) の戻り値は DType | Key ですが,実際には Set の
次元が 1 のときは DType,2 以上のときは Key となります.ここで DType
は数値もしくは文字列で,Key はその tuple です.この違いはパッケージ
側で行っていないため,assert などによって type narrowing を行うことで,
手動で型を絞り込むことができます.
------------------------------------------------------------------
reveal_type(i0)
reveal_type(ij0)
# type narrowing
assert isinstance(i0, int)
assert isinstance(ij0, tuple)
reveal_type(i0)
reveal_type(ij0)
------------------------------------------------------------------
このような関数,プロパティは他にも Set.next, Set.prev, Parameter.__abs__,
Parameter.__ceil__, Parameter.__floor__, dual 属性,pysimple.func
などがあります.
次に,チュートリアルの集合・添字に出現するパターンを見てみましょう.
------------------------------------------------------------------
from pysimple import Problem, Element, Parameter, Variable
i = Element(value=[0, 1])
j = Element(value=['重油', 'ガス'])
costX = Parameter(index=i, value={0: 180, 1: 160})
norma = Parameter(index=j, value={'重油': 12, 'ガス': 24})
x = Variable(lb=0, ub=5, index=i)
problem = Problem()
problem += costX[0]*x[0] + costX[1]*x[1]
problem += 6*x[0] + x[1] >= norma['重油']
problem += 4*x[0] + 6*x[1] >= norma['ガス']
------------------------------------------------------------------
ここでは costX[0]*x[0] の部分で型チェッカーがエラーを検出します.
これは Parameter は値に数値または文字列をとることができる一方で,
Variable は文字列との積は定義されていないためです.
Parameter の値の型を指定する方法は現在,提供されていないため,
例えば typing.cast を使うことで型エラーを回避できます.
------------------------------------------------------------------
from typing import cast
:
problem += cast(float, costX[0])*x[0] + cast(float, costX[1])*x[1]
------------------------------------------------------------------
いかがでしたでしょうか.前回,今回と V27 の PySIMPLE の新機能である
型ヒントについて紹介してきました.V27 では他にも新機能が加わったり,
動作環境の追加も行われていますので確認してみてください.
チュートリアルの油田問題(集合・添字)はこちら:
https://www.msi.co.jp/solution/nuopt/docs/pysimple/_modules/sample/tutorial.html#oil3
型ヒントの使い方はこちら:
https://www.msi.co.jp/solution/nuopt/docs/pysimple/guide/typehint.html
pysimple.typing モジュールで import 可能なオブジェクト一覧はこちら:
https://www.msi.co.jp/solution/nuopt/docs/pysimple/api/typing.html
PySIMPLE の更新履歴はこちら:
https://www.msi.co.jp/solution/nuopt/docs/pysimple/changelog.html
(池田 悠)
******************************************************************
■ <イベント> Nuorium Optimization Day 2025 開催報告
******************************************************************
Nuorium Optimization Day 2025 という名前で,当社主催の数理最適化に
特化したイベントを 7 月末に開催しました.
コモレ四谷タワーコンファレンスにてオフラインで開催し,約 60 名の方に
ご来場いただき盛況の内にイベントを終了することができました.
ご参加いただいた皆様,ありがとうございました.
イベントでは当社社員やお客様にご講演を通して,テーマの「数理最適化
によるリソース(人・モノ)の有効活用と業務効率化」についてお伝え
できたかと思っています.
来年も開催を考えていますので,参加のご参考までに今年のイベントでの
講演タイトルを記載します.
- 東京ガス株式会社
「現場で活きる数理最適化~東京ガス流DXの挑戦と未来~」
- 鉄道情報システム株式会社
「数理最適化技術を活用した勤務計画ソリューションの事例について」
- 株式会社NTTデータ数理システム
「社会をデザインする意思決定への数理最適化の適用
~マクロ視点シミュレーションへの数理最適化適用の可能性~」
「Nuorium Optimizer 複合展開および生成 AI の活用」
また,懇親会でも講演者様や参加者の皆様とコミュニケーションをとる
ことができ, 数理最適化に関する課題感の共有など非常に有意義な
情報共有の場となりました.
来年の開催に関して,こんな話が聞いてみたい等テーマ案がありましたら,
お気軽にご連絡ください.
(金村 佳範)
==================================================================