ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
1

Difference between CRAM and KnowRob

asked 2012-10-19 09:49:13 -0600

updated 2012-10-22 09:40:58 -0600

hi every one,

want to ask what is the difference between CRAM and KnowRob ?!!

edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted
3

answered 2012-10-19 22:13:12 -0600

moritz gravatar image

The CRAM packages provide a high-level executive, KnowRob is a knowledge base. The following paper describes these components: https://ias.in.tum.de/_media/spezial/bib/beetz10cram.pdf

edit flag offensive delete link more

Comments

KnowRob is knowledge base about environment map represented in OWL and object models and semantics related to this objects .. also support processing this knowledge and integration with robot perception ?!

RiskTeam gravatar image RiskTeam  ( 2012-10-22 06:37:19 -0600 )edit
1

Yes, KnowRob is a knowledge processing system for robots that, among other kinds of knowledge, also supports the representation of objects. All of this is also described in the documentation and the papers about KnowRob and CRAM.

moritz gravatar image moritz  ( 2012-10-22 16:22:24 -0600 )edit

Thanks a lot :)

RiskTeam gravatar image RiskTeam  ( 2012-10-22 19:25:29 -0600 )edit
2

answered 2012-10-21 04:27:50 -0600

updated 2012-10-21 23:33:50 -0600

CRAM is a set of libraries for implementing cognitive robot behavior, its kernel mainly composed of two parts, one is knowrob , and another is CPL.

CRAM integrates different reasoning mechanisms in an executive written in CPL, when a robot needs to make decisions, its plan(written in CPL) can query the KnowRob reasoner to infer the knowledge needed for decisions.

edit flag offensive delete link more

Comments

1

CPL has nothing to do with planning. The package cram_language provides the CRAM plan language which is a domain specific language for implementing robot executives. It is the core of the CRAM system.

Lorenz gravatar image Lorenz  ( 2012-10-21 08:46:54 -0600 )edit

so I have to use CRAM to infer missing component on table, so that robot take the decision to move toward the container where this component is stored ?!

RiskTeam gravatar image RiskTeam  ( 2012-10-21 11:04:57 -0600 )edit
1

@Lorenz:Thanks! I think I maps the "series of robot executives" to "plans" intuitively, but isn't making those decisions be a kind of planning? @RiskTeam: My answer is a simpler way to get the whole picture, you should refer to the paper moritz posted.

Po-Jen Lai gravatar image Po-Jen Lai  ( 2012-10-21 14:30:57 -0600 )edit

@RiskTeam: If you want to do the task you mentioned well, I think CRAM is the best system now.

Po-Jen Lai gravatar image Po-Jen Lai  ( 2012-10-21 14:34:42 -0600 )edit
3

@RiskTeam this answer is not correct and sort of misleading. I am the main developer of CRAM and I can say CRAM is not a cognitive model. Instead, it is a set of libraries for implementing cognitive robot behavior by integrating different reasoning mechanisms in an executive written in CPL.

Lorenz gravatar image Lorenz  ( 2012-10-21 22:29:16 -0600 )edit

Thanks for correction!

Po-Jen Lai gravatar image Po-Jen Lai  ( 2012-10-21 22:55:17 -0600 )edit
1

@Ricky, I suggest you edit your answer to clarify it and make it a correct answer :)

Lorenz gravatar image Lorenz  ( 2012-10-21 22:58:13 -0600 )edit

What I understand is that KNOWROB is responsible for Knowledge processing which written in OWL and integrate data from different sources, and make reasoning on it such as infer missing component and CRAM make the robot take the decision to move toward the container. Is this scenario correct ?!

RiskTeam gravatar image RiskTeam  ( 2012-10-22 06:23:26 -0600 )edit

Question Tools

1 follower

Stats

Asked: 2012-10-19 09:49:13 -0600

Seen: 951 times

Last updated: Oct 22 '12