Giter VIP home page Giter VIP logo

socialrobot's People

Contributors

bayesian avatar breakds avatar emailweixu avatar haichao-zhang avatar hnyu avatar jialn avatar le-horizon avatar ruizhaogit avatar witwolf avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

socialrobot's Issues

Gazebo camera sensor output differently in different systems

I ran pr2 on two different environments, and found that the camera sensor output is a bit different (images are brighter or darker). Does any body known why ? And is there any other difference
except image that will affect learning performance ?

  • Env1 : gazebo 9.9, nvidia 410.73, ubuntu 16.04

  • Env2: gazebo 9.11, nvidia 410.93, ubuntu 18.04

  • Env3 gazebo 9.9 (compiled) , nvidia 410.93, ubuntu 18.04 (output almost same with Env2)

  1. 128x128 L8 and R8G8B8 (Left: Env1, Right: Env2 )

  1. 128x128 L8 and R8G8B8 (Left: Env1, Right: Env2 )

  1. 640x480 (third perspective) L8 and R8G8B8 (Top: Env1, Bottom: Env2 )

9 9_third
2_9 11_third

Env process can not terminate normally

1 . run command below, when training finished ,the main process hangs up, ps aux|grep pr2 info shows that sub processes for environments are still alive

python3 -m alf.bin.train --root_dir=t --gin_file=ppo_pr2.gin \ 
  --gin_param='create_environment.num_parallel_environments=2' \
  --gin_param='TrainerConfig.mini_batch_size=200' \
  --gin_param='TrainerConfig.num_iterations=1'

and i found process terminate timeout with self._process.join(5)

https://github.com/tensorflow/agents/blob/6e7ef806a0f81aa4cf22162f7f708591b0e542a6/tf_agents/environments/parallel_py_environment.py#L289-L290

just replace the line to self._process.join(), you can see it can not go on

2 . i found it's related to lines below

gazebo::shutdown();
gazebo::client::shutdown();

but when i remove these lines , the sub processes can exit, but the main process exit with a segment fault (2 env for collecting data in sub processes, and 1 env for evaluating in main process )

Can't import social_bot well

Hi developers,

After I compiled the repo successfully, I tried to run the test script test_simple_navigation.py.

However, the script didn't work. Some error information could be found below

[Msg] Waiting for master.
[Msg] Connected to gazebo master @ http://127.0.0.1:11345
[Msg] Publicized address: 192.168.10.20
[Err] [LogRecord.cc:157] LogRecord has not been initialized.
[Wrn] [ModelDatabase.cc:340] Getting models from[http://models.gazebosim.org/]. This may take a few seconds.

Some suggestions and ideas will be appreciated.

Thank you.

cannot run the test_env

Hi, I have installed the gazebo 9.13.2 and pip install the pkg.
However, I cannot run the env correctly.
The error is

SocialRobot/python/social_bot/__init__.py", line 66, in <module>
    from . import pygazebo
ImportError: /usr/local/lib/libopencv_imgproc.so.2.4: undefined symbol: _ZNK2cv9Algorithm5writeERNS_11FileStorageE

I'm sure I have written the path as the guidance, my python version is 3.7.
Is there anyone help me?

Configuration list of the tasks

Currently the configurations of an environment depends on gin-configurations. This way have too much possibilities : combinations of the tasks, agent_type, world file, using image or not, image_with_internal_states or not, with language or not...

But many combinations do not work. For example, some tasks do not support some agent_types, some agent does not support image observations, different tasks need different max_steps or step_time...

It would be better to add a default configuration list of Envs, which specifies the combination of the tasks, agent, world file, using image or not, image_with_internal_states or not, with language or not, and give it a name registered to Gym. The CI test also do the tests accrofing to the list.

The list of tasks does not necessarily add all combinations supported. Only the configurations we are using (like the ones used in experiment or in training examples) should be fine. We can add new configuration to the list when necessary at any time.

Unable to insert Model steadily

Hi developers,

Thanks a lot for your efforts!

I am now using your code to implement my own environments, but I found that the function 'world.insertModelFromSdfString(string)' is not very stable. I ran the exactly same code several times and it succeeded sometimes while failed more often.

May I ask how you guys deal with this? Thanks a lot!

Best,
Wenhua

cannot import name 'pygazebo'

Hello, I meet a problem when i test "python3 python/social_bot/envs/play_ground.py". It shows:
Traceback (most recent call last):
File "python/social_bot/envs/play_ground.py", line 31, in
import social_bot
File "/home/huang/Project/HIDIO/SocialRobot/python/social_bot/init.py", line 66, in
from . import pygazebo
ImportError: cannot import name 'pygazebo'

I think I install correctly Gazebo9.19.0 and SocialRobot. My system is Ubuntu 18.04. Package is python3.6.
I don't know how to choose Gazebo9.6 version, Is it influence the code? Thankyou.

ImportError: /usr/lib/libgdal.so.1: undefined symbol: sqlite3_column_table_name

python3 python/social_bot/envs/grocery_ground.py
Traceback (most recent call last):
File "python/social_bot/envs/grocery_ground.py", line 33, in
import social_bot
File "/home/wangbingjie/anaconda3/lib/python3.5/site-packages/Repo_Root/python/social_bot/init.py", line 89, in
from . import pygazebo
ImportError: /usr/lib/libgdal.so.1: undefined symbol: sqlite3_column_table_name

Use list instead of collections.deque for replay buffer

The current replay buffer at python/social_bot/util/replay_buffer.py uses collections.deque for storage. However, deque can have performance issue when the size is very large. As shown in deque implementation of deque_item https://github.com/python/cpython/blob/3.5/Modules/_collectionsmodule.c#L1123
To access an item, it needs to traverse through all the blocks of size 64, which can be time-consuming when size is large. As I run examples/train_simple_navigation.py, the fps decreases from 45 to 35 and stops decreases after 500,000 steps. It's coincident with the size of replay buffer. So I suspect the longer random accessing time of deque is cause of this problem.

We should use a cycled list to replace deque so that it will not get slower as size gets large.

Fatal Python error: PyThreadState_Get: no current thread, Abort trap: 6

Hi guys,

Thank you for the good work!

I built the files following the readme.
I use "anaconda3/bin/python3.5" for building the files and also for running the testing script.
However, I ran into the following error:

">>> import social_bot
Fatal Python error: PyThreadState_Get: no current thread
Abort trap: 6"

Does anyone have any idea how to solve this?

Thank you in advance!

Best,
Rui

allow saving env status into training checkpoints

Currently environment statuses like teacher's internal status are not saved in model checkpoints during training. In settings like curriculum training, if we stopped training in the middle, and resume, everything starts from simpliest level again.

If we can save and load env status into model checkpoints, we can resume training at the appropriate level of the curriculum.

Good to have as we introduce teacher tasks in different levels.

Unable to find sensor: camera, Segmentation fault: 11

Hi guys,

Does anyone know how solve the following error (and Python quit unexpectedly.):

"$ python3.7 examples/test_simple_navigation.py
[Msg] Waiting for master.
[Msg] Connected to gazebo master @ http://127.0.0.1:11345
[Msg] Publicized address: 10.181.55.63
[Err] [LogRecord.cc:157] LogRecord has not been initialized.
joint name: pioneer2dx::pioneer2dx::left_wheel_hinge
joint name: pioneer2dx::pioneer2dx::right_wheel_hinge
joint name: pioneer2dx::camera_joint
INFO:social_bot.envs.simple_navigation:joint names: ['pioneer2dx::pioneer2dx::left_wheel_hinge', 'pioneer2dx::pioneer2dx::right_wheel_hinge', 'pioneer2dx::camera_joint']
joint name: pioneer2dx::pioneer2dx::left_wheel_hinge
joint name: pioneer2dx::pioneer2dx::right_wheel_hinge
joint name: pioneer2dx::camera_joint
unable to find sensor: camera
Segmentation fault: 11"

Thanks!
-Rui

Can't set a seed to fix return.

Hello. I see some changes such as "Implement gym.Env.seed()". But I still can't get a fix return. My origin code is ALF. When I use Fetch or Ant env, the seed works. So I don't know how to fix SocialRobot seed to get a gix return.

mesh and texture files of some models is not used

#97
PR97 added all used gazebo model files into repository, but mesh and texture files of the model that are renamed is not used. The link in the sdf is still the original one. Currently we still need to downloading model files to ~/.gazebo/models to get the texture correctly.

example: here is part of the codes pr2_noplugin.sdf

      <collision name="torso_lift_link_geom">
        <geometry>
          <mesh>
            <uri>model://pr2/meshes/torso_v0/torso_lift_L.stl</uri>
          </mesh>
        </geometry>

Either we should change pr2 in the uri to pr2_noplugin, or remove the mesh and texture file and add originlal pr2/pioneer/youbot to the repo.

Tensorflow and tf-agents versions for "Grocery ground pr2" ?

Hi @Jialn ,

For the pull request "Grocery ground pr2", which version of tensorfow and tf-agents did you use?

I tried tf-agents (0.2.0rc2) with tensorflow (2.0.0-alpha0), tensorflow (1.13), tf-nightly (1.14) for "Grocery ground pr2".
None of them seems to work...

Thank you!

Best,
Rui

Support render mode "rgb_array"

If this is not too difficult, we should support it so that it will be easier to record video with the newly added recording function in alf (HorizonRobotics/alf#105)

If it's too much trouble to support, we can rely on gzclient to do the recording, though it's not very convenient.

Compiling error in pygazebo.cc

Hi developers,

Thank you very much for your wonderful work!

I ran into an error when trying to compile the project by 'make -j'. And the error goes like this:

/home/workspace/SocialRobot/SocialRobot/pygazebo/pygazebo.cc: In member function ‘bool social_bot::Agent::TakeAction(const std::map<std::__cxx11::basic_string, double>&)’:
/home/workspace/SocialRobot/SocialRobot/pygazebo/pygazebo.cc:230:30: error: ‘class gazebo::physics::JointController’ has no member named ‘SetForce’; did you mean ‘GetForces’?
bool ret = controller->SetForce(name2force.first, name2force.second);

May I ask for your help to check with this? I am trying to compile it on Ubuntu 18.04 with gazebo 9.0.

Thanks in advance.

Adding self states with image observation

When using image as observation, although we should not use goal states as observation, we can still use some self states (joint angles, velocity, etc.) as observation, similar to pr2.py

libharfbuzz.so.0: undefined symbol: FT_Get_Var_Blend_Coordinates

Hello. When I run 'python3 test_simple_navigation.py'. It prints ImportError: /usr/lib/x86_64-linux-gnu/libharfbuzz.so.0: undefined symbol: FT_Get_Var_Blend_Coordinates. Do you know how to deal with it? Thank you.

My gazebo is 9.16.0.

Traceback (most recent call last):
File "test_simple_navigation.py", line 5, in
import social_bot
File "/home/huang/Project/HIDIO/SocialRobot/python/social_bot/init.py", line 66, in
from . import pygazebo
ImportError: /usr/lib/x86_64-linux-gnu/libharfbuzz.so.0: undefined symbol: FT_Get_Var_Blend_Coordinates

The test environment for this repo?

Hi developers,

Thanks for your amazing job. But I can not compile this repo for my Gazebo 8 (built from source), so I am wondering which version of the Gazebo is tested in your environment. In other words, can you list the details of your developing environment (e.g. the version of the system, is it required ROS)

Thanks in advance. Looking forward to your reply.

Clean up gazebo error/warning messages

There are a lot of gazebo error/warning messages. They are confusing the new users. We should find ways to avoid them:

[Err] [ConnectionManager.cc:472] Data was empty, try again
[Err] [Connection.hh:268] Header is empty
[Err] [LogRecord.cc:158] LogRecord has not been initialized.
Warning [parser.cc:531] Converting a deprecated SDF source[data-string].
[Wrn] [Publisher.cc:142] Queue limit reached for topic /gazebo/default/pose/local/info, deleting message. This warning is printed only once.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.