Skip to content

Experimenting with the development of a high level behavioral description language for autonomous robots

Notifications You must be signed in to change notification settings

flplv/conformity

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This is a project under experimentation.

We are experimenting with a novel approach to behavior description, our goal is to describe complex robotic behaviour with the simplet logic as possible.

The core model is "when a given state is true, enable a other given behavior" and then simply use ifs and elses as needed to build complex behavior.

This code...

    if not api.check(ball_grasped, "condition_met"):

        if api.check(a_ball_in_sight, "condition_met"):
            api.activate(pursue_ball)

        api.prepare(grasp_action) 

        if api.check(a_ball_in_fork, "condition_met") and api.is_prepared(grasp_action):
            api.activate(grasp_action)

    else:
        if api.check(in_basket_location, "condition_met"):
            api.activate(drop_ball)
        else:
            api.activate(go_to_basket_location)

... yields this robotic behavior: https://github.com/flplv/conformity/blob/master/conformity-demo.mp4

About

Experimenting with the development of a high level behavioral description language for autonomous robots

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages