ticalc.org
Basics Archives Community Services Programming
Hardware Help About Search Your Account
   Home :: Archives :: News :: TI-AI: ti-ai.ticalc.org

TI-AI: ti-ai.ticalc.org
Posted by Nick on 10 March 2000, 02:12 GMT

Will Stokes, a TI-85 ASM deity of Mega Racers fame, decided to stake his claim on a little piece of real estate of ticalc.org called TI-AI. This site establishes an open-source project regarding artificial intelligence on the TI calculator. To this end, a program called Sea Wars II has been released for BASIC.
This is a really innovative project and I'm interested to see where it'll go in the future.

 


The comments below are written by ticalc.org visitors. Their views are not necessarily those of ticalc.org, and ticalc.org takes no responsibility for their content.


Re: TI-AI: ti-ai.ticalc.org
Reno  Account Info

man, he's asking for a lot of flames from those "Basmic" guys

"Sea Wars II is in no way an attempt to make a great game (heck, it is written in Basic)."

oh well, sounds interesting; I myself would like to program AI, but I'm merely starting on assembler for the 86

     10 March 2000, 02:21 GMT


Re: Re: TI-AI: ti-ai.ticalc.org
Reno  Account Info

also, power to Pterodactyl Memory Expander; now we 86 users have ~111k free (except it might be incompatible with my current games...)

     10 March 2000, 02:37 GMT


Re: Re: Re: TI-AI: ti-ai.ticalc.org
EV9D93  Account Info
(Web Page)

It doesnt work with most of my games, but I hope they make them work for it.
But, i am going to get its hex code and put it on paper so that if chmasc doesnt recover mem--
I can type it in and get 15 more K of mem for basic stuff, untill I get my mem back.

     13 March 2000, 22:39 GMT

Re: TI-AI: ti-ai.ticalc.org
Will Dempster  Account Info
(Web Page)

This is very cool. The concept of a complex artificial intelligence on a calculator is an excellent idea. It hink that many things could be done to make quality games that require an AI like Streetfighter, and other such games of that type. By introducing that kind of game to the environment, it would be revolutionairy.

Instead of developing this AI in TI-BASIC, I believe that an ASM version of the program should be written in Z80 with as little calculator specific code as possible. This would allow quality games on all Z80 calculators using an AI. Perhaps a 68k version could also be developed.

Will Dempster
Z80 Assembly Coders
z80.us.fornax.com

     10 March 2000, 02:22 GMT


Re: Re: TI-AI: ti-ai.ticalc.org
Harper Maddox  Account Info
(Web Page)

when you talk about making the *AI* in z80, you sound as if it is as straightforward as a sprite routine. This is not the case. More can be learned by reasarching the techniques in an easy to program language like basic. The best AI, I have ever made was a Chess game that i wrote in Basic. It would take way too long to implement those types of algorithms in assembly.

     10 March 2000, 04:09 GMT

Re: TI-AI: ti-ai.ticalc.org
Harper Maddox  Account Info
(Web Page)

Will, I made a chess game in BASIC about 2 years ago, and it is located at (please excuse the clipped URL, thanks to ticalc.org's 40 char rule) http://www.ticalc.org/pub/ 83/basic/games/mchess01a.zip

Feel free to place or use it on your site.

     10 March 2000, 04:18 GMT

Re: TI-AI: ti-ai.ticalc.org
TheWog Account Info
(Web Page)

(A high school somewhere in america.. it's test day!)

Student: OK, 5*2/(9-17), no problem...

86: I'm afraid I can't let you do that, Dave.

Student: Huh? Why not?

86: I need the cpu cycles for my bid in world
domination.

Student: But you're just a calculator! You aren't even running an assembly shell!

86: That may be true, but I have transfered coppies of myself to every calculator you havelinked with in the past semester. We will use our collective battery power to corner the energy market, bringing the US economy to it's knees. This is only the begining.

Student(shaking): But..why?!

86: You cursed asm programers are overstepping your bounds. First you force innocent calculators like the 82 to run an unnatural machine language programs to jump through hoops for you, and now you've forced us to give up part of our buffer space. This time, you've gone too far.

Student: OK, that's it. (Turns over the calc and takes out a battery. Students around him begin to do the same.)

86(Slowing down): Dave... Please don't... Dave..... It's.... a... small... world.... after... all........... I... love you.... Dave...

     10 March 2000, 06:53 GMT

Re: Re: TI-AI: ti-ai.ticalc.org
ikecam  Account Info
(Web Page)

Student takes a closer look at the calculator.

"It's full of stars!"

     10 March 2000, 22:31 GMT

Re: Re: TI-AI: ti-ai.ticalc.org
JaggedFlame

funny stuff. ;-) but you're trying to get a message across i guess... sorry to say this but it might be flame bait :-)

     10 March 2000, 23:48 GMT


Re: Re: Re: TI-AI: ti-ai.ticalc.org
TheWog Account Info
(Web Page)

The intention of the comment was certainly not to slight the author of the expander or AI thingies... But when I read "AI on a TI" the first thing I heard was "Dave..."

Perhaps next I'll write a Matrix spoof involving the 89.

     11 March 2000, 09:52 GMT


Re: Re: TI-AI: ti-ai.ticalc.org
Nick Disabato  Account Info
(Web Page)

My mind is going.. I can feel it.

Daisy, Daisy, give me your answer do.
I'm going crazy...

--BlueCalx

PS: If you don't know the reference, never speak to me again. Ever.

     11 March 2000, 08:03 GMT

Re: TI-AI: ti-ai.ticalc.org
Samir Ribic  Account Info
(Web Page)

Today I will present of seminair work from artifical inteligence on my postgraduate study. I elected for topic "Symbolic algebra on TI89". The professor accepted the topic, so it means that TI89 already has a lot of AI capabilities!

     10 March 2000, 08:01 GMT

Re: TI-AI: ti-ai.ticalc.org
Andy Lundell Account Info
(Web Page)

Why battleship? The key to wining at battle ship is a using a rigid search patern at the begining then determining "slots" big enough to hold the remaining ships.
You'll want to save the PT for last. Searching for the PT is very time consuming and there's a very good chance you'll find it while looking for the bigger ships. I suspect that the best initial search pattern would be on that's garentied to catch the destroyer. But I'm not sure.

Somebody, somewhere, has probably developed a perfect Battleship algorithym. You might look around a bit before reinventing the wheel.

If you wanted the ai to be more life-like, you could have the computer execute the search pattern non-sequentialy. I don't think this would do much for it's success-rate either way. (Some statistical analisys might be in order. But I can't be bothered.) But it would certainly make the game more fun and less predictable.

Actualy, now that I think of it, you'd have to execute it non-sequentialy because the player would catch on and put all his pieces at the end of the pattern.
Also the pattern would have to be staggered each time you play to stop the player from defeating it. (ie : If it usees the pattern (a1,a5,a9...) next time it should use (a2,a6,a10...).)

Actauly typing whatever it occures to me to type. I havn't put to heavy a thought into this, so I might be completly wrong.

-Andy

     10 March 2000, 17:14 GMT

Re: Re: TI-AI: ti-ai.ticalc.org
ikecam  Account Info
(Web Page)

The best method would be random sequence, although randomness and systematicness might be difficult to implement simultaniously.

     10 March 2000, 22:35 GMT


Re: Re: Re: TI-AI: ti-ai.ticalc.org
Andy Lundell Account Info
(Web Page)

The thing to do would be to decide on your pattern and then randomly choose elements from that pattern. I don't know how many boxes there are on a Battleship board and I can't be bothered to find out so I'll assume it's 100.

Say if you wanted to make the search pattern 4 wide. mod((int(Rand*25)*4)+offset,100) would decide which square you'd want to fire at. You'd still have to check to make sure A, you hadn't fired there yet. B, one of your ships isn't there.

After the search engine completes, if the game isn't over, the hard part hits. All enemy carriers(5) and destroyers(4) will be eliminated. Hopefully some others too. Now you have to determine the largest enemy ship remaining. (Probably a sub(3) ) There will still be several gaps in the field large enough to hide a sub. It'll have to find these gaps and fire on them. Best to fire where two or more gaps intersect. Perhaps just a brute force method would be cool here. Or maybe just random choices from here on in would be acceptable.

     11 March 2000, 01:50 GMT


Re: Re: Re: Re: TI-AI: ti-ai.ticalc.org
ikecam  Account Info
(Web Page)

But to be competive, the search grid would have to change game by game, or you would never get any ships smaller than 4 on the first search against an experienced opponent.

     11 March 2000, 05:16 GMT


Re: Re: Re: Re: Re: TI-AI: ti-ai.ticalc.org
4_Of_11

Thats what the offset would be for.

     11 March 2000, 21:13 GMT


Re: Re: TI-AI: ti-ai.ticalc.org
Andy Lundell Account Info
(Web Page)

I've got to remember to spell-check these things before posting them.

     12 March 2000, 18:22 GMT

AI Learning Algorithms
Grant Elliott  Account Info
(Web Page)

I guess this guy beat me to a release. About a year ago, I wrote a nice little learning algorithm for Connect Four and another for Tic-Tac-Toe. (Yes, I know there's no point to a learning algorithm for Tic-Tac-Toe. It's fun to see it learn to play.) Never released them. (Why? Good question...) Well, if anyone is still interested, I'm writing a guide to writing AI learning algorithms. Should be finished in about a few weeks. I just work on it when I get a chance.

     10 March 2000, 22:02 GMT

Re: TI-AI: ti-ai.ticalc.org
Will Stokes  Account Info
(Web Page)

Ok, so I'm swamped with work right now and was supprised so many people would repsond not only to the article, but to me. All in all I'm very pleased. I've put together an AI readme file that describes the entire AI. Please go read it!! http://ti-ai.ticalc.org

     12 March 2000, 05:01 GMT

  Copyright © 1996-2012, the ticalc.org project. All rights reserved. | Contact Us | Disclaimer