I have:

  • set of n-dimensional points that I know are inside of the shape
  • n >= 18, range on all dimensions has upper bound and lower bound (no axis goes to infinity).
  • shape is pretty large in this n-dimensional space, occupies roughly 10-50% of the whole space volume
  • knowledge that the shape is continuous, but it's definitely non-covex - has dents, has sealed bubbles inside it.

I wan't to have a model that can tell me fairly quickly if given point is inside of the shape or outside of it. Better yet a model that when a point is inside shape, can tell me, how close the point is to a shape contour.

I'm guessing neural networks would be good tool for this. What specific parameters of the network and the methods of learning would you recommend?

I'm fairly new to machine learning and neural networks.

Additional remarks:

  • Points that I have to determine the shape are not random, they lie on some lines in n-dimensional space and I can decide how to shape these lines when I gather data.
  • I'd like to avoid, false negatives, points that are guessed to be inside the shape but they actually aren't. False positives are way less troublesome for me. If some point that's inside of shape is guessed to be outside of it, then almost nothing bad happens if it's random or close to the shape boundary.
  • I probably could get additional information for my data points. Additional number that is likely to be higher if the point is on or near the boundary.

Additional information that might provide a clue about the shape:

  • if n would be 1 then the shape would always be line segment
  • if n would be 2 then the shape would never have holes
  • you can always get from one point of the shape to any other by some continuous trajectory, shape never consists of more than one part
  • the practical problem I'm trying to solve is that I have a hexapod robot with 3 motors on each leg and I wan't it to model allowed positions of motors so that the body of heaxapod robot won't collide with itself - that's the inside of my shape, boundary is when I try to move the legs to position where they collide with the body (or themselves), the outside of the shape is all positions where I can't go because body of robot is rigid and by trying to go there persistently would damage robot.
  • that's the concrete robot: http://www.theoldrobots.com/images20/bioloid3.JPG but I'd like to have general enough modelling and learning setup so I can use it for other robots with different number of motors and legs.
  • $\begingroup$ Pedantically speaking, what you want to do is impossible: it's impossible to tell whether a given point is inside the shape or outside given solely the information provided: for all you know, there could be a really deep, narrow, thin hole that was drilled into the shape that doesn't go through any of the known points but does go through the query point. Given that you're asking about ML, do you have some intuition for what kinds of shapes are more likely than others? e.g., that the perimeter probably doesn't have sharp curves, or something like that? (cont.) $\endgroup$ – D.W. Jul 13 '16 at 17:37
  • $\begingroup$ Any ML method will have to either explicitly or implicitly make some assumption or use some prior that helps constrain what kinds of shapes are possible or likely, so it might help if you can identify possibilities for that. That'll require domain knowledge you have but that we lack. $\endgroup$ – D.W. Jul 13 '16 at 17:37
  • $\begingroup$ I understand that it won't be perfect. But since I can probe space for as long as I like so I can improve accuracy. I believe there won't be narrow "outside" spaces going through "inside spaces". I'll edit the question to spill the beans about what I'm trying to achieve so you have better information about the domain. $\endgroup$ – Kamil Szot Jul 13 '16 at 17:56
  • 1
    $\begingroup$ Well, I encourage you to do that kind of research before asking. That will help you ask a better question -- or, you might discover how to answer your question on your own. I suggest you view CS.SE as a place to ask after you've done some research and exhausted all the standard sources, rather than as a substitute for doing a literature search yourself. (My comment was a tiny bit more than "Google it"; I gave you some specific terms by which it's likely to be known in the robotics and ML literature, which hopefully should help find work more quickly.) $\endgroup$ – D.W. Jul 13 '16 at 21:15
  • 1
    $\begingroup$ @D.W. Right, sorry, you also said "robot motion planning", "control synthesis". Second one is new for me. I'll check that out. If I missed anything else from your comments (other than "robotics", "papers", "conferences" and "google scholar") please let me know. $\endgroup$ – Kamil Szot Jul 13 '16 at 21:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.