Skip to main content

Featured post

A* ALGORITHM BASICS FOR PATH FINDING & HEURISTICS METHODS : ARTIFICIAL INTELLIGENCE

 A* ALGORITHM BASICS FOR PATH FINDING A* , widely used  known form of best-first search & path planning algorithm nowadays in mobile robots,games. this is the function for A*,                                     f(n) = g(n) + h(n) g ( n ) is the cost of the path from the start node to n , and h ( n ) is a heuristic function that estimates the cost of the cheapest path from n to the goal This will find cheapest f(n) value in neighbor nodes to archive goal node. check below image  A to B path finding with g(n),h(n),f(n) value In the final level check below image Now we will check the Algorithm // A* Search Algorithm 1. Initialize the open list 2. Initialize the closed list put the starting node on the open list (you can leave its f at zero) 3. while the open list is not empty a) find the node with the least f on the open list, call it "q" b) pop q off the open list c) generate q's 8 successors

Genetic Algorithm Library (GAlib) Compiling Error Fixed(ga.h: No such file or directory) : ARGoS Simulator

 if you didn't try to setup argos just follow my previous post using below link Getting Started with ARGoS Large-Scale Swarm Robot Simulator in Ubuntu
When you are facing below error while you try to compile argos in your ubuntu system
galib_phototaxis_loop_functions.h:14:20: fatal error: /ga/ga.h: No such file or directory compilation terminated

normally what we do?   we search this lib in google then we try to compile it but here if you download this GALIB lib from its official website from here http://lancet.mit.edu/ga/    its never work correctly because last update of this package 1999 so you guys need to change lots of c++ compiler based commands styles in many files
so download the GALIB from this link  https://github.com/jibsen/galib   
& compile based on that page instruction 
finally  you need to change the  files location in argos examples
follow the steps
go  to /src/argos3-examples/loop_functions/galib_phototaxis_loop_functions/
and choose galib_phototaxis_loop_functions.h 
then check below screenshot

for this GA-related headers change it as below


thats all save it and come back to ~/src/argos3-examples/build/
open the terminal & type make  
then you can test swarm bots foraging or some GA based features using below command
open terminal & go to ~/src/argos3-examples/  
then type argos3 -c experiments/foraging.argos  

Thank you guys 

Comments

  1. Thank you very much for the article. I am getting this error after everything and running *make*. Any help?

    Scanning dependencies of target galib_phototaxis_loop_functions
    [ 88%] Building CXX object loop_functions/galib_phototaxis_loop_functions/CMakeFiles/galib_phototaxis_loop_functions.dir/galib_phototaxis_loop_functions.cpp.o
    [ 89%] Building CXX object loop_functions/galib_phototaxis_loop_functions/CMakeFiles/galib_phototaxis_loop_functions.dir/galib_phototaxis_loop_functions_automoc.cpp.o
    [ 90%] Linking CXX shared library libgalib_phototaxis_loop_functions.so
    /usr/bin/ld: /usr/local/lib/libga.a(garandom.o): relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC
    /usr/local/lib/libga.a: error adding symbols: Bad value
    collect2: error: ld returned 1 exit status
    loop_functions/galib_phototaxis_loop_functions/CMakeFiles/galib_phototaxis_loop_functions.dir/build.make:122: recipe for target 'loop_functions/galib_phototaxis_loop_functions/libgalib_phototaxis_loop_functions.so' failed
    make[2]: *** [loop_functions/galib_phototaxis_loop_functions/libgalib_phototaxis_loop_functions.so] Error 1
    CMakeFiles/Makefile2:1652: recipe for target 'loop_functions/galib_phototaxis_loop_functions/CMakeFiles/galib_phototaxis_loop_functions.dir/all' failed
    make[1]: *** [loop_functions/galib_phototaxis_loop_functions/CMakeFiles/galib_phototaxis_loop_functions.dir/all] Error 2
    Makefile:83: recipe for target 'all' failed
    make: *** [all] Error 2

    ReplyDelete

Post a Comment

Popular posts from this blog

Getting Started with ARGoS Large-Scale Swarm Robot Simulator in Ubuntu

ARGoS (Autonomous Robots Go Swarming) is a multi-robot simulator designed to support large teams of robots. Its design is pretty different from the design of other simulators. Its most distinctive feature is that the 3D simulated world can be divided in regions, and each region can be assigned to a different physics engine. Furthermore, ARGoS' design revolves around the concept of tunable accuracy. In other words, in ARGoS, everything is a plug-in (robot models, sensors, actuators, physics engines, visualisations, etc) and the user can select which plug-ins to use for an experiment.  Since different plug-ins have different accuracy and computational costs, users can choose which plug-ins to use for each aspect of the simulation and assign resources only where it matters. This makes the simulation as fast as possible. At the time of writing, ARGoS supports the Swarmanoid robots (foot-bot and eye-bot) and the e-puck. ARGoS supports Linux and Mac OSX. Binary packages are availa

A* ALGORITHM BASICS FOR PATH FINDING & HEURISTICS METHODS : ARTIFICIAL INTELLIGENCE

 A* ALGORITHM BASICS FOR PATH FINDING A* , widely used  known form of best-first search & path planning algorithm nowadays in mobile robots,games. this is the function for A*,                                     f(n) = g(n) + h(n) g ( n ) is the cost of the path from the start node to n , and h ( n ) is a heuristic function that estimates the cost of the cheapest path from n to the goal This will find cheapest f(n) value in neighbor nodes to archive goal node. check below image  A to B path finding with g(n),h(n),f(n) value In the final level check below image Now we will check the Algorithm // A* Search Algorithm 1. Initialize the open list 2. Initialize the closed list put the starting node on the open list (you can leave its f at zero) 3. while the open list is not empty a) find the node with the least f on the open list, call it "q" b) pop q off the open list c) generate q's 8 successors

Ros Topics : Ros Tutorial

Topics , Its look like pipe line connection between two or more nodes,This is the way to transfer data continuously within two nodes.    Each message in ROS is transported using named buses called topics. When a node sends a message through a topic, then we can say the node is publishing a topic. When a node receives a message through a topic, then we can say that the node is subscribing to a topic. The publishing node and subscribing node are not aware of each other's existence. We can even subscribe a topic that might not have any publisher. In short, the production of information and consumption of it are decoupled. Each topic has a unique name, and any node can access this topic and send data through it as long as  they have the right message type Ros topic have two types of method   1. topic publisher   2. topic subscriber  ROS has a tool to work with topics called rostopic . It is a command-line tool that gives us information about the topic or publishes

Translate