roomba alg

  • 6 Replies
  • 222 Views
*

yotamarker

  • Trusty Member
  • *********
  • Terminator
  • *
  • 768
    • battle programming
roomba alg
« on: February 20, 2020, 11:16:27 AM »
I was wondering if someone has the Roomba vacume algorithm
for moving about the room, deciding to finish, and returning to the charging point

*

WriterOfMinds

  • Trusty Member
  • *******
  • Starship Trooper
  • *
  • 310
    • WriterOfMinds Blog
Re: roomba alg
« Reply #1 on: February 20, 2020, 07:42:46 PM »
Why would any of us have that?

There are various online articles you can read about how it works, but I presume the full algorithm is proprietary to iRobot.

*

LOCKSUIT

  • Emerged from nothing
  • Trusty Member
  • ******************
  • Hal 4000
  • *
  • 4108
  • First it wiggles, then it is rewarded.
    • Main Project Thread
Re: roomba alg
« Reply #2 on: February 20, 2020, 09:57:38 PM »
You could probably make your own. It's as dumb as a worm I wager.

All you do is make your own wheeler and set it to use random math function to go crazy all over the floor. Now you just cleaned 50% of your home already. Assuming the bumper and vacuum are working well.

https://www.youtube.com/watch?v=zkWANWRqXuU

https://www.youtube.com/watch?v=uZOEW8K3niA
« Last Edit: February 20, 2020, 10:20:39 PM by LOCKSUIT »
Emergent

*

Art

  • At the end of the game, the King and Pawn go into the same box.
  • Global Moderator
  • **********************
  • Colossus
  • *
  • 5807
Re: roomba alg
« Reply #3 on: February 23, 2020, 03:51:56 AM »
Some of the early vacuums like the roomba's basically did a bump and travel and some bots would employ one of three different pattern, a random zig-zag after bumping something, a perimeter sweep with each successive pass becoming closer toward the center and the opposite would be a progressively outward spiral.
A better technology that has been in use for over a decade was used by the Neat-O robot vacuum. It used a laser mounted atop it's base that performed a laser map of it's surroundings (room) and could navigate without the need to blindly bump into things in order to find its way around the room. The result  would be long parallel lines almost as if a human had pushed a standard vacuum to one wall, turned and pushed back toward the other wall in a nice row-next-to-row pattern (if carpeted).

They have come a long way and can stop when power runs low, return to base, recharge, return to where it left off and continue vacuuming! Others are able to perform a self-empty function when the debris bin get full.

As to the algorithm for the laser guidance or the bumper bounce off/continue, as WOM mentioned, I would think that would be an in-house secret.

@ Locksuit, if I recall correctly, did some early experiments with a small programmable robot that could move about a small room or area. Was there some secret algorithm you used for that or was it part of a scripted code that came with the robot?
In the world of AI, it's the thought that counts!

*

LOCKSUIT

  • Emerged from nothing
  • Trusty Member
  • ******************
  • Hal 4000
  • *
  • 4108
  • First it wiggles, then it is rewarded.
    • Main Project Thread
Re: roomba alg
« Reply #4 on: February 23, 2020, 07:19:19 AM »
All I did was make it learn the motor speed/direction that made the accelometer go high, and then at the wall I was trying to get it to cry when the accelometer stopped giving the 'good signal' (stopping pleasure = pain, go figure), then it stops tugging the floor cus it no working, it cries, and tries random actions, once again. Once it learns to rotate around and start pushing itself forward, it is laughing again, and so the next time it meets a wall it chooses the best decision that stopped pain. This way it learns to walk forward plus avoid walls 'before' reaching them because they look similar (the distance-o-meter sees proximity as similar if range if close enough to when seen during the correction actions that got it out of pain...

However GPT-2 is the way of AGI, not so much the physical motor learning...it can't solve Problems not in front of itself!

The title is perhaps a little outdatted and hype-like from a beginner's view
from 2016 lol
5:40-9:15 is the actual bot
14:50 and on is a lundon UK dubstep song hehe
https://www.youtube.com/watch?v=bTs5d4Xztas&t=395s
Emergent

*

yotamarker

  • Trusty Member
  • *********
  • Terminator
  • *
  • 768
    • battle programming
Re: roomba alg
« Reply #5 on: February 23, 2020, 04:00:16 PM »
I remember seeing a very based alg at a pdf called robot builders bronze, but I cant find that book
now.

I did however find this :
FIND-PATH(x, y)
if (x,y outside maze) return false
if (x,y is goal) return true
if (x,y not open) return false
mark x,y as part of solution path
if (FIND-PATH(North of x,y) == true) return true
if (FIND-PATH(East of x,y) == true) return true
if (FIND-PATH(South of x,y) == true) return true
if (FIND-PATH(West of x,y) == true) return true
unmark x,y as part of solution path
return false

which is part of the solution. and has other implementations

*

LOCKSUIT

  • Emerged from nothing
  • Trusty Member
  • ******************
  • Hal 4000
  • *
  • 4108
  • First it wiggles, then it is rewarded.
    • Main Project Thread
Re: roomba alg
« Reply #6 on: February 23, 2020, 09:13:12 PM »
Maybe HS would like Lego Mindstorms EV3 for the motor usage? It has less capability as Blockly but it is as easy to use!!! It doesn't generate Python etc code though, just runs in the bionics device. GO BIONICS!!!
Emergent

 


Users Online

92 Guests, 1 User
Users active in past 15 minutes:
LOCKSUIT
[Trusty Member]

Most Online Today: 117. Most Online Ever: 340 (March 26, 2019, 09:47:57 PM)

Articles