bakutan.common.ai
クラス AIInterface

java.lang.Object
  上位を拡張 bakutan.common.ai.AIInterface

public abstract class AIInterface
extends java.lang.Object

クライアントプログラムで使用されるAIのインターフェースとなるクラス


コンストラクタの概要
AIInterface()
           
 
メソッドの概要
abstract  java.lang.String getAIName()
          このAIの名前を返す。
abstract  AIOutput getAIOutput()
          自キャラの操作を表すAIOutputを返す。
 BUserInterface getUserInterface()
          爆裂タンクのユーザーインターフェースを取得する。
 java.io.File getWorkDir()
          爆裂タンクの作業用ディレクトリを得る。
abstract  void input(BodyInfoForAI mybody, BStageInfoForAI obstage, long currenttime, int actionlock, float energy)
          ステージの状態を入力する。
 void inputDesired(long currenttime, AIOutput out)
          isRecordAI()がtrueを返すときに学習用にユーザーの入力が与えられる。
 boolean isFileLoadable()
          AIの動作についてファイルを読み込むことが可能ならばtrueを返す。
 boolean isRecordAI()
          学習用にユーザーの入力をレコード中であるかどうかを返す。
 void loadAI(java.io.File file)
          isFileLoadable()メソッドがtrueを返すとき、クライアントのAI読み込みの操作により このメソッドにファイルが与えられる。
 void setRecordAI(boolean recordAI)
          クライアントがレコード操作を行ったときに呼び出される。
 void setUserInterface(BUserInterface userinterface)
          爆裂タンクのユーザーインターフェースを設定する。
 
クラス java.lang.Object から継承されたメソッド
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

AIInterface

public AIInterface()
メソッドの詳細

getAIName

public abstract java.lang.String getAIName()
このAIの名前を返す。

戻り値:
このAIの名前

input

public abstract void input(BodyInfoForAI mybody,
                           BStageInfoForAI obstage,
                           long currenttime,
                           int actionlock,
                           float energy)
ステージの状態を入力する。 getAIOutput()が呼び出される前に必ずこのメソッドによりステージの情報を与えられる。

パラメータ:
mybody - 自キャラの情報
obstage - ステージの情報。
currenttime - 現在の時刻を表すlong値。
actionlock - アクションがロックされる時間で単位はミリ秒。 この値が0以下の時は即座にアクションを行えるが、それ以上の時はアクションが行えない。
energy - 現在の残りエネルギー
関連項目:
getAIOutput()

getAIOutput

public abstract AIOutput getAIOutput()
自キャラの操作を表すAIOutputを返す。 このメソッドは呼び出される前に必ずinputメソッドによって情報が与えられる。

戻り値:
自キャラの操作を表すAIOutput。
関連項目:
input

inputDesired

public void inputDesired(long currenttime,
                         AIOutput out)
isRecordAI()がtrueを返すときに学習用にユーザーの入力が与えられる。

パラメータ:
currenttime - 現在の時刻
out - ユーザーの入力を表すAIOutput

isFileLoadable

public boolean isFileLoadable()
AIの動作についてファイルを読み込むことが可能ならばtrueを返す。

戻り値:
ファイルを読み込むことが可能ならばtrue、そうでなければfalseを返す。
関連項目:
loadAI(File)

getWorkDir

public java.io.File getWorkDir()
爆裂タンクの作業用ディレクトリを得る。 getUserInterface().getWorkDIr()と同値である。

戻り値:
作業用ディレクトリ

getUserInterface

public BUserInterface getUserInterface()
爆裂タンクのユーザーインターフェースを取得する。 このインターフェースから作業用ディレクトリの取得や メッセージの出力、変換が行える。

戻り値:
爆裂タンクのユーザーインターフェース

setUserInterface

public void setUserInterface(BUserInterface userinterface)
爆裂タンクのユーザーインターフェースを設定する。 これはクライアントプログラムにより与えられる。

パラメータ:
userinterface - ユーザーインターフェース

isRecordAI

public boolean isRecordAI()
学習用にユーザーの入力をレコード中であるかどうかを返す。

戻り値:
レコード中ならばtrueを返す。そうでなければfalseを返す。

setRecordAI

public void setRecordAI(boolean recordAI)
クライアントがレコード操作を行ったときに呼び出される。

パラメータ:
recordAI - レコードを開始するならばtrue、終了するならfalseを返す。

loadAI

public void loadAI(java.io.File file)
            throws java.io.IOException,
                   InvalidAIData
isFileLoadable()メソッドがtrueを返すとき、クライアントのAI読み込みの操作により このメソッドにファイルが与えられる。

パラメータ:
file - 与えられたファイル
例外:
java.io.IOException - 入出力エラーが起こったときにスローされる。
InvalidAIData - ファイルが不正な場合にスローされる
関連項目:
isFileLoadable()