enigma

所属分类:人工智能/神经网络/深度学习
开发工具:Erlang
文件大小:18KB
下载次数:0
上传日期:2013-12-03 14:13:52
上 传 者sh-1993
说明:  ErlaNg应用于自治系统的目标管理器
(enigma,ErlaNg applIed to a Goal-Manager for Autonomous-systems)

文件列表:
Emakefile (121, 2013-12-03)
LICENSE.txt (11358, 2013-12-03)
Makefile (104, 2013-12-03)
ebin (0, 2013-12-03)
ebin\enigma.app (351, 2013-12-03)
enigma.sh (100, 2013-12-03)
examples (0, 2013-12-03)
examples\goal_function.erl (4881, 2013-12-03)
include (0, 2013-12-03)
include\Goal.hrl (1205, 2013-12-03)
src (0, 2013-12-03)
src\combo_goal.erl (2289, 2013-12-03)
src\enigma.app.src (351, 2013-12-03)
src\enigma_app.erl (2171, 2013-12-03)
src\goal.erl (7628, 2013-12-03)
src\goal_db.erl (3901, 2013-12-03)
src\goal_function.erl (3271, 2013-12-03)
src\goal_sup.erl (3200, 2013-12-03)
src\scheduler.erl (2420, 2013-12-03)
src\start_enigma.erl (592, 2013-12-03)

============================================================================= _______ __ _ _____ ______ _______ _______ |______ | \ | | | ____ | | | |_____| |______ | \_| . __|__ . |_____| | | | . | | %% ErlaNg applIed to a Goal-Manager for Autonomous-systems ============================================================================= ENIGMA is a Goal Manager written in Erlang/OTP and can be used in autonomous systems like robots. It has the task of executing a set of goals ordered by priority and feasibility, if one goal is not feasible or its execution fails, it will be tried again later. Each goal has a priority that can depend on the environment (for example a robot position), also one goal can be feasible or not in a moment (for example because there is an obstacle). WARNING: The developing is in progress, so using it for production is not recommended. For comments and suggestions write to: Ivan Iacono , Corrado Santoro %% HOW TO USE IT You need to insert only the code of the goals in a specific module called goals function set, the default module is ./src/goals_function.erl (you can change it, editing ./ebin/enigma.app). There each goal has to defined by writing: - record function definition, containing the goal information, - priority function, that needs to return an integer value (lower is better), - feasibility function, that needs to return true or false, - execute function, that needs to return success or fail. ENIGMA supports two type of Goals: simple or combo (stands for combined). Combo is a goal formed by other goals (subgoals) that can be simple or not, it has a execution policy that can be: - and_policy (the goals is executed when all subgoals are executed) - xor_policy (the goal is executed when one subgoal is executed) You can specify it in the record function definition, finally add the goal to the init_goal() function. %% HOW TO COMPILE IT From the root directory of ENIGMA type: $: make %% HOW TO RUN IT From the root directory of ENIGMA type: $: ./enigma.sh If you want redirect the output in a log file type: $: ./enigma.sh > enigma.log %% LICENSE ENIGMA is licensed under the Apache License, Version 2.0 (the "License"); You may not use this library except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

近期下载者

相关文件


收藏者