This a prototype implementation, denoted as Orpheus 0.1, of the CAN rules, together with a robot rescue application.
The code consists of 700 or so lines of Prolog, and has been tested under Ciao Prolog and SWI Prolog.
Please note that this is 'Research Code', with a capital R and capital C! In other words, it is not very well documented, is flaky, hacky and brittle, but it does work. Cleaner and neater versions with more functionality will be coming at some point.
Output on rescue robots scenario
What is the name all about?
Well, you may regret asking that, but anyway ...
In classical Greece, Orpheus was "chief among poets and musicians, and the perfector of the lyre" (WikiPedia). He was known for his musical and artistic prowess, and is most famous for visiting the underworld, where his music softened the heart of Hades, in order to rescue his wife Eurydice. This story inspired the French composer Jacques Offenbach to write in 1858 the comic operetta `Orpheus in the Underworld', the climax of which is an energetic dance known as the Can-can.