JP4187107B2 - 対話型計算をウェブページに構築するシステム - Google Patents

対話型計算をウェブページに構築するシステム Download PDF

Info

Publication number
JP4187107B2
JP4187107B2 JP2003571905A JP2003571905A JP4187107B2 JP 4187107 B2 JP4187107 B2 JP 4187107B2 JP 2003571905 A JP2003571905 A JP 2003571905A JP 2003571905 A JP2003571905 A JP 2003571905A JP 4187107 B2 JP4187107 B2 JP 4187107B2
Authority
JP
Japan
Prior art keywords
model
objects
calculation
specific information
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2003571905A
Other languages
English (en)
Other versions
JP2005525624A (ja
Inventor
クーセイ,ジェイ.メイレン
マコーリー,グラント
リュー,フア
Original Assignee
ロマ リンダ ユニヴァーシティ
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ロマ リンダ ユニヴァーシティ filed Critical ロマ リンダ ユニヴァーシティ
Publication of JP2005525624A publication Critical patent/JP2005525624A/ja
Application granted granted Critical
Publication of JP4187107B2 publication Critical patent/JP4187107B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/48Indexing scheme relating to G06F9/48
    • G06F2209/482Application
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/543Local
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/544Remote
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/545Gui

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Stored Programmes (AREA)
  • Processing Or Creating Images (AREA)

Description

関連出願の相互参照
本出願は、「ウェブページ計算をJava(登録商標)アプレットライブラリで構築する方法」と題する2002年2月25日出願の仮出願番号60/319,123の優先権を主張するものである。
著作権表示
本特許文書の開示の一部、すなわちプログラムリスト及びスクリーンショットは、著作権保護に従う重要事項を含む。著作権保有者は、特許商標庁の特許ファイル記録として表れている通り、特許文書または特許開示のいずれかにおける複製に対して異議はないが、それ以外の場合は如何なる著作権であれ全てについてその保有を主張することができる。
発明の背景
ウェブブラウザプログラムをマークアップ言語(例えばHTML)によるテキストと組み合わせて、サーバによってインターネット配信する操作は、知識コンテンツをユーザにテキスト及びグラフィックの両方の形でオンデマンドに配信するための、ポピュラーで世界的な方法となっている。理論的には、少なくともブラウザプログラムは全てのコンピュータプログラムプラットフォーム上で利用できるので、全てのユーザはコンテンツをハードウェアブランドまたはコンピュータオペレーティングシステムに関係なく閲覧することができる。多くの強力なソフトウェアツールが設計されていて、コンテンツをレイアウトし、テキスト、静止グラフィック、アニメーション、ムービー、及びサウンドクリップの組合せを含むページのマークアップ言語コードを書くのに役に立っている。
しかしながら現在のところ、数値計算を含む対話型ウェブページの構築を容易にするために利用できる技術がない。このようなページの例として対話型シミュレーションが挙げられ、この対話型シミュレーションでは、ユーザは幾つかのパラメータ設定を変更し、次に数学モデルの解がどのように変わるかを観察する。通常はパラメータ変更及び出力表示の両方が、例えばパラメータ入力用のスライダ及び計算出力用のグラフまたはアニメーション等の、画面上のグラフィックオブジェクトを通して行われる。また、計算は通常、ページを記述するマークアップ言語とは異なる汎用コンピュータ言語で行なわれるが、これはマークアップ言語が計算に適していないからである。現在の技術を使用してウェブページに数値計算を構築するには、ページを記述するマークアップ言語(例えばHTML)と、特に実際の計算を行なう汎用コンピュータ言語(例えばJava(登録商標))のプログラミングに大きな精力を注ぐ必要がある。また、(計算を変更せずに)ページ上のオブジェクトを変更する、または(ページ上のオブジェクトを変更せずに)計算を変更するには、マークアップ言語及び汎用コンピュータ言語の両方を変更する必要があるので、これらのコードのいずれかを再利用することができない。
必要なのは、対話型計算をウェブページに構築するために要求される作業を大きく減らし、かつ、その構築に要求されるスキルレベルを大きく下げる、新規のソフトウェアアーキテクチャである。
要約
本発明はこの要求に対して、対話型計算をウェブページに構築するシステムを提供することにより応えるものであり、このシステムは、複数のコンピュータ読取り可能媒体に保存されるプログラム命令を実行する中央プロセッサと、中央プロセッサと通信する複数のインターフェイスと、中央プロセッサと通信し、かつオブジェクトの対話をコントロールするマネージャオブジェクトを実行するためのプログラム命令を含む一つまたは複数のコンピュータ読取り可能媒体と、マネージャオブジェクトと通信する一つまたは複数の計算オブジェクト(26,28)と、モデルパラメータをコントロールする一つまたは複数の入力オブジェクト(14,16,18)と、計算変数の値を表示する一つまたは複数の出力オブジェクト(20,22,24)と、を備え、マネージャオブジェクト、入力オブジェクトの各々、及び出力オブジェクトの各々は、モデル固有情報ではコード化されず、そしてモデル固有情報はマネージャオブジェクトを通してパラメータ名または変数名によって伝達される。
一の実施形態では、モデル固有情報の伝達は、各オブジェクトのモデル固有情報を一のオブジェクトコールの一つ以上のパラメータとして供給することにより行なわれる。
さらに別の実施形態では、入力オブジェクト及び出力オブジェクトは視覚デバイスをユーザインターフェイスに送信する。さらに任意選択の形で、入力オブジェクトの視覚デバイスは、スライダ、ノブ、スイッチ、ボタン、及びマップの群から選択され、そして出力オブジェクトの視覚デバイスは、グラフ、アニメーション、及び表示器の群から選択される。さらに別の任意選択の実施形態では、システムは、中央プロセッサと通信し、かつ、アニメーションを対話型で構築するためのプログラム命令を含む第5コンピュータ読取り可能媒体を備える。
さらに別の実施形態では、ユーザインターフェイスは外部ハードウェアデバイスに接続され、そして種々の実施形態では、外部ハードウェアデバイスは、ノブ、スイッチ、変換アナログ電圧、表示器、コントロール中継器、デジタルコントロール、またはアナログコントロールとすることができる。
別の実施形態では、計算オブジェクトは、モデルオブジェクト、またはモデルオブジェクト及びソルバーオブジェクトを含む。さらに任意選択の形で、モデルオブジェクトは、自動求解アルゴリズムが適用可能な数学方程式または論理方程式を実行する命令を含む。さらに別の任意選択の実施形態では、方程式は、線形代数方程式及び非線形代数方程式、常微分方程式及び偏微分方程式、差分方程式、ブール(boolean)方程式、セルラーオートマタ、及び関数生成を含む群から選択される。ソルバーオブジェクトはまた、一般解の求解アルゴリズムを実行するための命令を含む。さらに別の実施形態では、中央プロセッサと通信し、かつモデルオブジェクトを対話型で構築するためのプログラム命令を含む第6コンピュータ読取り可能媒体を追加することができる。
別の実施形態では、コンピュータ読取り可能媒体の内の一つまたは複数は中央プロセッサとネットワークを通して通信し、そしてさらに別の実施形態では、一つまたは複数のオブジェクトを実行するためのプログラム命令はリモートプロセッサで実行する。
他の実施形態では、ウェブページを第1ユーザインターフェイス、第2ユーザインターフェイス、または第1ユーザインターフェイス及び第2ユーザインターフェイスに表示する、またはウェブページを対話型で構築するためのプログラム命令を加えることができる。
種々の実施形態では、第1ユーザインターフェイス及び第2ユーザインターフェイスは同じではなく、そして種々のコンピュータ読取り可能媒体は同じではない。
対話型計算をウェブページに構築するシステムを開示するものであり、このシステムは、コンピュータ読取り可能媒体に保存されるプログラム命令を実行する中央プロセッサ手段と、中央プロセッサに接続され、かつプログラム対話をコントロールする管理手段を実行するためのプログラム命令を含むコンピュータ読取り可能媒体手段と、管理手段と通信する計算手段と、モデルパラメータをコントロールし、かつ管理手段と通信する入力手段と、計算変数の値を表示し、かつ管理手段と通信する出力手段と、を含み、管理手段、入力手段の各々、及び出力手段の各々は、モデル固有情報ではコード化されず、そしてモデル固有情報は管理手段を通してパラメータ名または変数名によって伝達される。
対話型計算をウェブページに構築する方法を開示するものであり、この方法は、コンピュータ読取り可能媒体に保存されるプログラム命令を実行する中央プロセッサを設ける工程と、中央プロセッサに接続され、かつ次の複数のオブジェクトを実行するためのプログラム命令を含むコンピュータ読取り可能媒体を設ける工程と、を備え、複数のオブジェクトは、オブジェクトの対話をコントロールする管理オブジェクトと、管理オブジェクトと通信する一つまたは複数の計算オブジェクト(26,28)と、モデルパラメータをコントロールし、かつ管理オブジェクトと通信する一つまたは複数の入力オブジェクト(14,16,18)と、計算変数の値を表示し、かつ管理オブジェクトと通信する一つまたは複数の出力オブジェクト(20,22,24)と、を含み、管理オブジェクト、入力オブジェクトの各々、及び出力オブジェクトの各々は、モデル固有情報ではコード化されず、そしてモデル固有情報を管理オブジェクトを通してパラメータ名または変数名によって伝達する工程と、を備える。さらに別の実施形態では、モデル固有情報の伝達は、各オブジェクトのモデル固有情報を各オブジェクトコールの一つまたは複数のパラメータとして供給することにより行なわれる。
対話型計算をウェブページにユーザシステムをコントロールしながら構築する方法を開示するものであり、この方法は、ウェブページにアクセスする工程と、ユーザ定義の方程式を入力する工程と、標準視覚オブジェクトのライブラリにアクセスし、そして標準視覚オブジェクトの内の一つ以上を選択する工程と、マークアップ言語コードを標準視覚オブジェクトの各々に一致させる工程と、そして標準視覚オブジェクトのレイアウトをウェブページに生成する工程と、を備える。
対話型計算をウェブページに構築する方法を開示するものであり、この方法は、ユーザ定義の方程式を受信する工程と、標準視覚オブジェクトのライブラリを供給する工程と、 一つ、または一つよりも多くの標準視覚オブジェクトの各々をマークアップ言語ソースコードに関連付ける情報を受信する工程と、そしてレイアウト情報を受信し、そして視覚オブジェクトのレイアウトをウェブページに表示する工程と、を備える。
本発明のこれらの特徴及び他の特徴、態様、及び利点は、次の記載、添付の請求項、及び添付の図面を参照することにより一層深く理解できるものと考える。
本発明は、対話型計算をウェブページに構築するために要求される作業を大きく減らし、かつ、要求されるスキルレベルを大きくに下げる新規のソフトウェアアーキテクチャである。このアーキテクチャを図2に図示する。この図は、図1に示すものと同様なウェブページ計算の内部構造を示している。
図1を参照すると、この図には教育目的のウェブページの一例が示されており、このウェブページは次のような説明を行なっている。「2つのコンパートメントモデル。これらのコンパートメントモデルを使用して薬が体内に入った後に薬がどのようになっていくのかを学習する。各コンパートメントは、学習対象の薬または化学物質を含む理想化した容積であり、そしてこのモデルはこれらコンパートメント間の薬の移動を表わす。体を、薬が入って行く領域を表わすコンパートメントに分割し、幾つかの領域は、肝臓のような解剖学上の臓器から成り、他の領域は循環血液量のような体内における広がりである。以下に示す例は、体の非常に簡易化した2つのコンパートメントを示しており、全ての血漿量を左のコンパートメント(青)に、そして全ての追加の血管組織を右のコンパートメント(緑)に一まとめにしている。シミュレーションの開始時に、或る量の薬を血漿コンパートメントに加える。シミュレーション中に、薬は組織コンパートメントに向かって流れ、そして血漿から流れ出る(排出される)」。
図1で表わされるウェブページが動作すると、ポイントがグラフに現われ、そして値が説明ボックスに現われる。
図2のボックスの各々は、汎用コンピュータ言語で入力されたコードオブジェクトを表わす。これらの個々のコードブロックは独立スレッドとして動作し、そして互いに汎用言語を実行するバーチャルマシーンを通じて通信する。汎用コードブロックは、ウェブページのコンテンツ及びレイアウトを記述するマークアップ言語のコードにより、ブラウザプラグインを通してコントロールする。新規のアーキテクチャを例示するために使用する特定の実施形態では、HTML及びJava(登録商標)をそれぞれマークアップ言語及び汎用コンピュータ言語として選択するが、本開示を参照するこの技術分野の当業者には明らかなように、他のマークアップ言語及び汎用コンピュータ言語も使用することができる。
ここで、図に示すオブジェクトには3つのタイプがあることに注目されたい。すなわち、モデルパラメータをコントロールする入力オブジェクト14、16及び18、算出変数の値を表示する出力オブジェクト20、22及び24、そしてコントロール及び計算オブジェクト10、12、26、28、30及び32である。
最初の2つのタイプはそれぞれ視覚的強調をウェブページに有する。3つ目のタイプは一組のボタン(12)によってのみ視覚的に表現してシミュレーションを開始、または中断し、或いは変数及び出力表示をリセットし、その間、他のオブジェクトは見えない。
モデルを除くと、図2のオブジェクトの各々は通常の方法で構成およびコード化され、モデル固有の情報及びコンフィグレーション固有の情報はコードに含まれない。各オブジェクトに関するモデル固有の情報及びコンフィグレーション固有の情報は、HTMLページの〈OBJECT〉コールのパラメータ値を通して供給される。例えば図2では、スライダ1がモデルのパラメータをコントロールする。このパラメータの名前、及びこのページに必要なスライダの他の特性(例えば、スライダで利用可能な最大値及び最小値、利用可能なステップサイズなど)は、HTMLページの〈OBJECT〉コールに入力する。計算を行なうためのパラメータ値はモデルオブジェクトに保存し、そしてスライダ1はそのメモリ位置にマネージャオブジェクトを通してアクセスする(図の黒矢印で示すデータ経路)。ユーザがスライダの位置を変更するときは必ず、新規の値が読み出され、そしてモデルオブジェクトに保存されるので、更新値は他のオブジェクトが利用することができ、かつ計算に使用することができる。出力オブジェクトは、各変数に名前でアクセスするマネージャオブジェクトを通して、モデルパラメータ及び算出変数に同じ態様で接続される。各出力オブジェクトは、パラメータが変わる、または計算ステップが完了し、そして新規の値を表示する準備が整ったときにマネージャオブジェクトから通知を受ける。
新規のアーキテクチャにより、オブジェクトの全てが異なるウェブページで広く、かつ頻繁に使用することができ、かつ計算が記録操作を伴わずに行なうことができる。ウェブページ計算を構築するために必要な、モデルを除くオブジェクトの全ては、モデル固有の情報を含まないので、汎用性があり、再利用できる。コード化オブジェクトのライブラリを作成し、そして対話型計算ウェブページを、ページに必要なオブジェクトのみをコールするための〈OBJECT〉コールを使用することにより構築する。この操作は、全ページのコード、すなわち対話コード及び計算コードを入力するよりもずっと簡単で、エラーを起こし難い。計算オブジェクトの選択操作及び骨組みウェブページ(〈OBJECT〉コールのみ)の構築操作さえも、ページビルダー用にウィザードビルダープログラム(ページビルダーの対話型クエリ)を使用して簡易化することができる。モデルオブジェクトを構築するにはかなりのプログラミングスキルが必要であるが、このスキルはコードテンプレートを使用する、またはユーザがモデル記述を異なる形式で作成することができる独立プログラムを使用することにより軽減することができる。
共通のバーチャルマシーンを通して通信するウェブページの複数のオブジェクトは、それ自体が新規のアーキテクチャではない。新規なのは、モデル固有の情報をマネージャオブジェクトを通してパラメータ名または変数名により伝達することである。この伝達は、オブジェクトに汎用性を持たせるために重要である。また、新規のアーキテクチャによってモデル情報を一つのウェブページから別のウェブページに持ち越すことができる。例えば、特定のシステムの学習モジュールには、学習目標が次から次へと出てくる様々なウェブページが必要であることが考えられ、このアーキテクチャによって、一つのモデルおよびそのモデルの状態を、必要なだけ何ページにでも維持することができる。
一つ以上のモデルパラメータをコントロールする入力オブジェクトは多くの形をとり得る。画面に表示される視覚デバイスは、例えばスライダ、ノブ、スイッチ、ボタン及びマップ(異なる位置をクリックすることにより値が選択される)を含むことができる。入力オブジェクトは、ノブ、トラックボールまたはレバーのような外部ハードウェアデバイスへの接続、デジタル値に変換される電圧または電流の入力、またはハードディスクファイルのようなデータストレージとすることもできる。
計算変数及びパラメータ値を表示する出力オブジェクトも多くの形を採り得る。画面上の視覚デバイスは、固定スケールまたはスクロールスケール付きのグラフ、アニメーション、及び「表示灯」のような他の表示器を含むことができる。出力オブジェクトはまた、コントロール中継器、表示器、及び他の外部ディスプレイのようなハードウェアデバイス、物理プロセスのアクチュエータ、及びハードディスクファイルのようなデータストレージに接続することができる。
ランコントロール及びコントロールパネルという対のオブジェクトは、(休止状態と対比して)計算操作が生じた場合、及びモデルがその初期値にリセットされる場合に管理を行う。コントロールパネルには、例えば3つのボタン(「ストップ」,「ラン/ポーズ」及び「リセット」)や、動いて計算が起動中であることを示すような視覚デバイスなど、画面上で視覚に訴えるものが存在する。
モデルオブジェクトは任意のタイプの、または組合せの数学方程式または論理方程式を含むことができ、これらの方程式には自動求解アルゴリズムを適用することができ、このアルゴリズムは、線形及び非線形代数方程式、常微分方程式及び偏微分方程式、差分方程式、論理(ブール:boolean)方程式、セルラーオートマタ、関数生成、または方程式、近似式、及びテーブルルックアップ/補間を含む統計を含む。モデルオブジェクトは、リモートコンピュータまたはスーパーコンピュータにデータネットワークを通しての接続を含むことができ、この場合、計算は離れた場所で行なわれ、例えば一つまたは複数の計算オブジェクトを実行するプログラム命令がリモートプロセッサで実行され、そして計算結果がモデルオブジェクトに返される。
ソルバーオブジェクトは上に列挙した様々なタイプの方程式用の汎用求解アルゴリズムのライブラリから選択することができる。これらのアルゴリズムは多くの出版物及び記事に開示され、文書化されている。
マルチオブジェクトアーキテクチャはネットワーク接続により実行することができる。換言すれば、個々のオブジェクトは、ネットワーク接続によりリンクされる、異なるコンピュータに位置することができる。これにより分散計算が可能になり、例えば一つ以上のワークステーションへの対話型入力によるシミュレーション・測定・またはコントロール、
別のコンピュータ(スーパーコンピュータ?)上でのコンピュータ操作、及びさらに別のコンピュータにおける出力表示またはコントロール、などが可能になる。
本システムの一実施形態を実現するのに十分な操作の一実施形態に関する記述をテーブル1の説明及び擬似コードに示す。
表1
オブジェクトコードの記述
基本要件及びシステム初期化:
1.アーキテクチャはスレッド同期するマルチスレッド操作及び方法を実行できるバーチャルマシーンを使用する。オブジェクトの幾つかはマークアップ言語から開始し、そしてこれらのオブジェクト固有のスレッドで動作する。今度は、これらのオブジェクトが他のオブジェクトを開始させる。オブジェクトを読み出す順序は決まっておらず、ランダムと考えられる。しかしながら、正しい操作を行なうにはコアオブジェクトを順番に生成する必要がある。読み出す第1オブジェクトはマネージャを生成する。ランコントロール及びモデルイニシャライザは次に初期化される必要がある。他のオブジェクトは初期化されるために、このシーケンスが完了するまで待機する。
2.マネージャ,ランコントロール,モデルイニシャライザ,及びコントロールパネルそれぞれのオブジェクト毎に一のインスタンスのみがバーチャルマシーンに含まれる必要がある。一旦生成されると、マネージャは全てのページに残るが、他の3つのオブジェクトはそれぞれ新規のページに配置される。
3.マークアップ言語から開始する全てのオブジェクトはこれらのオブジェクトのパラメータ値により構成され、これらのパラメータ値はモデル変数及びモデルパラメータとの接続だけでなく視覚表示及びスケーリングを含む。初期化の間、全てのオブジェクトはマネージャとの接続を行なう。
4.モデルイニシャライザのパラメータにより、何のモデルクラス及びソルバークラスが生成されるのかを、これらのクラスが必要とするパラメータとともに指定する。
5.入力オブジェクトの場合、初期化は次のステップから成る。
マネージャとの接続を行なう。
マネージャの入力リストに追加する。
パラメータをマークアップコードから読み出す。
マークアップコードのパラメータ名がモデル中の名前と一致しない場合、エラーとする。
マネージャからモデル中のパラメータのインデックスを取得する。
このパラメータにバインドされたオブジェクトのマネージャリストに追加する。
「初期値」パラメータが在る場合:
マネージャにリクエストしてモデル中の値を更新する。
マネージャにリクエストしてパラメータにバインドされた全てのオブジェクトを更新する。
次のオブジェクトに、初期化を行なうために待機するように通知する。
6.出力オブジェクトの場合、初期化は次のステップから成る。
マネージャとの接続を行なう。
マネージャの出力リストに追加する。
パラメータをマークアップコードから読み出す。
マークアップコード中で名前を付与されている全てのモデルパラメータに対して名前がモデル中の名前と一致しない場合、エラーとする。
マネージャからモデル中のパラメータのインデックスを取得する。
このパラメータにバインドされたオブジェクトのマネージャリストに追加する。
マークアップコード中で名前を付与されている全てのモデル変数に対して、
名前がモデル中の名前と一致しない場合、エラーとする。
マネージャからモデル中の変数のインデックスを取得する。
次のオブジェクトに、初期化を行なうために待機するように通知する。
7.全てのオブジェクトが初期化された後、システムが初期化され、そして動作する準
備が整う。
動作(ラン)準備:
モデルが動作する準備が整い、そして入力オブジェクトがモデルパラメータの変更をリクエストする場合、
マネージャにリクエストしてモデルパラメータの値を更新する。
マネージャにリクエストしてパラメータにバインドされた入力及び出力を更新する。
モデルを実行(ラン)する:
計算はランコントロールオブジェクトのランループによりコントロールされる。ランループは連続モードで、または設定した反復回数で動作することができる。
動作(ラン)前:ランループが開始する前に、ランコントロールはマネージャにリクエストしてコントロールパネル、及び実行用の全ての入力及び出力を準備する。
スタート:ランループの開始は、システムが初期化された後、またはユーザ操作(例えば、コントロールパネルのRunボタンをマウスクリックする)に応答して自動的に行なわれる。ループの各反復において、
時間ステップをインクリメントする。
マネージャにリクエストして、
時間の値をモデルに渡す。
モデルにリクエストしてこの時間に対応する変数の新規の値を要求する。
モデルは、適宜ソルバーの助けを借りて、モデル変数の各々に対応する新規の値を計算する。
マネージャにリクエストして更新値をマネージャの出力リストの出力に送信する。
出力がそれら自体を更新する。
ポーズ:
マネージャにリクエストしてランループを中断する。
マネージャにリクエストしてマネージャの出力リストの出力の中断方法を呼び出す。
再開:
マネージャにリクエストしてマネージャの出力リストの出力の再開方法を呼び出す。
マネージャにリクエストしてランループを再開する。
ストップ/リセット:
マネージャにリクエストして
ランループが実行中である、または中断している場合、ランループを中止する。
マネージャの出力リストの全ての出力をリセットする。
ランコントロールをリセットする。
コントロールパネルに準備させて次の実行に備える。
任意選択の形で、
モデルパラメータをそれらのデフォルト値にリセットする。
これらのパラメータにバインドされた全ての入力及び出力を更新する。
モデル変数を更新する。
マネージャの出力リストの全ての出力を更新する。
実行後(ポストラン):ランループの最後の反復の後、全ての必要な実行後プロシージャを行なうためにマネージャ経由でランコントロールからのリクエストをコントロールパネル、及び全ての入力及び出力に対して行なう。
リモートオブジェクト:
リモート操作により相互対話が、共にオブジェクト技術によって構築される一つのコンピュータの「メイン」ページと、別のコンピュータの「リモート」ページとの間のネットワークを通して可能になる。共通にアクセス可能な独立サーバの「オブジェクト空間」を使用して、モデル情報及びランコントロール情報を「メイン」ページのマネージャと「リモート」ページのリモートマネージャとの間で伝達する。マネージャのようなリモートマネージャは、全てのページに残るユーザのバーチャルマシーンの一つの固有オブジェクトである。メインページとは異なり、リモートページはランコントロールオブジェクトまたはモデルイニシャライザオブジェクトを必要とせず、全ての必要なモデル情報及びコントロール情報はリモートマネージャがオブジェクト空間を通じて利用することができる。メインページの変数/パラメータ更新値はリモートページに特定のリモート出力オブジェクトによって送信される。リモート出力がマネージャによって更新されると、リモート出力はパラメータ情報または変数情報をオブジェクト空間に送信する。リモートマネージャはオブジェクト空間をモニターし、そしてパラメータにバインドされた入力、または変数を監視している出力を更新する。同じようにして、リモートマネージャはリモートユーザが行なったパラメータの変更をメインページに、新規のパラメータ情報をオブジェクト空間に格納することにより通知する。マネージャはオブジェクト空間をモニターし、モデルパラメータ値を更新し、そして着目するパラメータにバインドされた入力及び出力に通知する。
上述したシステムの初期化にはリモートコンフィグレーションに次の変更を行なう必要がある。
モデルイニシャライザマークアップパラメータがリモートコンフィグレーションを示す場合、
マネージャにリクエストして、
オブジェクト空間を生成し、初期化する。
モデル変数名及びモデルパラメータ名をオブジェクト空間に加える。
必要なランコントロール情報をオブジェクト空間に加える。
パラメータ値情報をオブジェクト空間に加える。
リモート出力を生成する。
全てのモデルパラメータをリモート出力オブジェクトににバインドする。
リモート出力をマネージャの出力リストに加える。
オブジェクトがリモート入力である場合、上述の入力初期化において「マネージャ」を「リモートマネージャ」に置き換える。
オブジェクトがリモート出力である場合、上述の出力初期化において「マネージャ」を「リモートマネージャ」に置き換える。
上述のランの準備を行なうには、リモートコンフィグレーションに次の変更を行なう必要がある。
リモート入力オブジェクトがモデルパラメータを変更する場合、
リモートマネージャにリクエストして、
オブジェクト空間のパラメータの値を更新する。
パラメータにバインドされたリモート入力を更新する。
上述のモデルを実行するにはリモートコンフィグレーションに次の変更を行なう必要がある。
リモート入力及びリモート出力を考慮すると、「マネージャ」は通常、「リモートマネージャ」に置き換えることができる。
オブジェクト空間の事前/事後の実行(ラン)及びコントロール操作(例えばリセット)にも適切な注意を払う必要がある。
表1の終了
このような実施形態においてHTMLページとして使用可能なサンプルHTMLコードを付録Aに示す。サンプルHTMLコードは、対話型ページに必要なオブジェクトをどのようにして記述するのかについてのみ示している。示していないのはHTMLコードの行であり、HTMLコードはこれらのオブジェクトをページに配置する、またはテキスト及び他のグラフィックをページに取り込むのに必要である。何故なら、これらの機能はHTML言語において標準のものであり、そして新規の技術が生まれても変わらないからである。本開示を参照することによりこの技術分野の当業者には明らかであるように、他の実施形態も可能である。
元はと言えば、対話型シミュレーションが教育用途に必要であることから分かったことであるが、新規のアーキテクチャはずっと広い用途を有しており、これらの用途には、全てのレベルでの学習シミュレーションまたはシミュレーション駆動型アニメーション、幼稚園から卒業及び専門に渡るトレーニング、計測、測定、及びウェブインターフェイス利用のデータ記録、ウェブインターフェイス利用のプロセスコントロールまたはデバイスコントロール、ロボティクス、及び測定、計算及びコントロールの何らかの組合せを含む複合用途、研究室または教室における連携学習(ネットワーク化したオブジェクト)、及び複数の地理的サイトをリンクする連携研究、が含まれる。市販のウェブページでさえ対話型計算を使用して見積もり及び他の評価をユーザ用にカスタマイズすることができる。
一の実施形態では、予めプログラムされたオブジェクトのライブラリのみを市場に出すことが可能である。ユーザは、ウェブページのマークアップ言語(例えばHTML)コードの入力に慣れている必要があり、そしてモデルオブジェクトを記述するある程度のプログラミング経験が必要であろう。
別の実施形態では、HTMLコードを組み立てるための対話型のビルダープログラムをオブジェクトライブラリに加える。本実施形態では、HTML記述技能は必要ではないと思われる。
さらに別の実施形態では、モデルオブジェクトを構築するための対話型プログラムを使用して、プログラミング技能を全く必要としないようにする。
さらに別の実施形態では、アニメーションの構築に役立つ対話型描画プログラムを加え、多用途かつ視覚ウェブシミュレーションを最小限の特殊技能で構築することができる。
対話型計算をウェブページにユーザシステムをコントロールすることによって構築する方法を開示するが、この方法は、ウェブページにアクセスする工程と、ユーザ定義の方程式を入力する工程と、標準視覚オブジェクトのライブラリにアクセスし、そして標準視覚オブジェクトの内の一つ以上を選択する工程と、マークアップ言語コードを標準視覚オブジェクトの各々に一致させる工程と、そして標準視覚オブジェクトのレイアウトをウェブページに生成する工程と、を備える。
対話型計算をウェブページに構築する方法について記載するが、この方法は、ユーザ定義の方程式を受信する工程と、標準視覚オブジェクトのライブラリを供給する工程と、一つまたは複数の標準視覚オブジェクトの各々をマークアップ言語ソースコードに関連付ける情報を受信する工程と、そしてレイアウト情報を受信し、そして標準視覚オブジェクトのレイアウトをウェブページに表示する工程と、を備える。
本発明を実施することができる代表的なユーザシステムはこの技術分野の当業者には明らかであると考えられる。一つの代表的なユーザシステムは、情報を伝達するバスまたは他の内部通信手段、及びバスに接続されて情報を処理するプロセッサを含む。このようなシステムはさらに、ランダムアクセスメモリ(RAM)または他の揮発性記憶装置(メインメモリと呼ぶ)を備え、このメモリまたは装置はバスに接続されて情報またはプロセッサが実行する命令を保存する。メインメモリを使用して一時変数または他の中間情報をプロセッサによる命令の実行中に保存することもできる。このシステムはまた、バスに接続されて静的情報及びプロセッサの命令を保存するリードオンリーメモリ(ROM)及び/又はスタティックメモリ装置、及び磁気ディスクドライブまたは光ディスクドライブのような大容量記憶装置を備えることができる。
大容量記憶装置はバスに接続することができ、そして通常、磁気ディスクまたは光ディスクのようなコンピュータ読取り可能媒体に使用されて情報及び命令を記憶する。システムはさらに、陰極線管(CRT)または液晶表示(LCD)のような表示装置に接続されて情報をコンピュータユーザに対して表示する。英数字キー及び他のキーを含む英数字入力デバイスもバスに接続され、これにより選択される情報及び命令をプロセッサに送信することができる。
本明細書で使用するように、「コンピュータ読取り可能媒体」は現存する、または将来開発されるコンピュータ読取り可能媒体の全てを指し、これらの媒体はデータを保存し、高速に読み出すのに適しており、これらの媒体には、これらには限定されないが、ハードドライブ、RAM、コンパクトディスク(「CD」)、及びDVDが含まれる。また、コンピュータ読取り可能媒体は2つのリンクしたハードドライブのような複数のデバイスを含むことができる。
通信装置はバスに接続され、ネットワークコンピュータシステムの他のノード、または他のコンピュータ周辺機器にアクセスする際に使用される。この通信装置は、イーサネット(登録商標)、トークンリング、インターネット、または広域ネットワークとの接続を行なうために使用するような多くの市販のネットワーキング周辺装置のいずれかを含むことができる。この通信装置はまた、どのような数の市販の周辺装置を含むこともでき、これらの周辺装置はスキャナー、端末、特殊仕様プリンタ、または音声入力/出力装置のようなリモートコンピュータ周辺機器と通信するように構成される。通信装置はまた、RS232または他の従来のシリアルポート、従来のパラレルポート、小型コンピュータシステムインターフェイス(SCSI)ポート、または他のデータ通信手段を含むことができる。赤外線IRDAプロトコル、拡散スペクトラム、または無線LANのようなデータ伝送装置から成る無線手段を使用することができる。
しかしながらこの技術分野の当業者であれば、種々のシステムアーキテクチャからなる他の別のシステムも使用することができることが明らかであろう。
本発明を実施するソフトウェアは、プロセッサにアクセス可能なメインメモリ、大容量記憶装置、または他の記憶媒体に保存することができる。この技術分野の当業者であれば、本明細書に記載する方法及びプロセスは、メインメモリまたはリードオンリーメモリに保存されるソフトウェアとして実行し、そしてプロセッサによって実行することができることが明らかであろう。このソフトウェアはまた製造製品にも格納することができ、この製造製品はコンピュータが使用可能な大容量記憶媒体を含み、この媒体はコンピュータ読取り可能プログラムコードを有し、このプログラムコードは媒体に埋め込まれ、かつ大容量記憶装置によって読み取り可能になっており、そしてこのプログラムコードによってプロセッサはデジタル情報ライブラリのトランザクション及びプロトコルを本明細書の示唆に従って実行することができる。
上記明細書では、本発明はその特定の実施形態を参照しながら記載されてきた。しかしながら、種々の変形及び変更を本発明に、本発明の広い技術思想及び技術範囲から逸脱しない範囲において加え得ることは明らかであろう。例えば、入力オブジェクト及び出力オブジェクトは、ノブ、スイッチのような外部ハードウェア、または入力または表示器用の変換アナログ電圧、コントロール中継器、または出力用のデジタルまたはアナログコントロールへの接続とすることができる。モデルオブジェクトはリモートコンピュータまたはスーパーコンピュータへの接続を含むことによって数値計算の遠隔操作が可能になり、この場合、計算変数値はモデルオブジェクトに戻されて保存され、そして出力される。従って、本明細書及び図面は例示として考えられるべきであり、本発明を制限するためのものではない。本発明はこのような実施形態によって制限されると解釈されるべきではなく、以下に示す請求項に従うものと解釈されるべきであることが理解されるであろう。
付録A
オブジェクトを使用するサンプルHTMLページ;レイアウトまたは他のコンテンツは添付せず
Figure 0004187107
Figure 0004187107
Figure 0004187107
Figure 0004187107
Figure 0004187107
本発明のマルチオブジェクト計算アーキテクチャを使用し、Java(登録商標)オブジェクトによって構成される教育ウェブページの例を示す。 本発明のマルチオブジェクトウェブページ計算アーキテクチャのブロック図である。

Claims (16)

  1. 対話型計算をウェブページに構築するシステムであって、
    一つまたは複数のコンピュータ読取り可能媒体に保存されるプログラム命令を実行する中央プロセッサと、
    プログラム対話をコントロールする管理手段と、
    前記管理手段との間でデータの伝送を実行する一つまたは複数の計算手段と、
    モデルパラメータをコントロールし、かつ前記管理手段との間でデータの伝送を実行する一つまたは複数の入力手段と、
    計算変数の値を表示し、かつ前記管理手段との間でデータの伝送を実行する一つまたは複数の出力手段と、を含み、
    前記管理手段、前記一つまたは複数の計算手段、前記一つまたは複数の入力手段並びに前記一つまたは複数の出力手段は、それぞれいずれかの前記コンピュータ読取り可能媒体に保存されるプログラム命令を前記中央プロセッサにより実行することで実現され、
    前記管理手段、前記一つまたは複数の入力手段並びに前記一つまたは複数の出力手段が数値計算に関連するモデル固有情報を有さず、
    前記一つまたは複数の入力手段並びに前記一つまたは複数の出力手段が、マークアップ言語のパラメータ名または変数名を用いて、前記管理手段を通して、前記一つまたは複数の計算手段から数値計算に関連するモデル固有情報を取得する、システム。
  2. 数値計算に関連するモデル固有情報の前記伝達は、それぞれの前記入力手段または前記出力手段の数値計算に関連するモデル固有情報を一つのオブジェクトコールの一つ以上のパラメータとして供給することにより行なわれる、請求項1記載のシステム。
  3. 前記入力手段及び前記出力手段は視覚デバイスをユーザインターフェイスに送信する請求項1記載のシステム。
  4. 前記入力手段の前記視覚デバイスは、スライダ、ノブ、スイッチ、ボタン、及びマップの群から選択され、そして前記出力手段の前記視覚デバイスは、グラフ、アニメーション、及び表示器の群から選択される、請求項3記載のシステム。
  5. アニメーションを対話型で構築するためのプログラム命令が前記コンピュータ読取り可能媒体に保存される、請求項4記載のシステム。
  6. 前記ユーザインターフェイスは外部ハードウェアデバイスに接続される請求項3記載のシステム。
  7. 前記外部ハードウェアデバイスは、ノブ、スイッチ、変換アナログ電圧、表示器、コントロール中継器、デジタルコントロール、またはアナログコントロールである、請求項6記載のシステム。
  8. 前記計算手段は、モデルオブジェクト、またはモデルオブジェクト及びソルバーオブジェクトを含む、請求項1記載のシステム。
  9. 前記モデルオブジェクトは、自動求解アルゴリズムが適用可能な数学方程式または論理方程式を実行する命令を含む、請求項8記載のシステム。
  10. 前記方程式は、線形代数方程式及び非線形代数方程式、常微分方程式及び偏微分方程式、差分方程式、ブール(boolean)方程式、セルラーオートマタ、及び関数生成を含む群から選択される、請求項9記載のシステム。
  11. 前記ソルバーオブジェクトは一般解の求解アルゴリズムを実行する命令を含む請求項8記載のシステム。
  12. 前記モデルオブジェクトを対話型で構築するためのプログラム命令が前記コンピュータ読取り可能媒体に保存される、請求項8記載のシステム。
  13. 前記コンピュータ読取り可能媒体の内の一つ以上は前記中央プロセッサとネットワークを通してデータの伝送を実行する請求項1記載のシステム。
  14. 一つまたは複数の前記入力手段または前記出力手段を実行するための前記プログラム命令はリモートプロセッサで実行する請求項13記載のシステム。
  15. 対話型計算をウェブページに構築する方法であって、
    コンピュータ読取り可能媒体に保存されるプログラム命令を実行する中央プロセッサを設ける工程と、
    前記中央プロセッサに接続され、かつ次の複数のオブジェクトを実行するプログラム命令を含むコンピュータ読取り可能媒体を設ける工程と、を備え、これらの複数のオブジェクトは、
    オブジェクトの対話をコントロールする管理オブジェクトと、
    前記管理オブジェクトとの間でデータの伝送を実行する一つまたは複数の計算オブジェクト(26,28)と、
    モデルパラメータをコントロールし、かつ前記管理オブジェクトとの間でデータの伝送を実行する一つまたは複数の入力オブジェクト(14,16,18)と、
    計算変数の値を表示し、かつ前記管理オブジェクトとの間でデータの伝送を実行する一つまたは複数の出力オブジェクト(20,22,24)と、を含み、
    数値計算に関連するモデル固有情報を有さない前記一つまたは複数の入力オブジェクト並びに前記一つまたは複数の出力オブジェクトが、マークアップ言語のパラメータ名または変数名を用いて、数値計算に関連するモデル固有情報を有さない前記管理オブジェクトを通して、前記一つまたは複数の計算オブジェクトから数値計算に関連するモデル固有情報を取得する工程と、
    を備える方法。
  16. 数値計算に関連するモデル固有情報の前記伝達は、各オブジェクトの数値計算に関連するモデル固有情報を一つのオブジェクトコールの一つ以上のパラメータとして供給することにより行なわれる、請求項15記載の方法。
JP2003571905A 2002-02-25 2003-02-25 対話型計算をウェブページに構築するシステム Expired - Fee Related JP4187107B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US31912302P 2002-02-25 2002-02-25
PCT/US2003/006276 WO2003073279A1 (en) 2002-02-25 2003-02-25 System for building interactive calculations on web pages

Publications (2)

Publication Number Publication Date
JP2005525624A JP2005525624A (ja) 2005-08-25
JP4187107B2 true JP4187107B2 (ja) 2008-11-26

Family

ID=27765907

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003571905A Expired - Fee Related JP4187107B2 (ja) 2002-02-25 2003-02-25 対話型計算をウェブページに構築するシステム

Country Status (4)

Country Link
US (1) US7568181B2 (ja)
JP (1) JP4187107B2 (ja)
CA (1) CA2477187C (ja)
WO (1) WO2003073279A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10331608B2 (en) * 2017-09-22 2019-06-25 International Business Machines Corporation Replacing mechanical/magnetic components with a supercomputer
CN107992372A (zh) * 2017-12-13 2018-05-04 郑州云海信息技术有限公司 一种机箱信息交互方法、系统、设备及计算机存储介质

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5675752A (en) * 1994-09-15 1997-10-07 Sony Corporation Interactive applications generator for an interactive presentation environment
US5983190A (en) * 1997-05-19 1999-11-09 Microsoft Corporation Client server animation system for managing interactive user interface characters
US6509913B2 (en) 1998-04-30 2003-01-21 Openwave Systems Inc. Configurable man-machine interface
US6083276A (en) * 1998-06-11 2000-07-04 Corel, Inc. Creating and configuring component-based applications using a text-based descriptive attribute grammar
US6505343B1 (en) * 1998-12-31 2003-01-07 Intel Corporation Document/view application development architecture applied to ActiveX technology for web based application delivery
US6340977B1 (en) * 1999-05-07 2002-01-22 Philip Lui System and method for dynamic assistance in software applications using behavior and host application models
US6356279B1 (en) * 1999-07-30 2002-03-12 Curl Corporation Processing of graphical objects with minimum and preferred sizes
AU1245501A (en) * 1999-11-01 2001-05-14 Curl Corporation System and method supporting nonlocal values
WO2001033337A2 (en) * 1999-11-01 2001-05-10 Curl Corporation System and method supporting property values as options
US6684385B1 (en) * 2000-01-14 2004-01-27 Softwire Technology, Llc Program object for use in generating application programs
US6425120B1 (en) * 2000-01-14 2002-07-23 Softwire Technology Llc Repeating program object for use with a graphical program-development system
GB2364140A (en) * 2000-06-07 2002-01-16 Robert Benjamin Franks Cost manager user interface in transaction processing system for online trade mark registration
WO2001098871A2 (en) 2000-06-19 2001-12-27 P.C. Krause And Associates, Inc. Distributed simulation
US7127705B2 (en) * 2000-09-06 2006-10-24 Oracle International Corporation Developing applications online
US6760905B1 (en) * 2000-09-21 2004-07-06 Curl Corporation Lazy compilation of template-generated classes in dynamic compilation execution environments
US7302675B2 (en) * 2001-08-14 2007-11-27 National Instruments Corporation System and method for analyzing a graphical program using debugging graphical programs

Also Published As

Publication number Publication date
JP2005525624A (ja) 2005-08-25
CA2477187C (en) 2011-08-02
US20050223351A1 (en) 2005-10-06
WO2003073279A1 (en) 2003-09-04
US7568181B2 (en) 2009-07-28
AU2003217847A1 (en) 2003-09-09
CA2477187A1 (en) 2003-09-04

Similar Documents

Publication Publication Date Title
Auber et al. TULIP 5
JP3084224B2 (ja) エキスパート・システムをオーサリングするシステム
Crespo et al. Use of ARIMA mathematical analysis to model the implementation of expert system courses by means of free software OpenSim and Sloodle platforms in virtual university campuses
CN107820602A (zh) 转换链兼容类的自动生成
Paternò ConcurTaskTrees: an engineered approach to model-based design of interactive systems
Reed et al. Developing interactive educational engineering software for the World Wide Web with Java
Bonaventura et al. Graphical modeling and simulation of discrete-event systems with CD++ Builder
Flotyński et al. Customization of 3D content with semantic meta-scenes
Plale et al. From interactive applications to distributed laboratories
US8140581B2 (en) Configurable view on data models
Maleki et al. Designing DEVS visual interfaces for end-user programmers
Mair et al. EQS goes R: Simulations for SEM using the package REQS
CN105260561B (zh) 一种复杂网络通用仿真系统
Amos-Binks et al. Planning graphs for efficient generation of desirable narrative trajectories
McGregor et al. Interactive visualization for testing markov decision processes: MDPVIS
JP4187107B2 (ja) 対話型計算をウェブページに構築するシステム
Funka-Lea et al. Interactive visual modeling for performance
Boroni et al. Engaging students with active learning resources: Hypertextbooks for the web
McDonald Interactive pushdown automata animation
Design et al. MIT Architecture
AU2003217847B2 (en) System for building interactive calculations on web pages
Sun et al. Simulation Integrated Management: A new type of simulation platform application for aerospace systems engineering
Kuester et al. Virtualexplorer: A plugin-based virtual reality framework
US20120180033A1 (en) System and Methodology for Autonomous, Value-Centric, Architectural, Software Programming
Vasev et al. On expressiveness of visualization systems' interfaces

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061201

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070116

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20070416

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20070425

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070531

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20071211

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080303

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080519

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20080618

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080819

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080903

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110919

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees