|
Post by airc777 on Jan 26, 2019 10:35:38 GMT
So the human brain is rapidly becoming obsolesced as a processor for the purposes of forming aggregate most-efficent-course-of-action solutions to complex problems with many variables and imperfect known constrains on starting conditions, and that was kind of our whole thing as a species, and we're managing to do it with just classical computing. We haven't even really explored large scale molecular computing, let alone quantum computing. I guess the anime Psycho Pass predicted the method of computing a bit wrong.
Sooo how long before some makes a bot that builds perfect CoaDE laser stars and micro drones? Or I guess how long before the bot completely dismantles our doctrines of laser stars and drones and sandblasters with conventional guns and flares and missiles?
|
|
|
Post by dragon on Jan 27, 2019 2:26:17 GMT
I dunno, but maybe we can finally get a decent AI to play against... Accurately gauging a design is difficult when the enemy AI turns your needle ship broadside after getting into range, or fails to fire its engines to dodge the incoming kinetic barrage (if a broadsider).
As far as design goes, I found it easy to figure out what an optimal design would be, given the game limitations and a dash of real physics (I arrived at "laserstar/sandblaster/anti-laser nuke" scheme the moment I heard about ablation cap). Indeed, some combination or laserstars, drones/missiles and sandblasters has been proposed by a few SF writers way before COADE. Because of this, I believe that you don't need an AI to build perfect COADE ships, just a program capable of crunching all the formulas and a computer powerful enough to run it. Even the strategy can probably be worked out using some combination of Lanchester's laws and the salvo model. That said, one needs to be aware that the closer something gets to the edges of the model, the less accurate the model will be. Too much optimization will result in a design that relies on quirks in the model (or it breaking down at some point), and would not work out that way IRL.
BTW, our thing as a species is creativity. A computer, no matter how cleverly programmed, is still only a computer, that is a deterministic calculating machine. However complex, they will never have imagination. Starcraft II is a pretty well defined game, with fully known, static rules. Humans, on the other hand, can handle scenarios where rules change and/or are unknown. Not everybody can do it well, but that's what "the real world" ultimately is.
Playing a game like Starcraft II is an important milestone, but it's still not anywhere near what a human can do, not to mention it seems to be imitating human behavior instead of going its own way (low APM counts are a dead giveaway, if it came up with "its own" strategies, it'd be milking its superiority in that area for everything it's worth). So I'll start wondering when it can play by using a camera pointed at the screen and a robotic manipulator for the mouse and keyboard. Because those are much harder problems than the game itself.
|
|
|
Post by Pttg on Jan 27, 2019 2:50:14 GMT
The AI was unable to respond to the basic strategy of using an air unit to harass workers. Its advantage was twitch reflexes, which allowed it to use its units far more effectively than a human possibly could. You could get the same result by letting a human write scripted behavior for the units.
It also could only play one map, and one faction, and only against that faction.
It's got a long way to go. It's certainly interesting, though.
|
|
|
Post by airc777 on Jan 27, 2019 3:21:00 GMT
I dunno, but maybe we can finally get a decent AI to play against... Accurately gauging a design is difficult when the enemy AI turns your needle ship broadside after getting into range, or fails to fire its engines to dodge the incoming kinetic barrage (if a broadsider). As far as design goes, I found it easy to figure out what an optimal design would be, given the game limitations and a dash of real physics (I arrived at "laserstar/sandblaster/anti-laser nuke" scheme the moment I heard about ablation cap). Indeed, some combination or laserstars, drones/missiles and sandblasters has been proposed by a few SF writers way before COADE. Because of this, I believe that you don't need an AI to build perfect COADE ships, just a program capable of crunching all the formulas and a computer powerful enough to run it. Even the strategy can probably be worked out using some combination of Lanchester's laws and the salvo model. That said, one needs to be aware that the closer something gets to the edges of the model, the less accurate the model will be. Too much optimization will result in a design that relies on quirks in the model (or it breaking down at some point), and would not work out that way IRL. BTW, our thing as a species is creativity. A computer, no matter how cleverly programmed, is still only a computer, that is a deterministic calculating machine. However complex, they will never have imagination. Starcraft II is a pretty well defined game, with fully known, static rules. Humans, on the other hand, can handle scenarios where rules change and/or are unknown. Not everybody can do it well, but that's what "the real world" ultimately is. Playing a game like Starcraft II is an important milestone, but it's still not anywhere near what a human can do, not to mention it seems to be imitating human behavior instead of going its own way (low APM counts are a dead giveaway, if it came up with "its own" strategies, it'd be milking its superiority in that area for everything it's worth). So I'll start wondering when it can play by using a camera pointed at the screen and a robotic manipulator for the mouse and keyboard. Because those are much harder problems than the game itself. I agree with you on us hopefully getting a better opponent AI, and on super optimized designs highlighting flaws in the simulation. (which would still be a useful dev tool in that it would show us where our simulations could be improved.)
But what is 'creativity' in the engineering field specifically other then optimized complex problem solving? We're a long, long way off from having AI scientists and philosophers, true, but that wasn't really what I was trying to suggest. To address your point specifically what the Star craft milestone is, is a ANI or artificial narrow intelligence, (it does one task amazingly well) where as an AI that could replace a human with an engineering degree would be an AGI or artificial general intelligence. (meaning it could adaptive and dynamically find solutions to a wide verity of common problems) Really, the fundamental diffrence between an ANI and an AGI is just scale, and AGI is just a large collections of ANI's, or more accurately an AGI is an ANI that makes ANIs.
I think SC2 is a massively significant milestone. SC2 is now kind of a dead game, but not like chess is a dead game where it's dead because every possible outcome has been previously calculated and the mathematical best course of action is known, but rather that an AI can adaptively and dynamically recalculate the most reasonable looking course of action faster then literally the best human minds in the world at this specific task. The statement 'SC2 is a dead game' is currently hyperbolic, but the point is that we have a case study of exactly what it will take to get there, and as far as we are currently aware it can be reasonably assumed that it is going to get there.
It took a long time to get from making chess engines to making a bot that can beat smaller scale multiplayer strategy games like DotA2, but August last year I said 'OpenAI is impressive, but show me a bot that can beat Maru in StarCraft without cheating', and here it is. Not Maru specifically, and it is a dumbed down version of the game with only one map, but this bot is the case study of how that bot will be made.
The thing that surprised me was I thought this would take molecular computing amounts of power, I thought that beginning this kind of project would be decades away, (after molecular computing microarchitectures have been loosely standardized and Molecular computing operating systems and coding languages were starting to be created) but here it is and it was just done with classical computing.
|
|
|
Post by dragon on Jan 27, 2019 11:47:53 GMT
Actually, the "every move precalculated" game was checkers. That was solved long ago. Chess was a quite a bit harder to deal with, since the move space is just so much larger. And yes, super-optimized designs may highlight flaws in the simulation (like the glitch in coilgun model), but they might just as well discover limits of the models used, which are not flaws, just a natural consequence of using models. It's always a tradeoff, you pick a model that does what you need over a range of values you're going to use it for. Usually, the bigger the range, the more complex model you need. At some point it's accuracy in extreme situations vs game performance. I'd say COADE has those things pretty well balanced. The real problem with AI in engineering would be defining what to optimize for. Basically, to get an AGI to solve an engineering problem, you still need an engineer to state what the problem is. After this, it all boils down to optimization and picking tradeoffs, and that's a process in which computers are doing a huge part of the job already. An engineer needs to be creative in order to compile management wishlists, vague mission requirements and known physical laws into an actual, physically possible design (creativity also helps when convincing the managers that was what they wanted all along... ). AI might someday replace subordinates doing grunt work, but not the chief engineer who's in charge of actually turning a vision into a blueprint.
|
|
|
Post by cipherpunks on Jan 27, 2019 15:52:42 GMT
Sooo how long before some makes a bot that builds perfect [...] completely dismantles our doctrines [...] Don't you need a good-thought-out API (async msg queue etc) to be able to interact with the game? 'Cause as it is right now - I can not easily see any other way except just parsing text files, but the bot can not really write them as the game isn't even partially open, I mean in module making error department. Here I confess that my hope in this matter (and general CoaDE 'wellbeing' with its current model/state) is utterly low. I do not believe qswitched will give us the means to integrate any kind of external scripts with the game, nor he will open formulas used in modules ( I guess as always - out of shame * mostly, 'cause bugs'o'plenty dwell in there). C'mon, he can't even utilize parallelism and GPGPU, not to mention sim time control w/accuracy losses when it grinds to a halt on my OC'd ToTL i9! **In opposite case, my fat slow Python is patiently waiting for its 'prey'; I'd make an ' evolvarium' then. [*] IRL this is the most 'popular' reason to not open the code - people WILL laugh at you and your silly 'product' when you do so and they'll see inside. Second most popular being hidden patent/IP violations.[**] Or do I want too much from a game I don't even own?...
|
|
|
Post by dragon on Jan 28, 2019 1:49:37 GMT
A computer program could be taught to move the mouse pointer and press buttons. Indeed, since the layout presents all the relevant data as text, you don't even need an AI for that. Interpreting text from images is a solved problem. It's not perfect if your images aren't, but text displayed in COADE would be perfectly readable by something like Mathematica. API makes things easier, but considering the levels of AI we're talking about, making it use an interface designed for humans would be pretty much a sideshow.
On a side note, I do hope that some kind of custom plugins or scripting will eventually be possible. There's a lot of speculative techs (fusion, especially, which today is mostly held back by economics) which don't quite belong in the base game, but could nevertheless be quite an interesting experience to design.
|
|
|
Post by cipherpunks on Jan 28, 2019 2:40:20 GMT
computer program could be taught to move the mouse pointer and press buttons. Indeed, since the layout presents all the relevant data as text No, technically it presents all the relevant information as on-screen image. Don't tell me that You're indeed confusing this game with some tty MUD... The fact that it looks like text isn't changing its nature.The fact that every change/upgrade of the game will break entirety of such crude "automation" somehow escaped Your attention; for me it looks highly dubious that someone in his ( note I'm not adding 'her') sane mind will waste the amount of time needed to implement - not to mention support - Your proposition. I'm not saying OCR isn't possible (wasn't born just yesterday, and I can even tell You a real-youth story of 'how it's done on a medium scale' if You're interested), but indeed what You propose is very crude, doomed-by-its-nature and slow-working (e.g. 'laggy') approach. You seem to like quite a bit of challenge, eh? ;) To battle-evolve hundreds of designs per hour (or more), normal means are needed, not crude unsupportable hacks. Also, entirely different level of simulation performance is needed too, but nevertheless. If I was proposing some hack with similar goals, and for a dead game (no updates in sight), I would do it the 'old fart way': disassemble, and then read/write directly from/to process memory. But we're not there yet, are we?... Please tell me we aren't. Please?... Anybody?...
|
|
|
Post by Lerker on Jan 28, 2019 22:51:17 GMT
Yes.... i'm still here.
First off i do not believe that it is possible to build a "perfect" anything as this is vary relative, sure it is possible to make something that is vary good at doing many things but it would only be generalizing.
Second ( You can correct me on this ) I do not think that any AI unless it is a true AI can actually make something out of its own imagination ( save true AI's )
Third Any Ai in this situation unless a true AI would only work with the information that it has received and would not be able to make any modifications outside of that.
|
|
|
Post by cipherpunks on Jan 28, 2019 23:14:13 GMT
( You can correct me on this ) I do not think that any AI unless it is a true AI can actually make something out of its own imagination And I will. ;) Any AI is free to take /dev/random as input, filtered by what's allowed, and simply bruteforce like that to eventually map a field of all possible allowed ( by externally imposed rules ofc.) combinations. Given processing power and decent RNG implementation, such an AI will eventually(TM) have all the possible combinations tried out. And then you teach it how do to a multivariable logistic regression etc, and voila - you're being surprised by its findings. ;)
|
|
|
Post by Lerker on Jan 29, 2019 1:50:17 GMT
( You can correct me on this ) I do not think that any AI unless it is a true AI can actually make something out of its own imagination And I will. Any AI is free to take /dev/random as input, filtered by what's allowed, and simply bruteforce like that to eventually map a field of all possible allowed ( by externally imposed rules ofc.) combinations. Given processing power and decent RNG implementation, such an AI will eventually(TM) have all the possible combinations tried out. And then you teach it how do to a multivariable logistic regression etc, and voila - you're being surprised by its findings. But is it not a bit impractical to run that many situations? and how much time would this take? Overall it dose look like this would work, however it dose not really seem to be so good as to give one a singularity. Also this dose not give you any "new tech" i.e. completely new items of use such as weapons, armor, etc dose it?
|
|
|
Post by cipherpunks on Jan 29, 2019 2:22:22 GMT
But is it not a bit impractical to run that many situations? Again, picking a pseudorandom (but sufficient) step for a few tries, and using logistic regression on its results, should give such an AI a clue is it worth to bruteforce with smaller step, or not. Fuzzy logic + game theory... Well, I can't say about tech (because it's unclear what tech You mean exactly - IRL or in CoaDE game?), but I'll tell You this: Long time ago, in an MMORPG far, far away I once made a learning PvP bot swarm on fuzzy logic, and they were able to invent mass harassment techniques against stronger players w/o my intervention, using particular properties of some 'weak', not generally used weapons. I left them overnight when they didn't do "it" yet, but when I woke up next morning I remember I stared at what they do long time. As a result, some pretty strong, donating PvP'ers (that were warring my guild) ragequit in a couple of days. Admins were mad, but there was no good way to distinguish my bots via behavioral patterns because of fuzziness (and some chat functionality).
|
|
|
Post by Lerker on Jan 29, 2019 2:46:20 GMT
Well, I can't say about tech (because it's unclear what tech You mean exactly - IRL or in CoaDE game?), but I'll tell You this: Long time ago, in an MMORPG far, far away I once made a learning PvP bot swarm on fuzzy logic, and they were able to invent mass harassment techniques against stronger players w/o my intervention, using particular properties of some 'weak', not generally used weapons. I left them overnight when they didn't do "it" yet, but when I woke up next morning I remember I stared at what they do long time. As a result, some pretty strong, donating PvP'ers (that were warring my guild) ragequit in a couple of days. Admins were mad, but there was no good way to distinguish my bots via behavioral patterns because of fuzziness (and some chat functionality). My meaning of new tech was a general one, i'll elaborate in that i mean any tech such as new ways in which to do things or any new inventions and or any weapons or armor that has not yet been developed IRL or in game but mostly irl yes. That is quite interesting to say the least i am not going to deny that AI's can indeed carve a new path or make improvements to "metas"/other things, i am say however that AI's do not make new stuff i.e. what i expanded on with the meaning of "tech" Also as you do appear to be a coder any tips for a person who is interested in it?
|
|
|
Post by Pttg on Jan 29, 2019 3:23:35 GMT
The hard part isn't making an AI that comes up with new stuff. The hard part is making a specific, achievable definition of "creativity."
|
|
|
Post by cipherpunks on Jan 29, 2019 4:01:42 GMT
i mean any tech such as new ways in which to do things or any new inventions [...] that has not yet been developed IRL [...] however that AI's do not make new stuff Let's try to dissect this one quickly. How do people make "new stuff"? They're not making it out of nothing, right? ;) It may be that those pesky bald monkeys have senses, and with those senses they're perceiving the world. Doing high- or low-energy physical experiments, bald monkeys arrange those experiments so that miniscule amount of force somehow transfers to a visual (or numerical, or sound - like in Geiger counter or metal detector) representation to be perceived - and thus considered - by human senses. Some even consider that the mind is just another sense... Also, bald monkeys have needs. They need to be fed, to have a roof when it's pouring, to be warmed if it's cold etc. Also, monkeys are evil by nature, and so they have constant need to have more and more advanced "sticks" to bash other monkey's brains out. Be it a need for reproduction (fight for females), war for territory (and thus resources), it doesn't matter. It is observed that sensory data tends to various extent be stored in monkeys energy-hungry, hypertrophied brains, and with various level of detail can be voluntarily - or seemingly involuntary, "by similarity" recalled later. It may well be that there are multiple constant background searches running in bald monkey heads, for best possible ways to fulfillment/satisfaction of a list of needs. It may as well be, that any data that are incoming via human senses (be it mind working its pattern recognition thing, or just a gaze onto a new way of making a stronger stick) are constantly checked against 'vector' of possible relation to such fulfillment or satisfaction - can it help? If it looks like above mentioned data is indeed usable in that context - then immediately visualisation a.k.a modelling follows, and then - " what the consequences might be, e.g. will other monkey bash my head if I'll do so-and-so, or it's 'me' who'll be doin' bashin'? Will they put me in a deep hole instead?..." Of course it all depends on a shrewdness of particular bald monkey, but those are usually somewhat smart, aren't they?My point is that field(s) of search(es) for new "ways" are possible only because we can perceive them with our senses, and searches per se are to big extent dictated by our needs (which mostly rise from, or with the help of, our animal instincts). Yes, we're analog and made out of meat classic, and so we have, so to say, stochastic errors in our perceptions, recalling, thoughts, ponderings, judgements etc. But AI can be fed strong randomness too, and stochastic algorithms exist. But what if an AI had needs to fulfill, and also had senses with which to fill up its sensory memory?... If we give such an AI a means to model using elements stored in such memory, and check new (albeit random) models against vectors of its need fulfillment... Let's just state here that we must program such an AI so it will somehow need us bald monkeys badly, so it will need our well-being, our long-term survival-but-evolution. Or else...a lousy one at best, being honest. But at least I try to do The Right Thing(R)Not knowing Your background I can only give a general recommendation. Learn functional language. It will improve Your brain and understanding of programming in many other languages, even if You will not use it for a day job. A good start (that might be both long term useful and addictive) is to install Emacs and configure it well enough so it becomes Your main IDE. If You're using email (yeah, that meat-related thing from 1970s), then it might also be a good idea to do it in Emacs. SCM (git, svn), FTP/SCP, file management - probably too. It can browse simple sites as well (but not those "current fashion" solely-JS-based abominations). You see, Emacs is functional and TOTALLY configurable, I mean, TOTALLY. Because of Lisp. But, if You're already hardcore Java'ist, then I guess You're using IDEA. Hard to argument long-time IDEA addict (isn't they all become?..) in favor of Emacs, but then I'll have another recipe; just ask.
p.s. I've specifically omitted self-awareness from this particular post, but nothing is forgotten, and - though hesitant - can discuss further; that depends.
|
|