Using game of life or other virtual environment for artificial (intelligence) life simulation? [closed] - artificial-intelligence

It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.
Closed 13 years ago.
One of my interests in AI focuses not so much on data but more on biologic computing. This includes neural networks, mapping the brain, cellular-automata, virtual life and environments.
Described below is an exciting project that includes develop a virtual environment for bots to evolve in.
"Polyworld is a cross-platform (Linux, Mac OS X) program written by Larry Yaeger to evolve Artificial Intelligence through natural selection and evolutionary algorithms."
http://en.wikipedia.org/wiki/Polyworld "
Polyworld is a promising project for studying virtual life but it still is far from creating an "intelligent autonomous" agent.
Here is my question, in theory, what parameters would you use create an AI environment? Possibly a brain environment? Possibly multiple self contained life organisms that have their own "brain" or life structures.
I would like a create a spin on the game of life simulation. What if you have a 64x64 game of life grid. But instead of one grid, you might have N number of grids. The N number of grids are your "life force" If all of the game of life entities die in a particular grid then that entire grid dies. A group of "grids" makes up a life form.
I don't have an immediate goal. First, I want to simulate an environment and visualize what is going on in the environment with OpenGL and see if there are any interesting properties to the environment. I then want to add "scarce resources" and see if the AI environment can manage resources adequately.

Since you said "in theory", that implies you are interested in reading a lot of academic papers on the subject, because I think there's plenty of theoretical work out there, usually supported by proof-of-concept experiments.
I took a class on this 3 years ago, so my knowledge is both introductory and out-of-date, but try searching for something like "neural network language evolution" on Google Scholar*. The simulations in those papers should give you some ideas of what other researchers have tried. Then, a good place to start is to replicate one of the experiments that you find interesting.
Disclaimer: I had to do just that for the class, and it sucked. I decided that I preferred working programs to theoretical experiments. But you said "in theory" so this might be the kind of thing you really like.
*Sorry, I can't remember the exact papers we read.

Related

Best Platform For Facebook Game [closed]

It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.
Closed 9 years ago.
I realize the question seems very broad and subjective, but I'm mostly looking for suggestions on a platform choice so that I don't paint myself into a corner later on (I'm more familiar with client-side programming, so excuse the lack of proper server jargon).
First: I am building a game. It will be multiplayer, with some real time interaction between players. Obviously, I'm not talking FPS, or even at the scale of a RTS, but something similar to what the Google Channel API does in terms of messaging.
I'm looking for the best Server/Client pairing.
Now, I've come to the realization as a result of my day job, that C# has become by far my best language. I'm also getting very familiar with WPF, so Silverlight seems like a natural extension of that understanding.
From what I can find search-wise, Silverlight is not a popular Facebook app platform. Is there a reason for this?
What's the "standard" client-server pairing? Is it Flash for the front end, what's the back end?
Does anyone have a favorite pairing? Easy to prototype/dev test?
Is there a good clientside platform choice that has an open source game engine, and can also reach a majority of browsers (i.e. the iPad as well as desktops)?
Edit: I have also stumbled upon the Windows Azure Social Toolkit. Anybody have an opinion on using that as a starting place?
http://watgames.codeplex.com/
Most social games use Flash for the front end because of its market saturation, roughly 98% right now. If you use anything else, you will lose potential users for two reasons: 1) some users cannot install the platform you want to use (e.g. a work computer with no administrator access) and 2) some users can, but they don't want to install the platform you want to use.
As for the back-end, there is no "standard" and is more a matter of taste and preference. Use what you're most comfortable with and prefer to code in.
Just make sure whatever back-end architecture you choose allows you to add more application servers and database servers without having to bring the game down. The easiest solution is probably distributed key-value databases (e.g. Cassandra) for this.

Common uses of AI techniques [closed]

It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.
Closed 11 years ago.
I am a build engineer in my current position but I dabble in applying AI techniques to improve our capabilities. What I am interested in is how your teams use AI Techniques (Pattern Recognition, Machine Learning, Bayesian Classification, or Neural Networks) in real life. I am looking for ideas on other ways of improving our processes and fun projects to start.
Examples of things I have tried:
Naive bayesian classifier for automatically assigning class labels (misdemeanor, felony, traffic violation) to free form text entered by court reporters.
Generated team schedule for the year using a genetic algorithm using a fitness function that assigned demerits for any scheduling conflicts, over / under allocation of team members, holidays, personal time off.
Binary associative memory for quickly querying environment configuration information for all applications deployed to all environments; including URLs, ports, source control location, environment, server, os, etc

What is devops? [closed]

It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.
Closed 10 years ago.
What is devops? It has something to do with combining dev and ops but I don't get it.
It's not about "combining" Dev and Ops, that's just the word for it as, I think, it was coined by Patrick Debois. As stated above, it's about providing the scaffolding or structure, and the cultural change to accept intermingling of Dev-side and Ops-side talent, to allow you bridge the DevOps gap. What they used to call "over the wall" or "over the transom" delivery of application code to IT to "take it live."
This wasn't a big problem when you had one gonzo big release every 12 months or so. With Agile Methodology and with cloud infrastructure, however, you can now have releases occurring every couple of weeks and into a (private or public) cloud where things can get complex fast. Flickr did a presentation earlier this year where they can do 10+ releases in a day! That rams a very large workload onto QA and Ops. DevOps refers to the movement and the recognition of the need for planning, coordination and automation tooling that has some Dev components and Ops components.
It's not exactly combining Dev and Ops, but rather providing the platform, tools, knowledge, and resources for these two teams to work better together. With the increase of agile development, IT operations have become a bottle neck in most organizations, and are not capable of deploying applications into the data center on-time and error-free. There is a lot of movement around application release automation (such as Nolio ASAP), and provisioning automation (Puppet, Chef, etc.).
From Wikipedia:
DevOps is a set of processes, methods
and systems for communication,
collaboration and integration between
departments for Development
(Applications/Software Engineering),
Technology Operations and Quality
Assurance (QA)
It's really a culture, or a cultural movement, aimed at removing the barriers between developers and operators (a distinction that tends to be more rarified as technologies like cloud computing, continuous delivery and mass/automated deployment are getting mature and mainstream). If you call yourself a "DevOps", you're doing it wrong!

C Linux open source projects [closed]

It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.
Closed 12 years ago.
Sorry if this has been asked elsewhere. I am a C,Win32 developer and want to learn similar stuff in the linux world. What are the best and easy opensource projects for learning similar stuff on Linux.
Like in C,Win32 world i want to start off with User space and onto advance stuff like internals,device drivers etc. I am interested in Non UI stuff. As i have a day job and work extensively on Windows i would like to see short little projects and contribute to them in free time.
The GNU coreutils are probably as low-level and as "Linux-ey" (that's not really a word, is it?) as it gets in user space. Not always easy-to-read code, but most of those sections are bugfixes of one kind or another. So, you'll learn about some pitfalls of modern unix-like systems on the way. That, and most of the basic unix programming principles.
As most utilities are very small, just trying to rewrite some only with the spec from the manpage should give you insights into Linux (or unix for that matter) no tutorial can offer.
The book Linux Device Drivers is freely available. You can get a good overview of what's going on "under the hood" reading through that book. It also has several examples of "virtual" device drivers that don't interact with actual hardware. Follow the sample code and you can create things like a driver for /dev/null, /dev/random, etc without having to worry about hardware interfaces.
The best advice would be to pick one and stick with it no matter how overwhelming it is, once you get your feet wet in it, enjoy... this is a $64,000 question -
What specific areas of C/Win32 did you enjoy most?
Was it hardware based?
Writing drivers?
No one can answer that nor expect to pick the answer for you, except yourself....
What was it that gave you a "high" in the Win32 C world...
Once you have that answer, then look for that alternative, somewhere, in the Open Source world....and relax, participate in IRC channels, forums, and engage.
You may have to re-learn using make/gcc toolchains and autotools in order to get your feet grounded...if you're comfortable with that... excellent... :)
Some will have their coding style and standards set down in stone... so pick the easy project that you feel you'll get a kick out of, and above all, ENJOY! :D
what are you interested in ?
The nice thing about linux is that the source for almost everything is available.

Most significant present-day AI developments? [closed]

It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.
Closed 10 years ago.
What do you consider the most significant progress / breakthroughs in real world applications of present-day AI research? (including, but not limited to: machine learning, statistical data processing, and other disciplines spinned off from AI).
Please spare / do not want: ramblings about AI winters / disappointment;
Do want: links, and pointers to concrete real-world applications.
I think the most significant breakthrough is that real world consumer applications actually utilize AI routinely today. It has become common, and is not just mere curiosity of academic research and special applications any more, like it was ten years ago. Some examples:
Speech and text recognition (e.g. iPhone).
Face recognition in digital cameras.
Search engines.
Email spam filtering.
Automatic gearboxes of cars.
Games.
etc.
It's all around us! :-)
I would add autonomous robots like those in the DARPA challenges to the list. Driving through a desert or rural area, recognizing the terrain, avoiding ostacles, finding paths and so on are definitely tough AI problems.
Actually, AI research is having a renaissance and has been for the past 5-8 years or so.
Back when neural networks were all the rage in the 70s and 80s, they were showing such promise in solving simple tasks that people's hopes were sky-high for the whole field of AI. Then, when it turned out to be very difficult to move on from the very simple tasks to real-world problems like language acquisition, a lot of people became disillusioned. Until recently, that is.
I am not the best person to ask -- being no AI expert -- but I believe some of the most promising areas are:
Semantic search and data mining (including text classification)
Statistical machine translation
'Real intelligence' HTMs (read Jeff Hawkins' On Intelligence)
Relevance / Recommendation engines (essentially a hybrid of data mining and network analysis)
Visual object recognition
as per #mad-j game bots A.I. has come a long way: link to bots get smart
alt text http://www.spectrum.ieee.org/images/dec08/images/bot01.jpg
I think real/strong AI has lost it way, for decades the speaking/understanding computer was going to be available 'in the next 5 years'. Then we ended up with Dragon (no connection) which doesn't understand anything, it's a clever microphone, and it's a while since I've heard anything about AI - it's just not mainstream anymore, because it is too damn hard. One thing I think has been proven beyond doubt real AI, as in thinking machine, Turing Test passing AI - is still a (very) long way away. Don't get me wrong, there's tons of good research going on, but we'll have to wait 200-500 years for a result.
My gut feel is they'll be some interesting stuff coming out of massively parallel systems, especially ones built with really simple nodes. And if I had to point at a single AI breakthrough I'd be looking at spin offs from the nano-tech field, getting really small and seeing what cells in the brain are up to - science fiction it is, but we'll crack it one day.

Resources