Commit 7156fcc7 authored by Matthew Hausknecht's avatar Matthew Hausknecht

Extracted source from agent2D.

parent 0ed8a065
Hidehisa AKIYAMA <akky@users.sourceforge.jp>
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
## Process this file with automake to produce Makefile.in
ACLOCAL_AMFLAGS=-I m4
SUBDIRS = src .
EXTRA_DIST = \
bootstrap \
m4/ax_boost_base.m4 \
NEWS.en
CLEANFILES = \
*~
This diff is collapsed.
[3.1.1]
* gcc-4.6でのコンパイルエラー・警告へ対応
[3.1.0]
* librcscの変更に追従し,ボロノイ図計算で暴走する問題を修正した.
[3.0.0]
* rcssserverバージョン14に対応し,librcsc-4.0.xを要求するようになっ
た.
* 行動探索フレームワークを追加した.
* Keepawayのテンプレートを追加した.
[2.1.0]
* フォーメーション設定ファイルが新しいフォーマットバージョンに変更さ
れた.このフォーマットは,soccerwindow2 4.1.0以降に付属のfeditで編
集可能である.
* フォーメーションファイルの読み込みが統一され,Staticタイプのフォー
メーションを他のタイプと同じ手順で読み込めるようになった.
* start.shのコマンドラインオプションが拡張された.
- -f, --formation DIR : フォーメーションのディレクトリ指定
- --offline-logging : オフラインクライアント用のログを記録する
- --offline-client-mode : オフラインクライアントモードで起動する
- --debug-fullstate : 通常のワールドモデルとは別にfullstateで構築
したワールドモデルを参照できるようになる
* デバッグ用の起動スクリプトのサンプル,start-debug.shと
start-offline.shがパッケージに追加された.
[2.0.1]
* team_graphicサポートの不具合を修正した.
* team_graphic用のxpmファイルのサンプルを追加した.
[2.0.0]
* rcssserverバージョン13をサポートした.
* librcsc-3.0.xをサポートした.いくつかのアクションはobsoleteとなり,
新しいアクションへと置き換えられたことに注意.
* いくつかのアクションをHELIOS2007-2008相当のものに置き換えた.キー
パーはHELIOS2008の非saviorモード時と同等の動作をするようになった.
- (追加)Bhv_DangerAreaTackle
- (追加)Neck_GoalieTurnNeck
- (更新)Bhv_BasicTackle
- (更新)Bhv_GoalieBasicMove
- (更新)Bhv_GoalieChaseBall
* rcssserver-13の新ダッシュモデルに対応した.ただし,キーパーの動作
に関しては修正が不完全である.
* デフォルトの守備的動作において,ダッシュスピードを調整した.
* before-kick-off.confで定義される初期配置を変更した.
* FormationBPNのサポートを停止した.それに伴い,フォーメーション設定
ファイルのoffense-formation.confとdefense-formation.confを
normal-formation.confへ統一した.
* start.shにいくつかのオプションを追加した.
- -p, --port PORT : プレイヤの接続ポート番号変更
- -P, --coach-port PORT : コーチの接続ポート番号変更
- --team-graphic FILE : チームロゴXPMファイルを指定
- --debug-server-host HOST : デバッグサーバ(soccerwindow2)のホスト
名(またはIPアドレス)を指定
- --debug-server-port PORT : デバッグサーバ(soccerwindow2)の接続ポー
ト番号を指定
- --log-dir DIRECTORY : デバッグログファイルを書き出すディレクトリ
パスを指定
- --log-ext EXTENTION : デバッグログファイルの拡張子名を指定
- --use-fullstate (true|false) : fullstate情報でワールドモデルを更
新するか否かを指定
[1.0.0]
* Supported rcssserver 12.
[0.4.0]
* Supported new communication framework.
* Supported player type analysis by coach agent.
* Added coach.conf
* Fixed defect in the change view action when player search the
ball.
[3.1.1]
* fixed the compilation problems on gcc-4.6.
[3.1.0]
* fixed the problem of going out of control in the voronoi diagram
calculation.
[3.0.0]
* Supported rcssserver-14
[2.1.0]
* Changed formation file format.
* Changed command line options of start.sh.
[2.0.1]
* Fixed a defect of team_graphic option.
* Added a sample xpm file for team_graphic.
[2.0.0]
* Supported rcssserver 13.
* Supported librcsc-3.0.x. Note that some obsolete actions were
replaced with new actions.
* Some actions were replaced with actions which was used by
HELIOS2007-2008. Now, the goalie player's behavior is equivalent
to the non-savior mode goalie of HELIOS2008.
* Supported new dash model in rcssserver-13. Note that the
fix of goalie's behavior has not been completed yet.
* Tuned a dash speed of default behavior for defensive situation.
* Changed the default formation defined in before-kick-off.conf
* Stopped to support FormationBPN. Now, offense-formation.conf and
defense-formation.conf are integrated into normal-formation.conf.
* Added new options to start.sh.
- -p, --port PORT : set a connection port number for players.
- -P, --coach-port PORT : set a connection port number for an
online coach.
- --team-graphic FILE : set a team logo file formatted by XPM.
- --debug-server-host HOST : set a host name(or ip address) to
connect to the debug server(soccerwindow2)
- --debug-server-port PORT : set a connection port number to
connect to the debug server
- --log-dir DIRECTORY : set a directory path string to write debug
log files.
- --log-ext EXTENTION : set a extention name of debug log files.
- --use-fullstate (true|false) : enable/disable player's world
model to be updated by fullstate information.
[1.0.0]
* Supported rcssserver 12.
[0.4.0]
* Supported new communication framework.
* Supported player type analysis by coach agent.
* Added coach.conf
* Fixed defect in the change view action when player search the
ball.
=======
はじめに
=======
agent2dはlibrcscを使用したシンプルなチームの実装例です.RoboCup Soccer
Simulator(rcssserver)バージョン15で動作させることを想定しています.
- RoboCup Soccer Simulator Homepage: http://sserver.sf.net/
- RoboCup Official Homepage: http://www.robocup.org/
- librcsc Homepage: http://rctools.sourceforge.jp/
============
要求ライブラリ
============
agent2d-3.1.1 は以下のライブラリを要求します.
- boost-1.32 or later
- librcsc-4.1.x
=====
ビルド
=====
パッケージを展開したディレクトリ内部で以下のコマンドを実行します:
./configure
make
librcscをシステムのディレクトリにインストールしていない場合,以下のよ
うにconfigureの'--with-librcsc'オプションによってlibrcscのインストール
パスを指定しなければなりません.
./configure --with-librcsc=/path/to/prefix
この場合,環境変数 LD_LIBRARY_PATH も設定する必要があるかもしれません.
=================
インストール時の設定
=================
agent2dをビルドする前に,パッケージに含まれるconfigureスクリプトのオプ
ションによって設定を変更することができます.configureで指定できるオプ
ションの詳細は,'configure --help'を実行することで参照できます.
==========
チームの起動
==========
agent2dのチームを起動するには,srcディレクトリ内で以下のコマンドをタイ
プします.
`./start.sh'
This diff is collapsed.
#!/bin/sh
set -x
autoreconf -i -f
#aclocal -I config
#autoheader
#automake -a -c
#autoconf
/* config.h.in. Generated from configure.ac by autoheader. */
/* define if the Boost library is available */
#undef HAVE_BOOST
/* Define to 1 if you have the `floor' function. */
#undef HAVE_FLOOR
/* Define to 1 if you have the <inttypes.h> header file. */
#undef HAVE_INTTYPES_H
/* Define to 1 if you have the `rcsc_gz' library (-lrcsc_gz). */
#undef HAVE_LIBRCSC_GZ
/* Define to 1 if you have the `z' library (-lz). */
#undef HAVE_LIBZ
/* Define to 1 if you have the <memory.h> header file. */
#undef HAVE_MEMORY_H
/* Define to 1 if you have the `pow' function. */
#undef HAVE_POW
/* Define to 1 if you have the <rcsc/types.h> header file. */
#undef HAVE_RCSC_TYPES_H
/* Define to 1 if you have the `sqrt' function. */
#undef HAVE_SQRT
/* Define to 1 if stdbool.h conforms to C99. */
#undef HAVE_STDBOOL_H
/* Define to 1 if you have the <stdint.h> header file. */
#undef HAVE_STDINT_H
/* Define to 1 if you have the <stdlib.h> header file. */
#undef HAVE_STDLIB_H
/* Define to 1 if you have the `strerror' function. */
#undef HAVE_STRERROR
/* Define to 1 if you have the <strings.h> header file. */
#undef HAVE_STRINGS_H
/* Define to 1 if you have the <string.h> header file. */
#undef HAVE_STRING_H
/* Define to 1 if you have the <sys/stat.h> header file. */
#undef HAVE_SYS_STAT_H
/* Define to 1 if you have the <sys/types.h> header file. */
#undef HAVE_SYS_TYPES_H
/* Define to 1 if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H
/* Define to 1 if the system has the type `_Bool'. */
#undef HAVE__BOOL
/* Name of package */
#undef PACKAGE
/* Define to the address where bug reports for this package should be sent. */
#undef PACKAGE_BUGREPORT
/* Define to the full name of this package. */
#undef PACKAGE_NAME
/* Define to the full name and version of this package. */
#undef PACKAGE_STRING
/* Define to the one symbol short name of this package. */
#undef PACKAGE_TARNAME
/* Define to the home page for this package. */
#undef PACKAGE_URL
/* Define to the version of this package. */
#undef PACKAGE_VERSION
/* Define to 1 if you have the ANSI C header files. */
#undef STDC_HEADERS
/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
#undef TIME_WITH_SYS_TIME
/* Version number of package */
#undef VERSION
/* Define to empty if `const' does not conform to ANSI C. */
#undef const
/* Define to `__inline__' or `__inline' if that's what the C compiler
calls it, or to nothing if 'inline' is not supported under any name. */
#ifndef __cplusplus
#undef inline
#endif
/* Define to `unsigned int' if <sys/types.h> does not define. */
#undef size_t
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
# -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.
AC_PREREQ(2.61)
AC_INIT([agent2d],[3.1.1],[akky@users.sourceforge.jp])
AC_CONFIG_SRCDIR([config.h.in])
AC_CONFIG_HEADERS([config.h])
AC_CONFIG_AUX_DIR([config])
AC_CONFIG_MACRO_DIR([m4])
# --------------------------------------------------------------
AM_INIT_AUTOMAKE([gnu check-news])
AC_LANG([C++])
# --------------------------------------------------------------
# Checks for programs.
AC_PROG_CXX
AC_PROG_CC
AC_PROG_RANLIB
AC_PROG_LN_S
# ----------------------------------------------------------
# check boost
AX_BOOST_BASE([1.32.0])
CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
LDFLAGS="$LDFLAGS $BOOST_LDFLAGS"
# check librcsc path
AC_SUBST(LIBRCSCLIB)
LIBRCSCLIB="/usr/local/lib"
librcsc_prefix=""
AC_ARG_WITH(librcsc,
[ --with-librcsc=PREFIX prefix where librcsc is installed (optional)],
librcsc_prefix="$withval",
librcsc_prefix="")
if test x$librcsc_prefix != x; then
CPPFLAGS="$CPPFLAGS -I$librcsc_prefix/include"
LDFLAGS="$LDFLAGS -L$librcsc_prefix/lib"
LIBRCSCLIB="$librcsc_prefix/lib"
else
for librcsc_path_tmp in $HOME $HOME/local $HOME/rcss /opt/robocup /opt /opt/local ; do
if test -d "$librcsc_path_tmp/include/rcsc" && test -r "$librcsc_path_tmp/include/rcsc/types.h" ; then
CPPFLAGS="$CPPFLAGS -I$librcsc_path_tmp/include"
LDFLAGS="$LDFLAGS -L$librcsc_path_tmp/lib"
LIBRCSCLIB="$librcsc_path_tmp/lib"
break;
fi
done
fi
# --------------------------------------------------------------
# Checks for libraries.
AC_CHECK_LIB([m], [cos],
[LIBS="-lm $LIBS"],
[AC_MSG_ERROR([*** -lm not found! ***])])
AC_CHECK_LIB([z], [deflate])
AC_CHECK_LIB([rcsc_geom], [main],
[LIBS="-lrcsc_geom $LIBS"],
[AC_MSG_ERROR([*** -lrcsc_geom not found! ***])])
AC_CHECK_LIB([rcsc_rcg], [main],
[LIBS="-lrcsc_rcg $LIBS"],
[AC_MSG_ERROR([*** -lrcsc_rcg not found! ***])])
# defined HAVE_LIBRCSC_GZ and set LIBS="-lrcsc_gz $LIBS"
AC_CHECK_LIB([rcsc_gz], [main])
AC_CHECK_LIB([rcsc_param], [main],
[LIBS="-lrcsc_param $LIBS"],
[AC_MSG_ERROR([*** -lrcsc_param not found! ***])])
AC_CHECK_LIB([rcsc_time], [main],
[LIBS="-lrcsc_time $LIBS"],
[AC_MSG_ERROR([*** -lrcsc_time not found! ***])])
AC_CHECK_LIB([rcsc_net], [main],
[LIBS="-lrcsc_net $LIBS"],
[AC_MSG_ERROR([*** -lrcsc_time not found! ***])])
AC_CHECK_LIB([rcsc_ann], [main],
[LIBS="-lrcsc_ann $LIBS"],
[AC_MSG_ERROR([*** -lrcsc_ann not found! ***])])
AC_CHECK_LIB([rcsc_agent], [main],
[LIBS="-lrcsc_agent $LIBS"],
[AC_MSG_ERROR([*** -lrcsc_agent not found! ***])])
# --------------------------------------------------------------
# Checks for header files.
AC_CHECK_HEADERS([rcsc/types.h])
# --------------------------------------------------------------
# Checks for typedefs, structures, and compiler characteristics.
AC_HEADER_STDBOOL
AC_C_CONST
AC_C_INLINE
AC_TYPE_SIZE_T
AC_HEADER_TIME
# --------------------------------------------------------------
# Add original options
AC_ARG_ENABLE(debug,
AC_HELP_STRING([--enable-debug],
[turn on debugging (default=no)]))
if test "x$enable_debug" = "xyes"; then
# AC_DEFINE([DEBUG], [1], [debugging flag])
CFLAGS="-DDEBUG $CFLAGS"
CXXFLAGS="-DDEBUG $CXXFLAGS"
echo "enabled debug"
fi
# --------------------------------------------------------------
# Checks for library functions.
AC_HEADER_STDC
AC_CHECK_FUNCS([floor pow sqrt strerror])
AC_CONFIG_FILES([Makefile
src/Makefile
src/start.sh
src/keepaway.sh
src/train.sh],
[test -f src/start.sh && chmod +x src/start.sh]
[test -f src/keepaway.sh && chmod +x src/keepaway.sh]
[test -f src/train.sh && chmod +x src/train.sh])
AC_OUTPUT
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment