Hacker News new | ask | show | jobs
by rayalez 4066 days ago
The big thing that prevents me from getting into AI is the lack of practical projects that I can build.

It is a very interestimg field, but as a self-taught programmer I'm used to learning by building things, and it's hard for me to come up with some project that would be practically useful and yet doable.

Does anyone have any ideas?

5 comments

After competing in an AI contest a few years back, I had fun and wanted to do more, but ran into the problem you describe.

The state of hobbyist robotics is very hardware-centric. I not yet discovered something appropriate for use by AI programmers.

So I decided to step back and work on theory. I did this for several years and recently finished. Hobbyist robots still aren't ready to implement my ideas so now what do I do? I started working on a software architecture based on my high-level research. But how to test it? So now I am working on software to simulate an environment for my AI to interact with because I don't have the time or skill to build a real robot.

I honestly don't think this is a bad thing because I would imagine that when we start to work on "real" AI (not this nonsense that passes for it today) testing behaviors in a simulated environment before deployment to hardware would save a huge amount of time (and physical damage.)

Now I am hoping that once I have taken my virtual habitat as far as it can go, hardware will be available for me to apply what I have been working on. My hopes are low.

Game AIs, Stock market bots, character recognition, adaptations to game of life, computer art wherein you get an AI to paint or to draw and can seed it values. There's lots of cool stuff you can hack away at. Even training a neural net to recognise a '3' is quite interesting.
These things suck. I want a robot with sensors, the ability to move and an arm that can be programmed with a language that is appropriate for AI. That doesn't sound like something technically difficult.
So, what's holding you up exactly? RC cars are cheap, people have done cool stuff with old android phones for sensor packages. If you need more horsepower, stream the data back to a PC, you've got wifi on the phone. New industrial arms are expensive, but you can scrounge one, or get a hobby one. sparkfun had a uArm that would probably work for you.
Because I am a software developer and intelligence hobbyist (from the biology/ethology camp.) I don't know a damn thing about RC cars or android phones nor do I have the time or desire to learn. Sadly, the hardware tinkerers don't know a damn thing about programming intelligent behavior. Until there is some sort of API to connect hardware to a software environment programmable by specialists in that domain, hobbyist robotics will remain in the realm of Battlebots.
Hmm. There are a few options. You could get a roomba, and put a laptop on top of it, use the laptop camera to sense, and the serial port to command the motors. I kinda think you could use python to glue everything together.

Mindstorms are really easy to get started with if you want more control over what the robot will look like, but you'll be facing more mechanical engineering problems.

diydrones has a lot of good information about getting things connected. Most people look to RC cars because they're so inexpensive.

So, the big thing with hardware is it kind of sucks. It always feels like using a butterknife to tighten screws. Things are challenging in ways you don't expect. With software, if you make a mistake, you fix it and recompile. With hardware, you hope nothing breaks.

I too wish it were easy. It's not, it's complicated in ways that suck. If you have money to throw at the problem, i bet you can find a nice industrial platform that's built like a tank that has a nice API. That kind of stuff is thousands of dollars, and i'm not familiar with it.

Maybe I'm misunderstanding you, but robotics is now, and probably always will be, inherently about combining skills from electronics, mechanics, and software. I'm not sure what you're looking for, a complete robot that you can simply program? You could look into the NAO robot[1], probably too simple for you, but I think they're pretty cool. Wish I could afford one ;)

1 -- https://www.aldebaran.com/en

- Politics: Predict which candidates/bill will do well. Or predict which bills you might care about. Identify the strongest features. Publish a writeup with nice maps/charts. Inputs: FEC donor data, vote history.

- Sports: Predict game outcomes, player performance. Make money playing fantasy sports?

- Real estate: Build a better tool for house assessments that identifies "comps" and predicts what the house should cost.

- Astronomy: Something about exoplanets?

- Amazon prices: Find opportunities to buy/sell.

- Stock prices: Inputs are news/Twitter, outputs are predictions of closing price.

I'd start with your hobbies and go from there!

I don't know much about AI, though I know a bit about ML, statistics and neural nets. And one good way I've found to learn those subjects has been to find interesting papers and then figure out how to replicate/reimplement them.

This might sound a little uninspiring, but it's a solid start, and often you can make improvements over the authors' original stuff -- especially in areas where you may have more experience, e.g. computational efficiency.

Try to build a Siri clone, or try any of the Kaggle projects using neural networks.