• 検索結果がありません。

仮想取引市場における自動取引ロボット実行の スケジューリング手法

N/A
N/A
Protected

Academic year: 2022

シェア "仮想取引市場における自動取引ロボット実行の スケジューリング手法"

Copied!
23
0
0

読み込み中.... (全文を見る)

全文

(1)

2004 年度卒業論文

仮想取引市場における自動取引ロボット実行の スケジューリング手法

提出日: 2005 年 2 月 2 日 指導:山名早人助教授

早稲田大学理工学部情報学科 学籍番号:1G01P088-2

深山 辰徳

(2)

概要

本稿では、カブロボ上でロボットを公平に実行するためのスケジューリング手法を提案 する。本稿で言う公平さとは、次の三つの条件を満たすものである。第一にすべてのロボ ットは少なくとも一度は実行される。第二に処理を完了することが出来ないロボットの実 行時間はすべて同じになる。第三に第一の条件と第二の条件を損なわない範囲で、時間は 余らないようにする。カブロボとは仮想証券取引市場の上でロボットが株式の取引を自動 で行うシステムがある。制限された時間の中で多数の様々なアルゴリズムを実装したロボ ットを限られた計算資源の中で実行しなければならない。従来のジョブスケジューリング 手法として地球シミュレータ用ジョブスケジューリングアルゴリズムの評価、時分割空間 分割スケジューリング、Grid 計算環境における予定ガント図を用いたジョブスケジューリ ングといったものがある。しかし、これらの研究には制限された時間内にジョブを公平に 実行するという概念が無いため、従来の手法を適用することができない。既存のカブロボ で実装されているロボット実行スケジューリングは単純にタイムアウトをある値で固定し、

制限時間内に処理が終わらなければ処理を打ち切るというものである。既存の手法では、

まったく実行されないロボットが出てくる可能性があるという問題がある。従って本稿で は、この問題に対してタイムアウトを動的に変更することで、出来る限りすべてのロボッ トに均等に処理の機会が与えられる手法を提案する。本手法では、各処理の完了後残りの 処理時間からタイムアウトを再設定し、残された時間を残りのロボットの処理に有効に活 用するものである。ただしタイムアウトを再設定するのみでは、ロボットを実行する順序 によってすべてのロボットの処理を完了することが出来ないという問題が残ってしまう。

そこで、後者の問題に対してタスクの実行順序を制御するための手法も提案する。

(3)

目次

第1章 はじめに...4

第2章 カブロボにおけるスケジューリング...8

2.1 カブロボとは...8

2.2 システム概要...9

2.3 カブロボにおけるスケジューリング... 10

第3章 関連研究... 15

3.1 地球シミュレータ用ジョブスケジューリングアルゴリズム[2]... 15

第4章 提案手法... 16

4.1 従来手法の問題点... 16

4.2 提案手法の概要... 17

4.3 実行例... 19

第5章 評価... 21

第6章 おわりに... 22

参考文献... 23

(4)

第1章 はじめに

本稿では、カブロボ上でロボットを公平に実行するためのスケジューリング手法を提案 する。本稿で言う 公平 とは、次の三つの条件を満たすものとして定義する。第一にす べてのロボットは少なくとも一度は実行される。第二に処理を完了することが出来ないロ ボットの実行時間はすべて同じになる。第三に第一の条件と第二の条件を損なわない範囲 で、時間は余らないようにする。

カブロボとは仮想証券取引市場の上でロボットが株式の取引を自動で行うシステムであ る。カブロボのシステムがロボットをタスクキューに登録してから実行するまでの一連の 流れは次の通りである。システムは毎日この一連の流れを相場の終了後に実行している。

1. 相場が終わり、終値が確定する。

2. タスクキューにすべてのロボットを登録する。

3. タスクキューに登録されているロボットを実行していく。

カブロボのシステムは有限な時間の中で多数の様々なアルゴリズムを実装したロボット を限られた計算資源の中で実行しなければならない。ロボットの処理が完了するまでにか かる時間は様々であり、予測は困難である。制限された時間の中で出来る限り多数のロボ ットの処理を完了したい。また、制限時間内にすべてのロボットの処理を完了することが 出来ない場合、出来る限りすべてのロボットに均等に処理する時間を割り振りたい。

従来、こうしたジョブスケジューリングに関連した研究に地球シミュレータ用ジョブス ケジューリングアルゴリズムの評価[2]、時分割空間分割スケジューリング[3]、Grid計算環 境における予定ガント図を用いたジョブスケジューリング[4]といったものがある。地球シ ミュレータのジョブスケジューリングアルゴリズムでは、ユーザが予めジョブの計算に必 要な時間とノード数を宣言する。ジョブの計算に必要な時間(宣言経過時間)とノード数 の少ないジョブほど優先度が高くなるというものである。しかし、今回の場合二つの理由 から、ロボットのアルゴリズムの処理に必要な時間をユーザが事前に計算し宣言すること

(5)

は困難である。第一に、すべてのユーザが情報科学の専門家ではなく、むしろ大多数のユ ーザは計算時間の見積もりができない素人である。第二に、ロボットのアルゴリズムによ っては、市場の局面によって実行時間がまちまちで、実行時間の予測が困難であることで ある。仮にすべてのユーザが実行時間を予測することが出来たとする。この場合優先度の 高いものから逐次実行されていくことになる。全ロボットの実行時間の総計が制限時間内 であれば問題はないが、制限時間を超えると処理が途中で打ち切られてしまう。するとま ったく実行されることのないロボットも出てきてしまう。これらの研究には、制限された 時間内にジョブを公平に実行するという概念が無いため、従来の手法を適用することがで きない。

カブロボにおいて公平ではない状況として3つのケースに分類することができる。以下 にその3つのケースと具体的な例を示す。3つのケースに共通した条件として、ロボット を処理するコンピュータは2台であり、18時間(2160分)以内に1日の処理を終わらせな ければならないというものがある。

ケース1:

タイムアウト時間内に処理を完了することが出来ないロボットがタスクキューの優先順 位の高いところに多数分布している場合。この場合途中で制限時間に達してしまい、以後 ロボットの処理をまったく実行することが出来なくなってしまう。

このケースでは、公平の第一の条件である すべてのロボットは少なくとも一度は実行 される と第二の条件である 処理を完了することが出来ないロボットの実行時間はすべ て同じになる を満たしていない。

具体的な例を挙げると次のようになる。登録されたロボット数は3000台とし、そのうち

の約30%のロボットが処理を完了する為に3分以上の時間を要し、それらのロボットが偶

然優先度の高い状態でスケジューリングされてしまった場合。

ケース2:

短時間で処理の終了してしまうロボットが多数存在し、最終的に時間が余ってしまう場

(6)

合。且つ、タイムアウトで処理が打ち切られてしまっているロボットが在る場合。この場 合、余った時間を処理が終わらなかったロボットに対して均等に分配したい。

このケースでは、公平の第三の条件である 処理の終わっていないロボットがある限り、

時間は余らないようにする を満たしていない。

具体的な例を挙げると次のようになる。登録されたロボット数は3000台とし、そのうち

の約90%のロボットが10秒程度で処理を完了することが出来る。残りの10%のロボット

の処理はいつ完了するかは分からないが、最低でも3分以上はかかる場合。

ケース3:

すべてのロボットがタイムアウト時間内に処理を終了することが出来ない場合。この場 合、どのような順序で実行したとしても必ず一度も実行されないロボットが出てきてしま う。

このケースでは、公平の第一の条件である すべてのロボットは少なくとも一度は実行 される と第二の条件である 処理を完了することが出来ないロボットの実行時間はすべ て同じになる を満たしていない。

具体的な例を挙げると次のようになる。登録されたロボット数は3000台とし、すべての ロボットの処理に3分以上の時間がかかってしまう場合。

既存のカブロボのシステムでは、ロボットのタイムアウトは静的に3分で固定されてい る。ケース1の場合、30%のロボットというと900台に相当する。900台のロボットが3 分間処理を実行してしまうと2700分が経過してしまう。2160分を超えた時点ですべての 処理は打ち切られてしまうので、結果的にロボット全体の 70%がまったく実行されない可 能性がある。ケース2の場合どのような順序でロボットを実行したとしても、18 時間以内 に処理を終えることは出来るが、時間が余ってしまう。余った時間は処理を完了すること が出来なかったロボットに均等に割り振りたい。ケース3の場合、何をどうやってもケー ス1と同様にまったく実行されないロボットが出てきてしまう。

(7)

そこでこの3つのケースの問題に対して、タイムアウトを動的に変更することで、出来 る限りすべてのロボットに公平に処理の機会を与えられる手法を提案する。本手法では、

各ロボットの処理完了後、残りの処理可能時間と残りのロボットからタイムアウトを動的 に再設定することで、すべてのロボットに公平に処理の機会を与えることを実現するもの である。

ただしケース1に関しては、タイムアウトを再設定するのみではケース2のように時間 が余る問題が発生してしまう。これは公平の第三の条件である 処理の終わっていないロ ボットがある限り、時間は余らないようにする を満たさない。そこで日々の処理にかか るロボットそれぞれの実行時間の履歴を取り、過去の実行時間の履歴を元にタスクキュー 内で事前に優先順位をつけることによって、この不公平さを解消する手法を提案する。

本稿ではこれより、第2章ではカブロボというシステムについて説明する。第3章では 関連する研究について紹介する。第4章では提案する手法を紹介する。第5章で提案する 手法の評価を行う。第6章でまとめを述べる。

(8)

第2章 カブロボにおけるスケジューリング

本章では、カブロボというシステムとそのスケジューリング手法について説明する。

2.1 カブロボとは

カブロボ[1]とは、正式にはカブロボ・コンテストという。PC上で動作するソフトウェア のロボット(ソフトウェア・エージェント)を作成し、株の売買を仮想証券会社に対して 自動で行い、その運用成績を競うものである。コンテスト期間中は、そのロボットに対し て参加者が指示を出すことはできない。参加者があらかじめ設定したプログラムに従って ソフトウェアのロボットが売買を行う。(株の銘柄と株価などは実際のものを用いる。)

カブロボ・コンテストは、プログラミングの未経験者から上級者まで、それぞれに楽し める工夫がされている。未経験者には、Web ブラウザを使ってコンピュータと対話しなが らアルゴリズムを設定できる「簡易ロボット」を提供する。またプログラム初心者でも大 会が提供する 「サンプルロボット」(プログラム・コード)を改造することで、ゲーム感 覚で楽しみながら最先端のプログラミング技術を身に付けていくことができる。

カブロボ・コンテストへの参加は無料で、必要な開発環境もインターネットから無料で ダウンロードできる。最大3名が1チームとなって参加する。

このコンテストでは、先進ソフトウェア技術であるLinux、Struts、Eclipseなどのオー プンソース・ソフトウェアや、プログラム言語「Java」を用いる。コンテストを通じ、オ ープンソース・ソフトウェアの普及に貢献することを目指している。

ロボットの処理は一日に一回、その日の終値が発表されてから、次の日の市場が開くま での間に行われる。この間に出来る限り多くのロボットの処理を完了し、処理が終わらな いものに関しては均等に処理の機会を割り当てる必要がある。

(9)

2.2 システム概要

カブロボのシステムには大きく分けて3つの機能を持ったコンピュータが存在する。

1.大会運営サーバー

大会運営サーバーは、カブロボのコンテストを開催するにあたって必要な情報を 管理する。大会運営中はロボットの資産の状況などを参照することが可能である。

2.証券会社サーバー

証券会社サーバーは、仮想の証券会社として働く。ロボットの口座の管理や売買 の処理などはこのサーバーで行われる。ロボットが株式の売買を行うには、この サーバーに対して売買の注文を発行する。証券会社サーバーは、発行された注文 が成立しうるかどうかを判断し、成立した場合にはロボットの口座情報を適宜変 更する。

3.ロボット稼動サーバー

ロボット稼動サーバー上でロボットは稼動することになる。図1では、ロボット 稼動サーバーは1台のように見えるが、正確には複数台用意されている。ロボッ トを稼動させるためのプログラムをインストールし、ネットワークに接続するこ とでサーバーの数を増やすことが出来る。

この3つのサーバーが図1のようにそれぞれネットワークで接続されている。

(10)

図1:カブロボにおけるサーバーの関係

2.3 カブロボにおけるスケジューリング

ロボット稼動サーバーは毎日3000台ものロボットを処理しなければならない。多数のロ ボットを公平に処理するためには適切なスケジューリングが必要不可欠である。

本稿で言う 公平 とは、次の三つの条件を満たすものとして定義する。第一にすべて のロボットは少なくとも一度は実行される。第二に処理を完了することが出来ないロボッ トの実行時間はすべて同じになる。第三に第一の条件と第二の条件を損なわない範囲で、

時間は余らないようにする。

(11)

現在のカブロボのシステムにおけるスケジューリングの概要を図2に示す。大会に登録 されたロボットをすべてタスクキューに入れるという作業は大会運営サーバーによって行 われる。この作業は、単純に大会に登録されたロボットの一覧をそのままタスクキューに 登録するだけである。

図2:カブロボにおけるスケジューリング

ロボット実行の流れには二つのパターンがある。

・タイムアウト時間内に処理が完了する

・タイムアウト時間内に処理が完了しない

それぞれどのように違うのか図3と図4に示した。図3はタイムアウト時間内に処理が 完了する場合の流れになっている。図4はタイムアウト時間内に処理が完了しない場合の 流れになっている。

どちらの場合も共通しているのは次の2点である。

1.KabuRoboDaemon が RobotMonitorThread を生成し、RobotMonitorThread が

Robotを別プロセスとして起動する。

(12)

2.Robot はタイムアウト時間内に繰り返し証券会社サーバーに対して株式売買の注文 を発行することができる。

タイムアウト時間内に処理を完了することができるかどうかで違ってくるのはロボット の終わり方である。以下時間内に完了する場合としない場合についてロボットの終わり方 の詳細を示す。

図3:ロボットの処理がタイムアウト時間内に終わる場合の流れ

タイムアウト時間内に処理が完了する場合

1.KabuRoboDaemonがロボット稼動サーバー上で起動される。

2.KabuRoboDaemon はタスクキューが空でなければタスクキューからロボットを 一つ取り出す。

3.KaburoboDaemonはRobotMonitorThreadを生成し、タスクキューから取り出し

(13)

てきたロボットの情報をRobotMonitorThreadにセットする。

4.正 し く 情 報 を セ ッ ト す る こ と が 出 来 た ら KabuRoboDaemon は

RobotMonitorThreadを開始させる。

5.開始した RobotMonitorThread は KabuRoboDaemon に設定された情報を元に

Robotのプロセスを起動する。

6.Robotのプロセスは起動している間にどの銘柄の売買を行うかを判断し、証券会社 サーバーに対して売買の注文を発行する。

7.Robot の プ ロ セ ス の 処 理 が 終 わ る と 、KabuRoboDaemon は 新 た な

RobotMonitorThreadを生成する。

図4:ロボットの処理がタイムアウト時間内に終わらない場合の流れ

タイムアウト時間内に処理が完了しない場合

1.KabuRoboDaemonがロボット稼動サーバー上で起動される。

2.KabuRoboDaemon はタスクキューが空でなければタスクキューからロボットを 一つ取り出す。

3.KaburoboDaemonはRobotMonitorThreadを生成し、タスクキューから取り出し

(14)

てきたロボットの情報をRobotMonitorThreadにセットする。

4.正 し く 情 報 を セ ッ ト す る こ と が 出 来 た ら KabuRoboDaemon は

RobotMonitorThreadを開始させる。

5.開始した RobotMonitorThread は KabuRoboDaemon に設定された情報を元に

Robotのプロセスを起動する。

6.Robotのプロセスは起動している間にどの銘柄の売買を行うかを判断し、証券会社 サーバーに対して売買の注文を発行する。

7.タイムアウトの時間を過ぎてもRobotが処理を終了しないと、KabuRoboDaemon

がRobotMonitorThreadに対してinterrupt命令を発行します。

8.InterruptされたRobotMonitorThreadは待機状態から復帰し、Robotプロセスを 強制的に終了させる。

統計を取ると、初心者用の簡易ロボットは1つのロボットの処理に10秒程度しか必要と せず、短い時間で処理が完了することが分かっている。しかし、上級者の作るロボットは どのようなアルゴリズムを採用しているか分からないので、実行時間の予測が困難である。

コンテストでは便宜上3分という制限を設けているが、すべてのロボットの処理が3分以 内に終わる保証はない。

ロボットは与えられた時間内に自由に株式売買の注文を出すことが出来る。仮に3分以 内にロボットの実行が終了しなかったとしても、その間にロボットが発行した注文は有効 である。よって、ロボットの処理が完了しなかったとしてもそのロボットが優秀な成績を 残す可能性はある。

(15)

第3章 関連研究

本章では、ジョブスケジューリング手法を紹介する。

3.1 地球シミュレータ用ジョブスケジューリングアルゴリズム[2]

地球シミュレータのジョブスケジューリングアルゴリズムでは、ユーザが予めジョブの 計算に必要な時間とノード数の宣言をする。ジョブの計算に必要な時間(宣言経過時間)

とノード数の少ないジョブほど優先度が高くなるというものである。要するに、ジョブの 計算をするにあたって、資源を占有する割合の少ないものを優先的にスケジューリングし ていくということである。この点に関しては、本手法も同じ考え方を採用している。一度 すべてのロボットを実行し、その処理にかかった時間を履歴として保存しておく。次回実 行時には、前回実行時に処理の早く終わったロボットから順次処理するようになっている。

しかし、地球シミュレータ用ジョブスケジューリングでは制限された時間の中でスケジュ ーリングを行うことが考慮されていない。また、本手法を適用するカブロボのシステムで は、ロボットは事前に実行時間を宣言するという制約が無い。

(16)

第4章 提案手法

本章では、本稿が提案する手法について説明をする。

4.1 従来手法の問題点

カブロボシステムの従来の手法では、ロボットを実行する際にある一定のタイムアウト を設定している。タイムアウト内に処理を完了することの出来ないロボットは、タイムア ウトした時点で処理を打ち切ってしまう。従来の手法では、タイムアウトは3分に設定さ れている。

現在ロボットの登録総数は3000を超えている。それに対してロボットを処理するコンピ ュータは2台である。また、1度の処理に使える時間は18時間である。

カブロボにおいて公平ではない状況として3つのケースに分類することができる。以下 にその3つの具体的な例を示す。3つのケースに共通した条件として、ロボットを処理す るコンピュータは2台であり、18時間(2160分)以内に1日の処理を終わらせなければな らないというものがある。

ケース1:

登録されたロボット数は 3000 台とし、そのうちの約30%のロボットが処理を完了する 為に3分以上の時間を要し、それらのロボットが偶然優先度の高い状態でスケジューリン グされてしまった場合。30%のロボットというと 900台に相当する。900台のロボットが 3分間処理を実行してしまうと 2700分が経過してしまう。2160分を超えた時点ですべて の処理は打ち切られてしまうので、結果的にロボット全体の 70%がまったく実行されない 可能性がある。

問題点:

まったく実行されないロボットが出てきてしまう。

(17)

処理を完了していないロボット(実行されていないものも含む)の実行時間が同じでは ない。

ケース2:

仮に登録ロボット数が3000台だったとする。その内9割のロボットの処理時間の平均が 10 秒程度だとし、残りの1割の処理時間が3分以上とする。この場合9割のロボットの処 理にかかる時間は450分である。残り1割のロボットの処理に使える時間は1710分である。

この時従来の手法では、残りの1割のロボットはすべて3分で処理を打ち切られてしまい、

900 分で処理を完了することになる。そして 810 分時間があまることになる。この余った 810分を処理の終了しなかったロボットに対して均等に割り振りたい。

問題点:

処理を完了していないロボットがあるにもかかわらず、時間が余ってしまう。

ケース3:

仮に登録ロボット数が3000台だったとして、すべてのロボットが制限時間いっぱいまで 使うアルゴリズムを採用した場合、すべての処理を終えるためには理論上9000分が必要に なる。一方2台のコンピュータを18時間フルに稼動させた場合、ロボットの処理に使える 時間は合計で2160分である。これは、理論的にすべてのロボットの処理を終了させるのは 不可能である。問題はこのような状況になった場合に従来手法では、720台のロボットは処 理を完了し、残りの2280台はまったく処理が開始されないまま終わってしまうことだ。コ ンテストの性質上この様な場合、すべてのロボットに対して43.2秒の時間を割り当てたい。

問題点:

まったく実行されないロボットが出てきてしまう。

処理を完了していないロボット(実行されていないものも含む)の実行時間が同じでは ない。

4.2 提案手法の概要

(18)

本稿では、すべてのロボットを公平に実行するために以下の3つのケースについて考え る。はじめにでも述べている通り、本稿で言うところの 公平 とは、次の三つの条件を 満たすものと定義する。第一にすべてのロボットは少なくとも一度は実行される。第二に 処理を完了することが出来ないロボットの実行時間はすべて同じになる。第三に第一の条 件と第二の条件を損なわない範囲で、時間は余らないようにする。

本稿で提案する手法は主に以下の2点から成る 1. 動的にタイムアウトを設定する

2. ロボットの過去の実行履歴に応じて優先度を決定する

動的にタイムアウトを設定

本稿ではコンピュータの数と残り時間の積を残計算可能時間と定義する。残計算可能時 間は以下のように定義される。ここで、終了時刻とはシステムが最終的に処理を終了させ るべき時刻であり、現在時刻はタイムアウトを計算しようとしている時点での時刻である。

( 終了時刻 現在時刻 ) コンピュータの台数

残計算可能時間 [s ] = − ×

残計算可能時間を用いてタイムアウトTは次の式によって算出される。

残ロボット数 残計算可能時間 [s ] T =

式 1:タイムアウトTの算出方法

登録されているロボットの数を3000台として、上の式に当てはめて考えると初期のTの 値は、

) ( 2 . 3000 43

2 60 60

18 s

T = × × × =

となる。

(19)

ロボットの過去の実行履歴に応じた優先度の決定

本稿で提案する手法では、ロボットの実行履歴に応じてロボットを実行する優先度を切 り替える。その際に参照する過去の実行履歴は平均実行時間と最長実行時間である。最長 実行時間の履歴は10秒単位で切り上げをして履歴に保存されている。最長実行時間の短い ロボットほど優先度が高くなる。最長実行時間の同じもの同士では、平均実行時間の短い ロボットほど優先度が高くなる。参考になる過去の実行履歴がない場合には、今までの経 験から簡易ロボットの実行が10〜30秒程度で終わることが分かっているので、それらの優 先度を高くする。

提案手法を適用した後のカブロボシステムの処理の流れを以下に示す。

1.タスクキューを過去の実行履歴を元に上記の規則で設定された優先度順にソートす る。

2.タスクキューからロボットを取り出す。

3.式1を用いてタイムアウトを算出する。

4.3で算出されたタイムアウトを設定しロボットを起動する。

5.ロボットが正常終了するか、タイムアウトで強制終了される。

6.タスクキューが空でなければ、2に戻る。

4.3 実行例

以下に本手法を適用した場合と適用しなかった場合の実行例を示す。ここでは、登録され たロボットの数を10台とし、ケース1の状態に似せたモデルを用いて説明をする。登録さ れたロボットの数が4.1で共通した条件の300分の1なので、18時間の制限は216秒とな る。

表1にケース1の状態を想定したロボットとその実行に必要な時間を示す。表1の必要時 間はロボットが処理を完了するまでに必要な時間である。タイプは、ロボットがカブロボ のシステム側で用意された簡易タイプのものを使っているのか、ユーザが作ったオリジナ ルのものなのかを示している。

(20)

ロボット名 必要時間 タイプ  robot1 550 自作  robot2 480 自作  robot3 180 自作  robot4 110 自作  robot5 10 簡易  robot6 30 簡易  robot7 25 簡易  robot8 20 簡易  robot9 15 簡易  robot10 25 簡易  表1:ケース1の登録ロボット例

(21)

第5章 評価

0 100000 200000 300000 400000 500000 600000 700000 800000

1 19 37 55 73 91 109 127 145 163 181 199

elapsed timeout

0 20000 40000 60000 80000 100000 120000 140000 160000 180000 200000

1 16 31 46 61 76 91 106 121 136 151 166 181 196

elapsed timeout

(22)

第6章 おわりに

(23)

参考文献

[1] カブロボ・コンテスト URL http://kaburobo.jp/

[2] 宇野 篤也,板倉 憲一, 地球シミュレータ用ジョブスケジューリングアルゴリズムの 評価 ,情報処理学会研究報,2003-HPC-95,pp83-88

[3] 堀 敦史,石川 裕,小中 裕喜,前田 宗則,友清 孝志, 時分割空間分割スケジューリ ング ,情報処理学会論文誌,Vol. 37, No.7,pp1320-1331(1996)

[4] 上田 清詩,本多 弘樹,弓場 敏嗣, Grid 計算環境における予定ガント図を用いたジ ョブスケジューリング ,情報処理学会論文誌,Vol.44,No.SIG1(HOS 6),pp93-102(2003)

参照

関連したドキュメント

に着目すれば︑いま引用した虐殺幻想のような﹁想念の凶悪さ﹂

すなわち、独立当事者間取引に比肩すると評価される場合には、第三者機関の

LLVM から Haskell への変換は、各 LLVM 命令をそれと 同等な処理を行う Haskell のプログラムに変換することに より、実現される。

によれば、東京証券取引所に上場する内国会社(2,103 社)のうち、回答企業(1,363

このような情念の側面を取り扱わないことには それなりの理由がある。しかし、リードもまた

貸借若しくは贈与に関する取引(第四項に規定するものを除く。)(以下「役務取引等」という。)が何らの

光を完全に吸収する理論上の黒が 明度0,光を完全に反射する理論上の 白を 10

者は買受人の所有権取得を争えるのではなかろうか︒執行停止の手続をとらなければ︑競売手続が進行して完結し︑