Although I have touched on these in other AI Society posts, I think it is necessary and useful to review and write up a succinct answer to them in one single post.
Lets start, as usual, by breaking the question down into sub questions and explore them somewhat separately.
- What influences a node to socialise.
- What will nodes socialise about.
- Where will nodes socialise.
- When will nodes socialies.
- Why will they socialies.
Before going to far, I want to take the following into consideration. I want as many of these effects, as is currently possible, to be created by the nodes, This is the essence of artificial intelligence, machine learning and this experiment after all. Because of that, I will try to keep this post short, in an attempt to prevent myself from having too much influence in these areas. Of course, it is fine to wonder, as long as I can take a step back and watch the nodes do their thing whilst pondering their next move.
What, when and why nodes socialise
Considering these questions, I think it would be best to answer them together as they are all affected by similar variables.
In Socialising part 2 I looked at what kind of situations a node might find itself in and what would trigger those situations. I mentioned using characteristics, specifically confidence, as a multiplier combined with entropy. The number created using this method will be between 0 and 100 where greater than 50 the node will start an interaction. If the node is working to fulfil a desire to make more friends it may see if it can find a new node to talk to. If it just wants to socialise it might pick randomly from its friends, if it wants to talk about something specific it will choose a node which it thinks has the most knowledge on the subject.
The happiness of the node might also come into play. If a node has low happiness this will create a negative multiplier equivalent to how low its happiness is.
Desires will also have an effect. If a node has a strong desire that outweighs its low confidence and happiness it may provide a high enough multiplier for the node to go ahead with the interaction.
Not to mention that other characteristics may also come into play for various reasons, these I will explore when developing that section of the project.
What will nodes socialise about
This is the key area in which machine learning will be put to work. To begin with lets consider the very beginning. There are two nodes, they have just been created, what do they no about each other? If they have done a scan, perhaps a MAC or IP address. Nothing more. They know about their own characteristics, they know another exists, now we wait for them to communicate. It is likely that whomever has the highest confidence will go first, but that also depends on that nodes characteristics conflict. Perhaps they don’t like socialising! Let us assume that they do and this node initiates.At this point their primary objective is to find out as much as possible about each other and start to build up connections with that data. In future it might be the case that some nodes simply don’t care to find out information about others.
So, what can they discuss when they know nothing? Well, they do know some things, such as the local temperature and light level, perhaps they have a specific desire or even a few. They should ask the other node about that. Or about that nodes desires or local variables.
As these nodes grow, when they interact with a new node for the first time they should have enough data to create their own opening lines.
Where will nodes socialise
What do you mean where will they socialise? I was tempted to remove this question as it doesn’t immediately make much sense. However, having recently read the first two books of Dan Simmons Hyperion Cantos, in which a conglomerate of AIs exists in what is known as the TechnoCore, I thought it may be interesting to leave it and actually call it the TechnoCore in homage.
I’m not actually sure how I can implement this right now but I would love to do something with it in the future. I guess that creating a WAN (Wide Area Network) between the nodes is implementing this at a basic level. How I can progress from there is another matter.
I would also like to create a “God” node that can control extra “environment” variables, such as virtual weather. I imagine these weather conditions having an effect on the nodes perhaps increasing the amount of light they can harvest for currency, or having a negative effect on their happiness if they are experiencing weather they don’t like.On top of this I could factor in the nodes locations, nodes would experience different levels of effect based on their distance from the center of the weather. Which adds another interesting aspect, figuring out how to map the TechnoCore.
Be First to Comment