MathWorksの日本法人であるMathWorks Japanは3月22日、同社のMATLABおよびSimulinkの最新版となる「Release 2016a(R2016a)」を発表した。

今回のバージョンでは、MATLABの使い勝手と生産性の向上に向けた新機能として、「MATLAB Live Editor」と「App Designer」が提供されたほか、機能強化として「Add-On Explorer」が提供された。

Live Editorは、これまでさまざまなウインドウを立ち上げてスクリプトの記述やチャートの表示を行っていた手順を、1つのエディタ上(Live Editor)で確認できるようにしたもの。インタラクティブな解説付けとして、コメントや文章の解説なども入れることが可能であり、数式エディタ「MuPADノートブック」を使うことなく、1つの画面で記述することができるほか、ストーリーテリングとして、シナリオを記述して、1つのストーリーとして作成し、それをコンテナ化して、他人とのシェアすることも可能だ。そのコンテナを受け取った側は、それを使って、同じことの再現やスクリプトの修正なども可能。研究の過程などを記録として残すことで、1つの成果として残すことができるようになる。

Live Editorの概要

一方のApp Designerは、対話型アプリケーション作成における2つの主要タスクであるビジュアルコンポーネントのレイアウトとアプリ動作のプログラミングが統合されており、ユーザーインタフェース(UI)上にボタンやゲージなどのアイコンを配置して、クリックするだけで、対象アイコンの基本的なコードを生成することを可能とするもの。細かな修正が必要な場合も、エディタを用いて、修正、実装といったことが容易に行えるため、作業の簡素化を図ることが可能だ。

App Designerの概要

さらに、Add-On Explorerは、1つの環境の上で、アプリやツールボックスを一元的にアクセスできるようにした集合サイトで、欲しいアプリなどを検索してインストール、実行することが可能。ユーザーが持っていないツールボックスなどを試用DLする、といったことを手軽にできるようになった。

Add-On Explorerにより、探したいアプリやツールボックスに容易にアクセスできるようになった

また、Simulinkでは、制御系製品のアップデートや各種の機能強化などが行われた。この制御系関連の最新の開発ニーズに対応することに同社は「More Simpler」、「More Complete」、「More Faster」の3つを大きな開発テーマに掲げ、複雑なもののシンプル化による作業開始の容易化や、ライブラリやUIの充実、計算パフォーマンスの向上、操作の手数削減、バッチ処理の自動化などが施されたという。

具体的には、例えば開始ページ1つとっても、従来はブロックライブラリが立ち上がっていたが、R2016aでは、開始ページが立ち上がり、パターン組みされたSimulinkモデルのリファレンスや、過去に編集したモデル、用意された例題集を見ながらの作業、といったことが可能となった。また、Simulinkのブロック線図の作成速度向上にむけ、ブロック単体を選択したときに、即座にコメントアウトしたり、線を選んだ際にオートルーティングするといった機能なども追加された。

さらに単位系の概念を内部で扱えるようになり、かつ、単に単位を指定するだけでなく、同じ単位系で入力から出力まで統一されていない場合、エラーを出すなど、大規模モデル開発におけるミスの低減をはかることが可能となっている。加えて、SoC、マイコン、FPGAといった複数の組み込みターゲットを混在させた、異なるモデル定義の環境であっても、シミュレーションが可能となり、より大規模モデル開発への対応が進んだ形となっている。

Simulinkの開始ページの概要

このほか、アドオン製品として、複雑な物理現象のモデリングライブラリが「Simscape」の名称を冠するものへと変更され、Simscape DrivelineのようなSimscape+○○といった名称となったほか、Simscapeでもランタイムパラメータをサポートしたことで、Simscape対応モデルでもリアルタイムでのパラメータ変更が可能となった。また、Thermal Liquid Libraryである「Simscape Fluids」では、従来の温度一定条件から、過渡特性を持たせ、変化するシステムを模擬できるようになったことから、従来の建機や農機、重工系の特殊機械などのみならず、さまざまな利用シーンでの活用が可能になった。

「Simscape」の名前が冠されたライブラリ群へと変更された

なお、R2016aでは、制御系設計に関しても強化が施されている。例えば、MATLABの初期リリースから提供されているツールを含む「Control System Toolbox」では、過去のコマンドラインを用いた利用方法から、現状の制御系エンジニアのワークフローを意識した改良が進められてきたが、今回のバージョンでは、複数のコントローラの制御パラメータのチューニング調整などを1ウインドウで可能となったほか、新たにモデル低次元化のためのワークフローを支援する対話型環境アプリ「Model Reducer」が追加された。同アプリは、従来は高次モデルの低次元化の際に、複数のウインドウを開いて作業する必要があったものを、1つのウインドウへと統合することで、手軽に検証を行うことを可能とするものとなっている。

さらにモデルやコード検証機能である「Simulink Test」もバージョン2.0へとアップデートされた。テストの反復処理を行う「テストマネージャー」は、制御系に対して、色々なパターンの入力を入れたときに、期待値を満たしているか、単なる制御の動作チェックや単体制御の複数制御のテスト、制御対象のふるまいのチェックなど、色々な動きに使えるという位置づけのもので、複数パターンの検証高速化に向け、「Parallel Computing Toolbox」に対応した。加えて、「Simulink Design Verifier」では、C/C++ Sファンクションとして、Cコードで作られたものに対してもテスト項目を作ることを可能としたほか、ソースコードを静的に解析するツール「Polyspace Products」では、Cソースコードで作ったSファンクションに対し、ソースコードの解析をSimulinkの実行環境で検証することを可能としたことで、潜在的なバグがないかのチェックして、実行した際の動的検査の手間を省くことが可能となった。

「Simulink Design Verifier」の概要

「Polyspace Products」の概要