We would like to build a community for Small Basic programmers of any age who like to code. Everyone from total beginner to guru is welcome. Click here to register and share your programming journey!


Thread Rating:
  • 1 Vote(s) - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Small Basic AI Championship
#81
(translated by Google translator)

Hi all.
I updated all three files of the "AI Snake" system.  Shy
 
- "Nature" Server: RPSQ181.000-6
- Client program "Snake AI": TJSG543.000-0
- Client program "Rabbit AI": XBWP716.000-1

In the Server, I made several corrections and added a display of the number of body segments of the Snake.
In addition, I improved the decision-making algorithms of the Snake and the Rabbit.
The snake began to take into account the proximity of the border of the playing field in its calculations. And the Rabbit became more mobile.
It was not easy for the snake to catch the Rabbit even before this time. Now it has become even more difficult for the Snake to catch the Rabbit.

I wonder what will happen when neurons appear in the Rabbit's brain.  Wink
[-] The following 1 user Likes AbsoluteBeginner's post:
  • litdev
Reply
#82
(translated by Google translator)

Hi all.
I brought maximum order to the code of the “Nature” Server and the “Snake” Client.

- Server ID: RPSQ181.000-7
- Snake ID: TJSG543.000-1
The Rabbit code has not changed. XBWP716.000-1

All three programs of the "AI Snake" system work quite well.
The opponents on the playing field are quite strong. ( if anyone doubts, then let him try to fight the Rabbit manually  Wink )

But, I don’t know why on my computer the Snake can suddenly start behaving strangely.  Huh
The Snake may become disorientated. The Snake begins to move in an arbitrary direction or in a circle.
And at some point, the Snake suddenly “gains consciousness” and begins to move correctly again.
-------

As I watched the actions of the Snake and the Rabbit, I realized that the Rabbit had a big surprise for the Snake.
I see such combinations of movements of the Rabbit that will make life very difficult for the Snake.
But now I want these combinations to be put into the Rabbit’s Mind not by me, but by “genetic mutations”.
This is my next goal in working on the project.
[-] The following 1 user Likes AbsoluteBeginner's post:
  • Scout
Reply
#83
Off-topic.

I really like the new design of the Forum.

Tongue
Reply
#84
Ha ha,

This theme is actually closer to the default, the other one was better for phones we originally thought.

I had to revert to this one because I messed up badly trying to add a better message for guest users and broke it (deleted the ability for anyone to login in or out) - I now know there is no undo feature when modifying the template php code!

PS, I like your new AI version - its coming on well.
[-] The following 2 users Like litdev's post:
  • AbsoluteBeginner, z-s
Reply
#85
Hi AB,
that's a nice and stable playing field.  Cool 
However, when I started the server program for the first time, there was a firewall message.
The method of letting neural networks compete against each other is also used by other researchers.  Smile
A major event is starting in Germany tomorrow and a football team coach needs the latest findings.


Attached Files Thumbnail(s)
   
Reply
#86
Hello Scout.

I also get firewall messages every time I launch a new version of Server for the first time.
I don't know what to do about it.
But, I think that all this is correct.  Shy
Reply
#87
This is an operating system message for security reasons when one program tries to open a firewall connection port using a network protocol which is what the client/server does.  Once it has been accepted, the OS then knows to trust the specific program connection from then on.
[-] The following 1 user Likes litdev's post:
  • z-s
Reply
#88
My brain is going to explode soon.  Sick
I've never seen anything like this before. I've been chasing fantastic elusive bugs for 5 days now.
They appear where they were not there before and then disappear again without a trace.

If I don’t find them tomorrow, then I will ask for your help.  Cry
Reply
#89
(translated by Google translator)

Hi all.  Smile
I have published new versions of the programs that are a set for the game "AI Snake".
- Server program "Nature":  RPSQ181.000-8
- Client program "Snake AI":  TJSG543.000-2
- Client program "Rabbit AI":  XBWP716.000-2
In today's testing there have been no crashes or suspicious behavior of programs.
--------
A new ability has been added to "Rabbit AI".
At the very beginning of the game, the program creates a random sequence of nine actions. The Rating of this sequence is set to zero.
The moment at which this Sequence is used is determined by a random number generator. If the Rating is less than 10, then the probability of using the Sequence is 10%.
If during the execution of the sequence the Snake does not catch the Rabbit, then the Sequence Rating increases by 1. Every 10 points of Sequence Rating increases the likelihood of using it by 10%, but not more than 50%.
If the Snake was able to catch the Rabbit while he was using a Sequence, then the Sequence Rating is reduced by 5. If the Rating of a Sequence drops below -10, then that Sequence is deleted and a new Sequence is generated.
During tests I saw some not bad Sequences. But I haven’t seen a very successful Sequence yet.
--------
Now that the mechanism of operation of the “AI Snake” system is working quite stable, you can begin experiments with the Artificial Intelligences “Snake” and “Rabbit”. I want to try using the SmallBasicANN neural network library.  Cool
[-] The following 2 users Like AbsoluteBeginner's post:
  • litdev, z-s
Reply
#90
(translated by Google translator)

Hi all.  Smile
I'm almost ready to publish the new Rabbit mutation.
But, I just can't decide what rules should exist to determine the winner among the Rabbits.
My first Rabbit learns quite quickly, but it uses only one found sequence, which consists of nine actions.
The Second Rabbit takes a long time to learn, but can use dozens and hundreds of sequences, each of which is 4 steps long.
- - -
At first, I thought that the competition should contain both the Rabbit or Snake training process and a test battle.
But, now I think that, for example, the Rabbit program should be published untrained.
A person who wants to hold a competition using his computer must train a Rabbit using training matches against the Snake that will hunt that Rabbit in the competition.
That is, maybe we should create two modes of operation of Clients.
-- The first is training.
-- The second is the battle.

What do you think about this?
[-] The following 1 user Likes AbsoluteBeginner's post:
  • litdev
Reply


Forum Jump:


Users browsing this thread: 4 Guest(s)