SIMPLE#
読み: しんぷる
英名: SIMPLE
SIMPLE とは 1990 年代中盤に考案されたモデリング言語の規格または概念 [1, 2, 3, 4, 5] である. SIMPLE は数理計画法の文脈で数理モデルを記述するために必要な抽象的枠組みを与え, 主要なプログラミング言語の中での実装がなされている. これは SIMPLE が System for Interactive Modeling in a Programming Language Environment の略 (アクロニム) で, 特定のプログラミング言語環境を前提としていないモデリングと解析のためのシステムを目指したものが根底にあるといえる.
数式記述を意識した文法規則となっているのが SIMPLE の言語仕様としての特色である. 「変数」や「定数」に付属する「添字」をその宣言時から「集合」に対応付け, 特に指定しなくても自律的に動くとしたことで,手続き的な記述に頻発する「ループ」を排除している. これによってより数式に近い記述を提供するとともに,制御構造を取り払うことでプログラムの記述自体を簡潔 (simple) にし,モデルとしての記述を可能とする.
SIMPLE の仕様そのものは, 広く一般的な数理モデルを記述することを意図して設計されており,今後は数理計画問題のみならず, 離散化された偏微分方程式系の記述などへの広がりが期待される.
SIMPLE の実装系は (株)NTT データ数理システムの自社製品であり, Nuorium Optimizer に搭載され密接に連係し,中心的な役割を果たしている. 代表的な実装系として次がある.
C++SIMPLE (C/C++)
PySIMPLE (Python)
RSIMPLE (R)
関連
参考文献
Hiroshi YAMASHITA, Takahito TANABE, and Nobuhiro HENMI. SIMPLE - A Modeling Language for Mathematical Science. IPSJ SIG Notes, 38:25–30, nov 1995. URL: https://ipsj.ixsq.nii.ac.jp/ej/?action=pages_view_main&active_action=repository_view_main_item_detail&item_id=33760&item_no=1&page_id=13&block_id=8.
山下浩, 田辺隆人, 富永純, and 逸見宣博. システムのモデリングのための言語: SIMPLE (数値計算アルゴリズムの現状と展望 II). 数理解析研究所講究録, 915:157–166, 1995. URL: https://repository.kulib.kyoto-u.ac.jp/dspace/handle/2433/59611.
山下浩, 田辺隆人, and 逸見宣博. 数理計画のためのモデリング言語SIMPLE I 概要. 日本オペレーションズ・リサーチ学会秋季研究発表会アブストラクト集, pages 44–45, 1997. URL: https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=&ved=2ahUKEwjf9vvkh4-FAxUJk68BHTVJCPkQFnoECBYQAQ&url=https%3A%2F%2Fcir.nii.ac.jp%2Fcrid%2F1574231877163239168&usg=AOvVaw2Kzu1LEIsIQT4hKJFCUdKP&opi=89978449.
田辺隆人, 山下浩, and 徐良為. 数理計画のためのモデリング言語SIMPLE II 応用. 日本オペレーションズ・リサーチ学会秋季研究発表会アブストラクト集, pages 46–47, 1997. URL: https://ndlsearch.ndl.go.jp/books/R100000136-I1571698602372840704.
山下浩. 数理計画のためのモデリングツールの開発. オペレーションズ・リサーチ = Communications of the Operations Research Society of Japan : 経営の科学, 50(4):243–246, 2005. URL: https://cir.nii.ac.jp/crid/1520853834419976704.