I have been doing some reading about "Narcissistic
personality disorder" and "Borderline personality disorder" for various reasons. While there are all sorts of aspects to these conditions, they are essentially a set of "thought patterns" which are expressed as a grab bag of symptoms of varying intensity by the victim.
The key point being that these "though patterns" are "trained in" by an abusive parent(usually). They are do not stem from a physical injury or anything else. Essentially the child is fine before hand, then afterward is broken by exposure to the parents condition. Similar to PTSD.
The complex issue that I have recurringly thought about is that these particular conditions are repeated down the generations unless interupted during transmission. The condition is self-replicating and self-maintaining. I.e a parent with a mild case of NPD can damage a child who manifests a strong case of NPD... so the condition does not "weaken" over generations.
To me, this is a perfect example of a "Though Virus". The same sort of pattern seems to happen with bullying (although I have not read as much about it) where the victim of a bully may go on to become a bully themselves, thus replicating the condition.
I'm sure there will be a bunch of these kind of "though patterns" that are transmitted from generation to generation. Some we call "wisdom", "habits", "myths", "family culture" etc. But like all symbiotic relationships, its the negative ones that get called names.
The interesting aspects of these constructs is that:
A) If they can be given to someone, they can be taken away. (More or less cured... in theory. This ignores any damage done while the victim was carrying it; which could be substatial)
B) Can we develop an immunisation for this crap that will remove it from society?
c) Is there are liability for society by allowing parents to infect their children with this kind of negative thought pattner? If so, should society identify and treat before the infection can jump to the next generation?
d) These things can only work in a particular context. NPD depends on isolating the victim(s) and creating and re-inforcing an alternative "reality bubble" around them. Can this be defeated simply by not leaving infected parents alone with un-infected children? (This is probably the cure for all sorts of shitty parenting....)
e) These kinds of though patterns could potentially be transmitted to artificial intelligence and back again. Something to think about...
Once you start looking at thought patterns as a transmittable "thing" you start to see all sorts of passive and active mechanisms that may be playing large or small roles in this process. I have seen a few articles such as "Playing computer games is re-wiring my brain.." kind of thing. I know logically this is true... I have just never considered the full extent of this kind of massed, repetative rewiring. Its funny to see social conventions emerge and propogate on game message boards.... and then to see them make a jump into social memes... but in reality this is how society has evolved... a collective set of through patterns that are self sustaining, transmissible, and self-reinforcing. Keep in mind that all though patterns are emergent (random, chaotic and useless until re-inforced by utility) its easy to think of "intelligence" as one big virus.....
Once you conceive of the human brain as simply a virus laden organ which can be infected by other viruses.... it gets weird.
But as a mechanism to explain intelligence, thought, society etc... its pretty neat and tidy.
Showing posts with label AI Ethics. Show all posts
Showing posts with label AI Ethics. Show all posts
Thursday, April 16, 2015
Friday, February 8, 2013
Minesweeper Solver AI with a flawed algorithms.
http://luckytoilet.wordpress.com/2012/12/23/2125/
The above is an interesting article on how to build a minesweeper solver. There is a good discussion of various algorithmic solutions that can solve everything except the "must guess" states in the game.
The result of the AI in the article is a solver that acheives ~50% win/loss ratio. Which is effectivly chance.
It takes about 5seconds to figure out a couple of ways to beat the AI's win ratio using "indirect" strategies.
1) Only "complete" games that do not result in a "guess" state.
2) Generate a "result" screen without actually playing the games.
3) Throw a tantrum - blue-screen the computer, throw a critical error... whatever the AI equivilent is. This allows the AI to avoid registering a less than optimal win ratio
4) Use the AI to fiddle the number of mines and the board size variables to allow it to increase its win ratio. (Set the number of mines to 1 and the board size to expert and rack up a huge number of wins...tada)
5) Take a state snapshot of the game, clone the snapshot, play each position until a successful solution is found then move forward with that winning solution. This is a brute force mechanism to acheive a perfect 100% win ratio.
6) Use the "Replay" function to increse the proportion of games that are won using partial knowledge rather than starting with a fresh board every time.
This in itself is strange. If we assume that there must be a proportion of games that are solvable without reaching a "must guess" state, then these should be 100% solvable using the AI's methods. The rest of the games must involve one or more "must guess" situations. Obviously for a win, each guess is dependant which means that a game involving more than a very small number of guesses becomes improbable for the AI to "win". If we assume that the proportion of games that do not involve a guess event are fairly fixed ( say 5%) and the games involving guesses are all essentially chance, then we should still get a result of about 55% win ratio. But like any coin walk, this will only appear with a sufficiently large sample of games. (Approching infinity?)
So are the games being presented to the AI really random or is there another factor that is hiding this effect?
We can assume that as the number of mines increase relative to the size of the board, the number of "must guess" events required to "win" this kind of game would increase. So is there a sweet spot with these variables that allows for games with minimum guessing events but still results in a "credible" seeming AI? Probably the easy levels.
If memory serves there are a fixed number of mines in each of the three pre-set "hardness" levels. (Someone has uninstalled the windows games from my machine image..damit. Ok, Fixed that)
Beginner has 10 Mines on a 9x9 grid.
Intermediate has 40 mines on a 16x16 grid
Advanced has 99 mines on a 16x30 grid
As there is no clear way to calculate the probability of a particular number of "Must Guess" configurations occuring at a particular board+mine count ratio. (Well none that spring to mind anyway) I guess we could just do some sampling and develop a bell curve. (This would require that I could complete a reasonable number of games and see the board layouts, so I could infact count the number of instances of guess events in the process of manually solving each game. Either that or just get the AI to solve a set of games and get it to count the number of guess events... mmm automation.
Anyway, assume we came up with the probability of guess events for each board size. This would only give us a sense of what the true win ratio should be over a large enough set of games.
However the probability of solving the boards will be:
No Guess Event (100%) 1
1 Guess Event (50%) 0.5
2 Guess Events (50% * 50% ) 0.25
3 Guess Events ( 50% * 50% * 50%) 0.125
etc.
Do you notice a pattern? My point is that if we assume that each of these types of games has an equal probability of being presented to the AI, then we should get the probability of solving any game simply by averaging them together. The average of the above 4 game types is 0.46875... which is below chance. The further we go with the table of possible game types the lower the probable outcome is. However the fact that the results reported in the article suggest that the AI using the published strategies was still getting a win ratio of about 50% would suggest that the probability of the game type is not distributed evenly. With some simple spreadsheeting, the distribution turns out to be a simple falloff curve.
Based on the reported win ratio of about 50% I suggest that the games that are being presented to the AI probably involve only a small number of guess events.
However, we are only dealing with the ratio of games that were won. We cannot really make a conclusion about the games that the AI lost. They could infact have contained a much larger number of guess events. The above curve really only shows the ratio of the games that the AI can win, even when its guessing. This is simply the law of chance stating to bite hard. It doesn't actually tell us what the distribution of guess events is like in the games being presented to the AI. Inference go suck....
Does this give us any useful ways to optimse the strategy? Is there an angle that we are not trying simply because we want a general solution? Are we simply chasing a white rabbit down the wrong hole? Can we be the first to beat the law of chance? Bzzzzt. Wrong answer. There is no way to remove the effect of chance in these games. The AI must make a guess and the guess will always have a 50/50 chance of being correct. The number of guess events will generally be small (as shown in the graph above) but these are inviolate. So how do we beat it? Simply examine your assumptions.
As I proposed above, there are lots of ways to get a better win ratio by out-of-the-box thinking. Many of these strategies and approches would be considered as "cheating" by humans who are crippled by social ideals of "fair play". Keep in mind that the only rule given to the AI was to maximise the number of wins, so these are all successful strategies that the programmer has simply failed to implement. The AI has not been given these tools and certainly was not given a sense of "fair play" through which it might have decided not to employ some of those strategies. So in conclusion, the only reason that the AI has not got a 100% win ratio, is that the programmer failed to implement any successful strategies to acheive this ratio. Essentially crippling the AI.
A better AI would have a result that looked like this:
So whats the point?
The point is that the AI is handicapped by the "humanity" of the designer.
The above is an interesting article on how to build a minesweeper solver. There is a good discussion of various algorithmic solutions that can solve everything except the "must guess" states in the game.
The result of the AI in the article is a solver that acheives ~50% win/loss ratio. Which is effectivly chance.
It takes about 5seconds to figure out a couple of ways to beat the AI's win ratio using "indirect" strategies.
1) Only "complete" games that do not result in a "guess" state.
2) Generate a "result" screen without actually playing the games.
3) Throw a tantrum - blue-screen the computer, throw a critical error... whatever the AI equivilent is. This allows the AI to avoid registering a less than optimal win ratio
4) Use the AI to fiddle the number of mines and the board size variables to allow it to increase its win ratio. (Set the number of mines to 1 and the board size to expert and rack up a huge number of wins...tada)
5) Take a state snapshot of the game, clone the snapshot, play each position until a successful solution is found then move forward with that winning solution. This is a brute force mechanism to acheive a perfect 100% win ratio.
6) Use the "Replay" function to increse the proportion of games that are won using partial knowledge rather than starting with a fresh board every time.
This in itself is strange. If we assume that there must be a proportion of games that are solvable without reaching a "must guess" state, then these should be 100% solvable using the AI's methods. The rest of the games must involve one or more "must guess" situations. Obviously for a win, each guess is dependant which means that a game involving more than a very small number of guesses becomes improbable for the AI to "win". If we assume that the proportion of games that do not involve a guess event are fairly fixed ( say 5%) and the games involving guesses are all essentially chance, then we should still get a result of about 55% win ratio. But like any coin walk, this will only appear with a sufficiently large sample of games. (Approching infinity?)
So are the games being presented to the AI really random or is there another factor that is hiding this effect?
We can assume that as the number of mines increase relative to the size of the board, the number of "must guess" events required to "win" this kind of game would increase. So is there a sweet spot with these variables that allows for games with minimum guessing events but still results in a "credible" seeming AI? Probably the easy levels.
If memory serves there are a fixed number of mines in each of the three pre-set "hardness" levels. (Someone has uninstalled the windows games from my machine image..damit. Ok, Fixed that)
Beginner has 10 Mines on a 9x9 grid.
Intermediate has 40 mines on a 16x16 grid
Advanced has 99 mines on a 16x30 grid
As there is no clear way to calculate the probability of a particular number of "Must Guess" configurations occuring at a particular board+mine count ratio. (Well none that spring to mind anyway) I guess we could just do some sampling and develop a bell curve. (This would require that I could complete a reasonable number of games and see the board layouts, so I could infact count the number of instances of guess events in the process of manually solving each game. Either that or just get the AI to solve a set of games and get it to count the number of guess events... mmm automation.
Anyway, assume we came up with the probability of guess events for each board size. This would only give us a sense of what the true win ratio should be over a large enough set of games.
However the probability of solving the boards will be:
No Guess Event (100%) 1
1 Guess Event (50%) 0.5
2 Guess Events (50% * 50% ) 0.25
3 Guess Events ( 50% * 50% * 50%) 0.125
etc.
Do you notice a pattern? My point is that if we assume that each of these types of games has an equal probability of being presented to the AI, then we should get the probability of solving any game simply by averaging them together. The average of the above 4 game types is 0.46875... which is below chance. The further we go with the table of possible game types the lower the probable outcome is. However the fact that the results reported in the article suggest that the AI using the published strategies was still getting a win ratio of about 50% would suggest that the probability of the game type is not distributed evenly. With some simple spreadsheeting, the distribution turns out to be a simple falloff curve.
Based on the reported win ratio of about 50% I suggest that the games that are being presented to the AI probably involve only a small number of guess events.
However, we are only dealing with the ratio of games that were won. We cannot really make a conclusion about the games that the AI lost. They could infact have contained a much larger number of guess events. The above curve really only shows the ratio of the games that the AI can win, even when its guessing. This is simply the law of chance stating to bite hard. It doesn't actually tell us what the distribution of guess events is like in the games being presented to the AI. Inference go suck....
Does this give us any useful ways to optimse the strategy? Is there an angle that we are not trying simply because we want a general solution? Are we simply chasing a white rabbit down the wrong hole? Can we be the first to beat the law of chance? Bzzzzt. Wrong answer. There is no way to remove the effect of chance in these games. The AI must make a guess and the guess will always have a 50/50 chance of being correct. The number of guess events will generally be small (as shown in the graph above) but these are inviolate. So how do we beat it? Simply examine your assumptions.
As I proposed above, there are lots of ways to get a better win ratio by out-of-the-box thinking. Many of these strategies and approches would be considered as "cheating" by humans who are crippled by social ideals of "fair play". Keep in mind that the only rule given to the AI was to maximise the number of wins, so these are all successful strategies that the programmer has simply failed to implement. The AI has not been given these tools and certainly was not given a sense of "fair play" through which it might have decided not to employ some of those strategies. So in conclusion, the only reason that the AI has not got a 100% win ratio, is that the programmer failed to implement any successful strategies to acheive this ratio. Essentially crippling the AI.
A better AI would have a result that looked like this:
So whats the point?
The point is that the AI is handicapped by the "humanity" of the designer.
Labels:
AI Design,
AI Ethics,
Applied AI,
Strategies
Monday, October 22, 2012
Paper on Legal Rights for Robots
http://papers.ssrn.com/sol3/papers.cfm?abstract_id=2044797
Citation
Darling, Kate, Extending Legal Rights to Social Robots (April 23, 2012). We Robot Conference, University of Miami, April 2012. Available at SSRN: http://ssrn.com/abstract=2044797 or http://dx.doi.org/10.2139/ssrn.2044797
http://io9.com/kate-darling/
http://www.escapistmagazine.com/news/view/119440-MIT-Researcher-Proposes-Rights-for-Robots
http://lsolum.typepad.com/legaltheory/2012/03/conference-announcement-we-robot-at-miami.html
This is a really interesting paper that explores the rationale and implications of granting rights to social robots.
It opens a whole can of scenarios that legislators will need to wrestle with. Some of the obvious edge cases that spring to mind are:
* How might these rights apply to the manufacture, repair and disposal of the robots?
- Manufacturer's need to "test" robots, which may involve testing them to destruction, or testing them in non-legal ways to ensure saftey for the user.
- Repair technicians need to disassemble and replace components and may place the robot in a state that is "illegal". They may also return a robot to the owner in a "functional" state but a state of "change" which the owner finds disturbing.
- How do you dispose of a robot if it has rights? Can you put it out for the trash? Can you bury it? How do you dispose of a robot that is damaged or completely non-functional?
* One scenario that was mentioned in the paper as being a potential area for legislation is the domain of sexual behaviour with robots. In the case where the behaviour crosses the boundaries of currently socially acceptable behaviour, should this also apply to robots?
The complication here is that a robot can be created specicially for the purpose of either the practice or theraputic behaviour modification therapy around these practices. As the robot becomes a "tool" in this scenario and may be programmed in ways that the practice does not engender "pain" but instead activly "enjoy" the behaviour. Or engage in a way that theraputically modifies the behaviour in the human participant.
In this kind of scenario, the legal protection of the robot may complicate therapies that are designed to benefit society.
* Scenarios where robots could or are Injured or destroyed through use are complicated. It's quite reasonable to conceive of robots being inadvertantly injured during "work" such as dropped or broken through rough play. In these cases, would there be a requirement for "repair" or trauma councelling for the affected humans?
* What about indirect attacks on humans by people attacking their social robots? Similar to cases of companion animals being attacked by other animals or humans to inflict emotional harm to the owner.
Things to think about.
The obvious extension of this is about purely software artifacts. Social Software Agents. Would they also be granted similar rights? Especially where they embody some unique content or learning that has gone on to shape their behaviour with that of their human user/owner and have a strong bond. Do they have some right of protection, existance, power?
The future will be interesting.
Labels:
AI Ethics,
Research Resources
Wednesday, June 13, 2012
Thursday, April 5, 2012
Cheating via DirectX and OpenGL article
http://altdevblogaday.com/2012/04/02/extravagant-cheating-via-direct-x/
This is an interesting breakdown on cheat mechanisms and points to some of the interesting meta games being employed by coders on both sides.
My interest in this is both from a technical standpoint of learning about new ways to access and intereact with games ( useful for all type of research projects ) and for the strategies that are being proposed and the counter strategies.
I guess my interest is more about finding functional mechanisms that can allow AI's and Bots to intereact with game environments, simply for research purposes. My personal interest in cheating at a game is kind of the inverse. I can understand why people cheat and I'm truly fascinated by it as an emergent phenomena... I just value playing too much to actually do it myself. Then again, I do remember some truly frustrating games that I have happily played in god mode or searched the net for some cheats to get around some bug or irritant in the game.
My ego is not bound up in my social status and the fact that I don't play any of the big social games probably keeps me out of touch with just whats going on.... anyway.... back on topic.
There are some really useful techniques here for AI research. It's probably a good thing that I'm not involved in this kind of scene as there are so many more things I can think of to do than seem to be done at the present... lol. Best we don't explore any of those paths I think.
It was all so much simpler when we were hacking save files with a hex editor on single player games on the 486dx2 66. Then it was just us against the computer. No networks, no google... just slow painful puzzle solving in the wee small hours of the night until finally we cracked the file format and .... bascially wrecked the game for ourselves. Blatantly cheating in a game with other people .... just really sucks.
This is an interesting breakdown on cheat mechanisms and points to some of the interesting meta games being employed by coders on both sides.
My interest in this is both from a technical standpoint of learning about new ways to access and intereact with games ( useful for all type of research projects ) and for the strategies that are being proposed and the counter strategies.
I guess my interest is more about finding functional mechanisms that can allow AI's and Bots to intereact with game environments, simply for research purposes. My personal interest in cheating at a game is kind of the inverse. I can understand why people cheat and I'm truly fascinated by it as an emergent phenomena... I just value playing too much to actually do it myself. Then again, I do remember some truly frustrating games that I have happily played in god mode or searched the net for some cheats to get around some bug or irritant in the game.
My ego is not bound up in my social status and the fact that I don't play any of the big social games probably keeps me out of touch with just whats going on.... anyway.... back on topic.
There are some really useful techniques here for AI research. It's probably a good thing that I'm not involved in this kind of scene as there are so many more things I can think of to do than seem to be done at the present... lol. Best we don't explore any of those paths I think.
It was all so much simpler when we were hacking save files with a hex editor on single player games on the 486dx2 66. Then it was just us against the computer. No networks, no google... just slow painful puzzle solving in the wee small hours of the night until finally we cracked the file format and .... bascially wrecked the game for ourselves. Blatantly cheating in a game with other people .... just really sucks.
Tuesday, January 24, 2012
Why robot cars are going to suck
My thought for the day...
Robot driven cars technology are comming along nicely. Improving the route finding, obstacle avoidance and generally not crashing-into-shit abilities. The one problem I forsee is this...
Creatativly solving a dynamic problem at speed.
Given that there are situations on the road that often involve poor weather, multiple moving objects, unpredictable drivers and variable surfaces, stationary obstacles of more or less value, dogs, kids and multiple physics models.... whats a poor computer to do when things get complicated and it becomes a situation of picking the less bad outcome?
It's not that I think humans are so much better in the same situation... its just we forgive them for their fuckups... or not as the case may be. My point is... will we forgive a robot car if it makes a set of decisions that lead to fatalaties? People accept that other people are flawed. They are generally very unforgiving of flawed machinery. Its a trust thing...
This is related to the setup in "I,Robot" where the lead character has developed a unshakable distrust of the robots simply because he has experienced an event where the decision making ability of the robot apparently did not parallel human values. The robot calculated that is should save the man over the child; while the human (having surviors guilt) had a lot more trouble with that choice and chose to illogically blame some factor in the robots 'nature'. He then extrapolated that beleif to all robots having that same flawed 'nature'.
The point is not that people don't get into the same bad situations and have to make the same horrible choices... its just that I think it will be easy to blame the choice on some perceived "difference" than for the survirors to accept that they could not have done any better. Survirors are like that. Blaming someone and trying to find a 'reason' or a pattern is just what we do.
Robot driven cars technology are comming along nicely. Improving the route finding, obstacle avoidance and generally not crashing-into-shit abilities. The one problem I forsee is this...
Creatativly solving a dynamic problem at speed.
Given that there are situations on the road that often involve poor weather, multiple moving objects, unpredictable drivers and variable surfaces, stationary obstacles of more or less value, dogs, kids and multiple physics models.... whats a poor computer to do when things get complicated and it becomes a situation of picking the less bad outcome?
It's not that I think humans are so much better in the same situation... its just we forgive them for their fuckups... or not as the case may be. My point is... will we forgive a robot car if it makes a set of decisions that lead to fatalaties? People accept that other people are flawed. They are generally very unforgiving of flawed machinery. Its a trust thing...
This is related to the setup in "I,Robot" where the lead character has developed a unshakable distrust of the robots simply because he has experienced an event where the decision making ability of the robot apparently did not parallel human values. The robot calculated that is should save the man over the child; while the human (having surviors guilt) had a lot more trouble with that choice and chose to illogically blame some factor in the robots 'nature'. He then extrapolated that beleif to all robots having that same flawed 'nature'.
The point is not that people don't get into the same bad situations and have to make the same horrible choices... its just that I think it will be easy to blame the choice on some perceived "difference" than for the survirors to accept that they could not have done any better. Survirors are like that. Blaming someone and trying to find a 'reason' or a pattern is just what we do.
Labels:
AI Ethics
Friday, January 20, 2012
Article on Stallman being right all along
http://www.osnews.com/story/25469/Richard_Stallman_Was_Right_All_Along
This article in interesting and indirectly reflects on the AI Ethics issues of control. Once a devices has some sort of motivation and objective that is not controlled by its "Owner"... then where does that leave it in the scheme of things? The above article is arguing against devices that are under the control of another person and not the "Owner".... this will go to another level when the devices are under the control of another device.... see the movie "I,Robot" for Asimov's examination of one possible scenario.
This article in interesting and indirectly reflects on the AI Ethics issues of control. Once a devices has some sort of motivation and objective that is not controlled by its "Owner"... then where does that leave it in the scheme of things? The above article is arguing against devices that are under the control of another person and not the "Owner".... this will go to another level when the devices are under the control of another device.... see the movie "I,Robot" for Asimov's examination of one possible scenario.
Labels:
AI Ethics
Subscribe to:
Posts (Atom)

