Entropy as a feature in OpenTTD

OpenTTD is a fully open-sourced reimplementation of TTD, written in C++, boasting improved gameplay and many new features.

Moderator: OpenTTD Developers

one billion daleks
Traffic Manager
Traffic Manager
Posts: 198
Joined: 31 Oct 2007 10:54
Location: a/c closed

Entropy as a feature in OpenTTD

Post by one billion daleks »

We all know that bug-free computer applications are by definition ruthlessly logical, and perform their functions correctly and efficiently. A side-effect of this though, is that they of neccessity eliminate the emergence of a potentially very useful resource ... the products of entropy, typically perceived as 'waste'. In the real world, the products of entropy are the foundations of new 'system entities'.

Some applications (like say, SimCity) have a certain amount of entropy deliberately encoded into them. But because it is intentionally there, it is at best merely a simulation of entropy, not the real thing at all.

The OpenTTD Development Team, like application programmers everywhere, aim to eliminate entropy from their creation ... tending to treat entropic properties as symtomatic of a 'bug'. But the very nature of the project's 'open-ended-ness' tends to thwart their efforts, with the result that entropy persists in the application. And in contrast to SimCity, this entropy isn't intentionally coded, it isn't a simulant ... this is "The Real Thing"! ... that's serendipity for you! :)

I suppose some would disagree with my next statement - but I personally view the manifestation of real entropy in OpenTTD as one of the great accomplishments of the OpenTTD Project. The entropic properties of OpenTTD constitute an 'emergent phenomena', and present an opportunity to explore ways of re-integrating these entropic products back into the application itself. In real-world systems, this would be called 'recycling'.

Thus OpenTTD has a latent potential to become more than just a Business Simulation. If I can fantasise for a moment ;), these very real byproducts of coding 'mishaps' could even create the potential for it to become, in time, the nearest we have to an 'evolution simulator'. And because the entropy in OpenTTD is real, and not contrived, such a development would likely be innately superior to software products like 'Spore'.

Some examples of entropic products in OpenTTD:

1. What are referred to as 'Absurd Road Elements'.
2. Stretches of road abandoned by AI players.
3. AI Road Depots and Stations positioned in inaccessible ways, trapping AI vehicles.
4. AI Road Depots and Stations placed on top of city roads, thus blocking them.
4. Scraps of land surrounded by water.
5. An excessive number of trees generated.
6. In TTRS, far too many skyscrapers and not enough suburban structures.
7. Unfeasably long bridges (even when they're supposedly suppressed in Configure Patches!), or ridiculously short (suspension) bridges.
8. Concordes landing at small airports.
etc etc

To illustrate what I mean by suggesting that these entropic entities are a potential asset to the game, take the first one:

'Absurd Road Elements' (AREs)
(I administer large maps, managing seven AI players, so I see plenty of these!) :)

Suppose there was a vehicle in the game (like say, a tractor) whose sole function was to randomly move about the game-grid searching for and identifying AREs. When it found one, it would 'eat' it, then move on. If it found say, 3 AREs within a journey of say, 15 tiles, it would spawn a new tractor. If not, it would 'excrete' the one or two AREs it had consumed ... maybe in the form of raising the adjacent land by one unit in elevation. Or planting some trees.

The consequence is that the map is cleaned of entropic products, and the simulation is enriched for the player. That would seem a superior approach to simply having these things fixed 'behind the scenes'.

OK, that's an outline of how I see entropy as a feature, not a bug. :)
Mchl
Director
Director
Posts: 611
Joined: 05 Jan 2007 15:50
Location: Poland
Contact:

Re: Entropy as a feature in OpenTTD

Post by Mchl »

Ladies and gentlemen, Yeat Another Bottom of Our Favourite Game (YABOFG) has just been discovered ;)

I am not entirely convinced that any of the examples given by you are manifestations of 'real' entropy. Nevertheless you've presented quite interesting point of view. And idea of Tractor Life Simulation is fun :)

I guess we're not for from the moment, when master's theses about OTTD start to appear :)
one billion daleks
Traffic Manager
Traffic Manager
Posts: 198
Joined: 31 Oct 2007 10:54
Location: a/c closed

Re: Entropy as a feature in OpenTTD

Post by one billion daleks »

Thanks for your response to my post Mchl :)

Yes, I find that OTTD has 'hidden depths' and I have been pretty darned busy lately, exploring and analysing them via the AI!

And thanks too for questioning whether my examples are instances of 'real' entropy, I take your point.
But I based this assertion on the notion that as the universe as a whole is subject to The Entropic Principle, then anything within it is also subject to it. And that would include coded artefacts interacting with each other within OpenTTD :)

The distinction I make between 'real' (true) entropy and false entropy is best illustrated as analogous to a piece of decaying wood on a forest floor ...

'True' entropy occurs through decay, and could be accelerated by the actions of termites, or forest fire. The wood is consumed.
'False' entropy would be contrived, like for example someone taking the piece of wood home and sandpapering it into a figurine ... this is entropy employed to creative ends, that in a sense transforms the wood into a 'higher' state of organisation, so is not entropic in the usual 'heat-death' sense. ;)

Over the last few years, I've played around with a number of examples of 'evolution software' created by University Computer Labs. They all fall short in simulating evolution credibly, and I'm inclined to think one of the reasons for this is that the entropic component is invariably contrived. There is typically far too much heavy-handed 'top-down' control over these projects, and entropy (more of a 'bottom-up' process) gets squeezed out in the very act of trying to simulate it! Yep, these Research Labs deliberately create code for simulating entropy, which to me is a contradiction. Entropy is degenerative, not generative, so to my mind deliberately creating entropic code is kinda oxymoronic! ;)

In contrast, OpenTTD - by virtue of being generated in an open-ended, slightly topsy-turvy fashion, by lots of people more-or-less working independently - is consequently an application that is inherently exposed to the mechanisms of Chaos / Complexity Theory, and thus more vunerable to 'true' entropy. And sure enough, it's there!

I find this a very exciting attribute of the OpenTTD Project.

It is extremely difficult, if not impossible, to generate a degenerative process - entropy by contrivance. And whilst some aspects of OpenTTD do indeed incorporate deliberately coded entropy, the underlying architecture of the project is such that true entropy has crept in all by itself. This is how entropy manifests - it is a self-contained self-governing process that is quite intolerant of interference, it tends to just vanish.

This is actually an extraordinary accomplishment by the OpenTTD Team, to create a computer program that exhibits true uncoded entropy and yet is still able to function in a coherent manner ... in other words, without crashing! :)
User avatar
doktorhonig
Tycoon
Tycoon
Posts: 1104
Joined: 22 Aug 2006 11:03
Location: Austria
Contact:

Re: Entropy as a feature in OpenTTD

Post by doktorhonig »

one billion daleks wrote: 5. An excessive number of trees generated.
I'd rather see the absence of trees as entropy. Before the Roman Empire, there were much more forests in Europe, then these areas were cleared, and now we try to keep the forested area constant.
When I played Transport Tycoon for the first time, I saw a sawmill, and built a truck line from an area with trees to it. I soon realized, that nothing was transported, and that there are "special" forests that produce wood.
When I played TTD for the first time, I realized, that there are no such special forests, while factories accept wood. So I built one of those camps in the forest, and hurray, they were clearing it. This is much more logical than the old approach, and should be used in other climates too. Actually, most forests in our area are "used" in some way. If we overuse them, we have to rebuild them. Having less trees is entropy in my eyes.
one billion daleks
Traffic Manager
Traffic Manager
Posts: 198
Joined: 31 Oct 2007 10:54
Location: a/c closed

Re: Entropy as a feature in OpenTTD

Post by one billion daleks »

Yes, that's true ... an absence of trees would be an indication of entropy too! :)

But as they say (somewhat tongue-in-cheek) ... "the opposite of entropy is entropy" ... any expenditure of energy is entropic - so whether there's a surplus or there's a deficit of trees - both can be the result of imbalances between generative and degenerative processes. Growing trees only decelerates entropy, by preserving energy at a point higher-up in the degenerative process.

But I guess in the case of OpenTTD, whether a specific behaviour is deemed highly entropic or not is to some degree subjective ... after all, "one man's trash is another man's treasure" and all that! :)

For example, my AI players create very long queues of aircraft circling over small airports, they look like vast swarms of mosquitoes! I view this as another manifestation (or maybe that should be "infestation" ;) ) of uncoded entropy, insofar as this aspect of the simulation is implausible and looks more like the product of a hyperactive routine within OpenTTD code.

But there again, another player may view it as a highly organised state and not especially entropic at all!

Hey ... maybe if some of these surplus aircraft could crash into those surplus trees, then two entropic elements could be annihilated at once! ;) ;) ;)
User avatar
athanasios
Tycoon
Tycoon
Posts: 3138
Joined: 23 Jun 2005 00:09
Contact:

Re: Entropy as a feature in OpenTTD

Post by athanasios »

Hey dudes, too much talk, and waste of time.
Better go and play OpenTTD instead.

:?: Can you tell me: Is entropy increasing, remaining stable or decreasing?
When we find the solution we can talk again... :lol: :lol: :lol:
http://members.fortunecity.com/gamesart
"If no one is a fool I am also a fool." -The TTD maniac.


I prefer to be contacted through PMs. Thanks.
one billion daleks
Traffic Manager
Traffic Manager
Posts: 198
Joined: 31 Oct 2007 10:54
Location: a/c closed

Re: Entropy as a feature in OpenTTD

Post by one billion daleks »

The general consensus is that entropy is increasing (just Google "is entropy increasing") :)

Actually, I don't consider discussing the subject of entropy within OpenTTD to be a waste of time at all ... tackling entropy head-on could prove to be a very efficient way of improving the AI.

The 'conventional' approach to AI programming within OpenTTD seems to be ...

Simulate decisions that might be made by a generic wetware player.

So, if the AI player makes an irrational decision, then the present solution is to identify and correct the cause within the AI code.
This is unwieldy and laborious, an extremely complicated and difficult approach.

But I believe a far more efficient (and far more easily coded) approach is to not worry about the causes at all!
Simply address the effects!
The effects are very easily identified ... they manifest as entropic phenomena within the simulation.

So, to significantly improve the AI, simply write fresh code to counteract the entropic elements that are being spontaneously created by the AI players. :)

Actually, this is just plain old evolution at work.

I believe that within the context of a computer simulation, tackling the effects of a problem is a far more effective solution than dealing with the causes.

Nature employs this approach all the time ... the human immune system doesn't set out to locate every pathogen in the world that poses the threat of disease, and bang each and every one on the head. Instead, it just neutralises the effects of their activities ... this is a far more efficient approach, and solves the problem.

Obviously, this 'counter-entropic' approach would result in bloated code - certainly it wouldn't be the ruthlessly efficient code so beloved of computer programmers (as I mentioned in the first post). But I don't see why bloated coded matters at all ... this isn't an Operating System after all, there is no requirement to be ultra-efficient here.

In this case, bloated code would be an asset, not a liability ... this may seem counter-intuitive, but it is in fact how real-world systems work ("Junk DNA" would be an obvious example).

The best way to simulate a complex system is to emulate it!
User avatar
Dave
Moderator
Moderator
Posts: 17243
Joined: 26 Dec 2005 20:19
Location: North London

Re: Entropy as a feature in OpenTTD

Post by Dave »

Don't be ridiculous - entropy already exists!

"New Transport Company Launched! Bloggs and Co. start construction near Plunfingfontonhall Springs!"

*scrolls to Plunfingfontonhall Springs*

Population: 0.

I rest my case gentlemen. The AI already does entropic things when it manages to build a big winding road where a straight one was more feasible.

Let's be clear about this - it isn't that unusual: in the days of railroad construction in the UK, some routes were often off the beaten path - for example the company building the line between Oxford and Wolverhampton decided they wanted to go through Worcester! A completely pointless and needless diversion that eventually cost them the company!

Far-sightedness was never a virtue enjoyed by those that were embarking on a wholly different sort of journey - who knew, eh?
Official TT-Dave Fan Club

Dave's Screenshot Thread! - Albion: A fictional Britain
Flickr


Why be a song when you can be a symphony? r is a...
one billion daleks
Traffic Manager
Traffic Manager
Posts: 198
Joined: 31 Oct 2007 10:54
Location: a/c closed

Re: Entropy as a feature in OpenTTD

Post by one billion daleks »

Yes Dave, like you say, winding roads seem obviously entropic, but I had an instance recently that was an exception ... :)

The route was from a mountain coalmine to a coastal port, and the AI created the usual meandering road from Point A to Point B. It snaked down through the mountains, and also doubled-back on itself a few times.

And on this occasion the road looked quite authentic and aestheticly pleasing.

It was actually a good example of how chaos (that we usually think of as undesirable) can sometimes be beautiful too ... it's the difference between say, a natural woodland and a regimented forest.

This exercise in distinguishing between what is truly entropic beyond repair, and what may turn out to be fortuitous is where things can get a bit tricky! :)

But I believe that managing entropy within OpenTTD with new code would certainly be advantageous for players, and a lot simpler for developers too! ... (as opposed to the traditional tendency of programmers to aim for maximum efficiency, thus unintentionally erasing this untapped potential lurking in their existing code!)

:)
User avatar
Dave
Moderator
Moderator
Posts: 17243
Joined: 26 Dec 2005 20:19
Location: North London

Re: Entropy as a feature in OpenTTD

Post by Dave »

Oh I get it.

You want to be able to actually define how often and how well the AI pulls it off?
Official TT-Dave Fan Club

Dave's Screenshot Thread! - Albion: A fictional Britain
Flickr


Why be a song when you can be a symphony? r is a...
one billion daleks
Traffic Manager
Traffic Manager
Posts: 198
Joined: 31 Oct 2007 10:54
Location: a/c closed

Re: Entropy as a feature in OpenTTD

Post by one billion daleks »

Yes, that would be a fair assessment ... enhance the AI by capturing the obvious errors - but only after the fact.

Trying to anticipate AI errors and preventing them in the first place will always be next-to-impossible to code, because there are (quite possibly) an infinite number of permutations.

So instead, allow the errors to manifest themselves first, then clean them up with new code. This would be an 'evolutionary' response aligned with what we see in the real world ... Nature can't rewind / go back and fix mistakes, so it comes up with 'patches' instead, and these can turn out to be enhancements.

My current overall impression of the AI is that errors are corrected at source, this is the 'traditional' way of improving software ... and yes, quite appropiate for a 'closed' application that has to function correctly first time, out of the box.

But I think it would be beneficial for an open-ended project like OTTD to employ the techniques of Nature instead ... leave the errors there, patch them, and thus allow the application to 'evolve'.

The 'tractor' example I mentioned earlier is really a patch to fix an error, but by leaving the error intact in the original code, and then 'patching' it, the game is actually enriched!

This approach doesn't seem to be employed at present ... the presence of all these entropic artefacts is the evidence on which I base that view. :)
User avatar
Dave
Moderator
Moderator
Posts: 17243
Joined: 26 Dec 2005 20:19
Location: North London

Re: Entropy as a feature in OpenTTD

Post by Dave »

You've got me hooked here. A well-thought out argument with a novel and interesting way of dealing with an issue.

Would be interested to hear the developers' response.
Official TT-Dave Fan Club

Dave's Screenshot Thread! - Albion: A fictional Britain
Flickr


Why be a song when you can be a symphony? r is a...
one billion daleks
Traffic Manager
Traffic Manager
Posts: 198
Joined: 31 Oct 2007 10:54
Location: a/c closed

Re: Entropy as a feature in OpenTTD

Post by one billion daleks »

Thanks for those kind words Dave, or as we say Down-under ... Cheese Mite! :)

Yes, it looks like a few people have grasped the concepts I'm trying to communicate, though as I mentioned earlier they are somewhat counter-intuitive and certainly not the blindingly obvious approach to bug-resolution!

Though actually, I prefer to think of these entropic entities as 'gremlins' rather than bugs.

But this approach aims to assimilate these kinds of gremlins, rather than simply annihilate them (certainly at the higher levels of code anyway - in other words, the code that actually presents the end product to the player).

And though this methodology would produce a degree of bloated and (I suppose) redundant code, it would in practice be mirroring Nature's own coding techniques (which similarly produces 'junk DNA') ... thus the foundations might be laid for paralleling natural systems, by producing a richer and constantly evolving application.

And as in Nature, the big advantage to developers would be that they'd spend less time labouring over the drudgery of bug-fixing, and be free to create fresh code ... which I'm sure is what they'd all prefer to be doing really! :)

OK then, I'll shut up now ;)
nb-au
Engineer
Engineer
Posts: 24
Joined: 10 Oct 2007 08:20
Location: NSW, Australia

Re: Entropy as a feature in OpenTTD

Post by nb-au »

i think your onto something, though of course we shouldnt be doing it for everything we find. Some things will produce a better fix when tackled at the source. While others may be better off with your approach. Its also going to be upto the taste of people for most things.

Some people might find it cool if a bulldozer comes and demolishes all the looping spaghetti roads once the AI has computed the fastest route through.

Others would think thats pretty unrealistic, and would prefer the AI put down the large bottle of rum it picks up while planning roads :p



On a similar note to your winding road story before, another one is the AIs tendancy to use wooden bridges with fast cars/trains despite being stupidly slow (and usually stupidly long). Yet on that rare occasion, a (usually quite short) wooden bridge suits the scene perfectly.
User avatar
athanasios
Tycoon
Tycoon
Posts: 3138
Joined: 23 Jun 2005 00:09
Contact:

Re: Entropy as a feature in OpenTTD

Post by athanasios »

one billion daleks wrote:The general consensus is that entropy is increasing (just Google "is entropy increasing") :)

... simply write fresh code to counteract the entropic elements that are being spontaneously created by the AI players. :)
Actually, this is just plain old evolution at work.

In this case, bloated code would be an asset, not a liability ... this may seem counter-intuitive, but it is in fact how real-world systems work ("Junk DNA" would be an obvious example)...
1. ... Not all agree. Neither do I.
2. You don't write fresh code. You alter the existing code. That's what mutations do.*
3. Junk DNA exists only among the junk of Biologists' heads. From time to time so called junk DNA is found to be useful for a specific task.

*Nevertheless, I am not going to argue for this. If you see that we need fresh code, write it and I will praise you dude. :wink:
http://members.fortunecity.com/gamesart
"If no one is a fool I am also a fool." -The TTD maniac.


I prefer to be contacted through PMs. Thanks.
User avatar
Thalass
Traffic Manager
Traffic Manager
Posts: 200
Joined: 02 Jul 2004 13:29
Location: Ontario, Canada

Re: Entropy as a feature in OpenTTD

Post by Thalass »

doktorhonig wrote:
one billion daleks wrote: 5. An excessive number of trees generated.
I'd rather see the absence of trees as entropy. Before the Roman Empire, there were much more forests in Europe, then these areas were cleared, and now we try to keep the forested area constant.
When I played Transport Tycoon for the first time, I saw a sawmill, and built a truck line from an area with trees to it. I soon realized, that nothing was transported, and that there are "special" forests that produce wood.
When I played TTD for the first time, I realized, that there are no such special forests, while factories accept wood. So I built one of those camps in the forest, and hurray, they were clearing it. This is much more logical than the old approach, and should be used in other climates too. Actually, most forests in our area are "used" in some way. If we overuse them, we have to rebuild them. Having less trees is entropy in my eyes.
I did the same thing in TT! I didn't know that's how it worked in TTD, though! I think that'd be a great way to do wood supplies. You could either move your camp when all the trees nearby were gone, or replant trees, or both. Have, say, three truck stations in slightly different areas, and as the trees around one become scarcer, you change the orders to the next station and plant some seedlings around the first station. Then repeat as required.



RE: evolution in-game. I think this'd be a great way to create a worthy AI opponent. The AI notes that it's concords keep crashing at the small airport, and randomly chose something different, note any improvements, and then take that into consideration next time. (ie: building smaller aircraft for the smaller airports, or building bigger airports for the bigger aircraft.)

The same could apply to road and rail traffic. Just like players in the early game, they tweak their routes for best performance as they can afford to do so.

Of course I have no levels at all of code-fu, so I have no idea how hard that'd be (probably crazy-hard.). But the central goal of the AI would be for each route to make profit. More profit = good. When the AI lay out a route, they note how profitable it is. Then next time it tries something different, and compares. As well as tweaking the existing routes.

That way those AI that stumble across good methods will survive, and be more likely to be able to afford improvements, and those that don't will die off. Evolution, baby!
nb-au
Engineer
Engineer
Posts: 24
Joined: 10 Oct 2007 08:20
Location: NSW, Australia

Re: Entropy as a feature in OpenTTD

Post by nb-au »

athanasios wrote:2. You don't write fresh code. You alter the existing code. That's what mutations do.
Mutations can also produce new code. Such as gene duplication


athanasios wrote:3. Junk DNA exists only among the junk of Biologists' heads. From time to time so called junk DNA is found to be useful for a specific task.
And other parts are complete crap, like endogenous retroviruses


Thalass wrote: I did the same thing in TT! I didn't know that's how it worked in TTD, though! I think that'd be a great way to do wood supplies. You could either move your camp when all the trees nearby were gone, or replant trees, or both. Have, say, three truck stations in slightly different areas, and as the trees around one become scarcer, you change the orders to the next station and plant some seedlings around the first station. Then repeat as required.
Id actually like this implemented too. Would also be a reason for the trees to even be there as atm all they do is block ur vision when u wanna see elevation changes. :p



Thalass wrote:RE: evolution in-game. I think this'd be a great way to create a worthy AI opponent. The AI notes that it's concords keep crashing at the small airport, and randomly chose something different, note any improvements, and then take that into consideration next time. (ie: building smaller aircraft for the smaller airports, or building bigger airports for the bigger aircraft.)

The same could apply to road and rail traffic. Just like players in the early game, they tweak their routes for best performance as they can afford to do so.

Of course I have no levels at all of code-fu, so I have no idea how hard that'd be (probably crazy-hard.). But the central goal of the AI would be for each route to make profit. More profit = good. When the AI lay out a route, they note how profitable it is. Then next time it tries something different, and compares. As well as tweaking the existing routes.

That way those AI that stumble across good methods will survive, and be more likely to be able to afford improvements, and those that don't will die off. Evolution, baby!
It wouldnt be overly hard as far as i can tell. Well at least not over the short term, getting it to change strategy as the game progresses would be interesting to code. The problem with this approach though is that eventually the AI could become better then humanly possible to beat. In this simulation there are going to be a crapload of things you could figure out an optimal equation for, meaning eventually the AI could create "perfect" networks that will operate far better then yours under nearly all conditions.
one billion daleks
Traffic Manager
Traffic Manager
Posts: 198
Joined: 31 Oct 2007 10:54
Location: a/c closed

Re: Entropy as a feature in OpenTTD

Post by one billion daleks »

athanasios
You've raised several points that cover a lot of disciplines in a very short post! :)
I am not qualified to speak authoritively on any of them sorry, my ideas are simply at the level of an interested layman (though maybe magnified a bit - to the extent they are peripheral to my own specialty).

So with that caveat in mind, I will respond to your points briefly, conceding upfront that I may well be completely wrong and you are quite right in what you're saying.

In the Mathematical Science of Statistics a "general consensus" means that a majority subscribe to a doctrine, but it acknowledges too that dissent from the mainstream view may well exist. So I agree with your point (1), that "not all agree" ... this is why I chose the term "general consensus" as opposed to saying "it is a scientific fact". :)

I admit my views on Entropy are solely derived from experts in Thermodynamics. They may well be wrong - you certainly seem to disagree with them anyway! Frankly I haven't a clue on the question of whether they're right, or you're right. So I acknowledge that you reject the notion that entropy is increasing, and fair enough too!

Mutations and Junk DNA are aspects of Molecular Biology. Again, I admit I am quite ignorant in this field, my ideas are entirely derived from reading populist books on the subject by the likes of Richard Dawkins and Stephen Jay Gould. And again, you may well be correct - certainly, your ideas about mutations and junk DNA are radically different from what these "junk Biologists" (as you call them) are saying! Again, I am simply not qualified to confidently say whether you are right, or they are right.

"If you see that we need fresh code, write it and I will praise you dude."
Yes, in the short time I've been here, I've noticed that this is a very popular refrain on these boards! And wouldn't you know it, C++ Programming is yet another specialty that is entirely outside my domain! My coding experience is at best old-school - COBOL and Fortan. The nearest I've ever come to an OOP is Pascal. Still, thanks to OpenTTD I have very recently started to dabble in C++, so we'll see eh ... :)

nb-au
Thanks for your feedback :)
As you say, not all code ought to be subject to the principles of, um ... 'Applied Entropy' ;)

The core components (or kernel) of OpenTTD should certainly be maintained using traditional methods, though I would hope that the kernel is pretty well stable by now anyway, and in little need of attention.

No, what I've been suggesting in this thread would only be applied to the higher-level code, the stuff that manifests at the 'surface' as it were ... the game-world on your monitor. It's about using a different approach to coding the AI.

As you point out, there's the 'bulldozer' approach (assimilate the gremlin on your screen), or 'fix the drunken AI' approach (annihilate the gremlin so it never appears on your screen in the first place!). It seems to me that the first approach has many advantages, for both players and developers.

Thalass
You've certainly got the hang of what the thread is about! :)

Yes, assuming that the OpenTTD 'kernel' is essentially stable, it presents a great opportunity to be employed as a platform for a more wide-ranging simulation. In fact, it's already in effect manifesting as an ecosystem ... this becomes more obvious if you say, substitute truck and bus imagery with ant imagery, road depots with ants nests etc ... it's all already there, in principle anyway.

This potential can be developed further by treating the entropic elements as resources within the game-world too, through recycling. This approach seems preferable to simply 'putting up with them', or trying to write them out of the code through laborious debugging.

And yes, harvesting trees directly from the landscape would be much, much better than having dedicated forests! That would fix any entropic tree 'issues' very neatly. It may be quite tricky to code though ... not impossible of course, harvesting resources in this way is a common enough feature in other games.

nb-au
Yes, I believe coding solutions to problems is far more interesting than debugging. The first is an act of pure creativity (which is why people like to code :) ), and the other often involves fiddling about with someone else's creation ... which is always a drag I reckon!

Mind you, I don't think the AI would ever outperform a human player ... it's well known that beyond a certain point, computers just aren't good at this kind of thing. I remember from my university days the story about how a salesman can instantly figure out the quickest route to take between a dozen cities, but a computer takes forever!

Still, in the unlikely event that the AI did 'create "perfect" networks' as you put it, then OpenTTD would become a darned useful and very valuable application in all sorts of ways! But I think there will room for human intellect for a while longer yet :)

...

By the way, I ran into some more entropy last night! One of my AI players had to connect two rail stations, about 30 tiles apart. Well, I'd guesstimate that the route the AI created was about five times that distance!

But the truly entropic bit was - it built a tunnel through about 15 tiles, then turned left just ONE tile, and promptly built an identical parallel tunnel straight back to where it had just come from! Gee, I had to laugh ...

:)
nb-au
Engineer
Engineer
Posts: 24
Joined: 10 Oct 2007 08:20
Location: NSW, Australia

Re: Entropy as a feature in OpenTTD

Post by nb-au »

one billion daleks wrote: Still, in the unlikely event that the AI did 'create "perfect" networks' as you put it, then OpenTTD would become a darned useful and very valuable application in all sorts of ways! But I think there will room for human intellect for a while longer yet :)
Yes and no, as we are all aware real life contains far too many variables. Once the evolutionary AI hit a certain level in a real life simulation, itd have to specialise or be equally good at most or everything.

But my point is that eventually itd figure out say a optimal train type, optimal trains per distance to dest. station, optimal station/train length, and best station type to build when at certain monetary level on terrain type X. It would be able to run its lines at the maximum throughput for the amount of money it had. But unless your a genius or very very bored you arent going to have enough time to figure out things such as those, and the computer using info like that would be very hard to beat. Mind you, as you say computers are slow with some things and it would probably take along time of gameplay (many games) to have refined it skills to this level.
one billion daleks wrote: By the way, I ran into some more entropy last night! One of my AI players had to connect two rail stations, about 30 tiles apart. Well, I'd guesstimate that the route the AI created was about five times that distance!

But the truly entropic bit was - it built a tunnel through about 15 tiles, then turned left just ONE tile, and promptly built an identical parallel tunnel straight back to where it had just come from! Gee, I had to laugh ...

:)
Reminds me of a minetrain the AI had in a game: instead of going straight ahead it decided it would be more fun to cross the lake to its right abour 3 or 4 times before continuing in the right direction. Just to mix things up it used two slow wooden bridges and a fast suspension bridge.
one billion daleks
Traffic Manager
Traffic Manager
Posts: 198
Joined: 31 Oct 2007 10:54
Location: a/c closed

Re: Entropy as a feature in OpenTTD

Post by one billion daleks »

LOL ..
Yep, your story about the train and the lake did in fact make me laugh out loud :)
Poor train ... maybe it really wanted to be a boat!

But gee, that was a serious quantity of entropic behavior you witnessed there, and would certainly constitute a very juicy challenge for programmers ... they'd have to figure out how to correctly spot something like that, then correct it in real-time, onscreen ...

... it would possibly be so difficult to solve in all situations that the patch would in turn be likely to precipitate new forms of entropy ... which ironically, is exactly what you'd want to happen in an evolving application! So a fix wouldn't have to be a perfect fit for all conditions ... because someone else would, in due course, come along and patch the patch! It could get very interesting ...! :)

Yes, you make some very good points about the AI creating perfect networks, which I hadn't really considered. Maybe we'll just have to hope that by the time the AI was more efficient than us, human players had moved on from running transport companies, to managing the game-world as a whole ... actually, as I've mentioned on other threads, I already prefer that approach anyway, even in the game's current form!
Post Reply

Return to “General OpenTTD”

Who is online

Users browsing this forum: Ahrefs [Bot] and 2 guests