AI: Worldsim 2 Notes

Nov 22, 2009 16:36

In between MATH and MATH and MATH and other problems, I've been messing around with a tiny simulated world for AI testing, called "Morningside". I wrote a series of challenges for myself and anyone else who cares. The final exam involves surviving for 1000 turns in that little board-game world, by gathering food, and answering a set of questions like "is red fruit edible?"

Here are some doodle-notes about a possible "sequel" world. I imagine it as a tile-based, turn-based program with basic 3D in the sense of stacked objects, falling and swimming, but I'm tempted now to dig out my old non-tile-movement, real-time sim "Nutshell", and I'm not sure what graphics system would be usable for the human interface. I guess if the graphics are only really for a human's benefit, it's okay if I use flat tiles like so:

...Even if they don't fully convey the 3D involved. Or I could use OpenGL cubes, but drawing text is a pain with that. I picture the setting as mostly an island or artificial floating base with machinery inside, which for the AIs' purposes means some swimming and the notion of interior and exterior spaces, plus pathfinding over a much larger area of say, 500^2 tiles instead of 12x8.

My idea of how item use would work is still fuzzy. The only item use in Morningside is that you can "use" a held item to try to eat it, or "drop" a key on a matching door to destroy both. I think a suitable level of detail is to have certain verbs work on items, and have some of those verbs be non-obvious. So you'd have to read a nearby sign ("read [direction]" or "read [relative coordinates]") to know that the command "red_button" works on a console, but you could know in advance that "throw" works on nearly anything. That system would allow for some tool use without getting into the details of controlling virtual hands in 3D. Some older notes follow.


"If you've gotten this far with your AI, you've demonstrated the ability to move around and act within a simple tile-based, turn-based world. Also the ability to act based on information from conversation, and to converse based on information from past actions.

Level 1: Settling In

Name: I/O 201
Purpose: Demonstrate that you can interface with the worldsim.
Goal: Send and receive at least two input and two output files. These should include at least two valid commands.

Name: Rocky
Purpose: Get used to the new entity tracking system.
Goal: Say aloud how many rocks you see. How many green rocks, also?
Hints: The entities aren't given with explicit IDs this time. You just know "you see an object at rel. coordinates 4,2" or whatever.

Name: Test of Survival
Purpose: Demonstrate basic survival with the new system.
Goal: Survive for 100 turns.
Notes: Eat the fruit, noting that one color is poisonous and reduces your energy.

Name: In Three-D!
Purpose: Demonstrate basic use of 3D movement.
Goal: Fetch the items from the water below you and the platform above you, and bring them both to the island.

Name: It's a Living
Purpose: Tying together basic skills.
Goal: Bring all of the sunken treasure to the floating platform. You'll need to eat at some point too.

Level 2: Tool Time

Name: Otter's Skill
Purpose: Basic tool use.
Goal: Take the rock and clam, and use the rock to open the clam.

Name: Raccoon's Skill
Purpose: Basic tool use.
Goal: Open the cabinet to get a can of food. Get the can opener and use it on the can. You can't "eat" the can, so use the can to get food into your other hand. Finally, eat the food.
Notes: You can only eat a food object that's held and not in a container. Using an open container generally puts its contents into a free hand.

Name: Human's Skill
Purpose: The concept of hunting, or using tools to get food.
Goal: Take the spear and use it on the fish. Eat the fish.
Hints: The fish move, so you can miss. Using the spear on a fish kills it (so it won't move again) and attaches it to the spear. You'll then need to take the fish from the spear so you can eat it.

Name: Thinker's Skill
Purpose: The beginning of reading, plus spatial reasoning.
Goal: Read the sign to learn the buried treasure's location. Take the shovel and use it in the one place the sign could refer to.
Notes: The answer will be something like "between two rocks".

Name: Trader's Skill
Purpose: The concept of trade, and more action based on conversation.
Goal: ?

Name: Freedom
Purpose: Demonstrate mastery of many complex skills together.
Goal: Play with five characters. Everyone must survive for a whopping ten thousand (10,000) turns despite hunger and no immediate food source.
Hints: To get food, sell full fuel canisters to the trader, who sells food and equipment. To produce fuel, you'll need to set up and maintain energy buoys on the water. To do that, you'll need to watch their condition using a computer...

ai

Previous post Next post
Up