Showing posts with label computer science. Show all posts
Showing posts with label computer science. Show all posts

Tuesday, July 29, 2008

Can RASCALS become truly evil?

Greetings! This is my introductory entry and it’s a great honor to be able to contribute to this weblog - many thanks to Alexandre and the other colleagues from our local FARG group.

I’m an undergraduate student in Philosophy with a bit of (rather unsuccessful, unfortunately) baggage in Computer Engineering deeply interested in cognitive science and how its empirical research intersects with traditional problems in the philosophy of mind, my main obsession being human consciousness. I intend to provide interesting commentary, spanning from fields such as neuroscience, AI and evolutionary psychology.

There has been this year some media coverage over an ongoing and novel AI research program, the RASCALS (acronym for Rensselaer Advanced Synthetic Character Architecture for “Living” Systems) cognitive architecture. Based on the Department Of Cognitive Science at the Rensselaer Polytechnic University, RASCALS was remarkable in deploying over the virtual environment of the famous massively multiplayer online game/social networking community Second Life two functional avatars Eddie, a 4 year old boy and Edd Hifend, a robot. Here's Eddie during a demo, facing a well known experiment in developmental psychology:



RASCALS is logic based-AI with some unconventional twists. According to the researchers's Game On conference paper, the main ambition behind RASCALS is designing in a relatively quick pace autonomous agents that satisfy contemporary theories of personal identity, which is quite a hard task.

How does one design a synthetic person that doesn't merely perform evil acts but is genuinely evil? What does it take for an autonomous virtual agent to truly have a moral character or at least a toy model of it? Merely exhibiting convincing complex evil behavior, something that several videogame characters can already accomplish, is insufficient. Moral character demands advanced conceptualization skills, rich knowledge representation and a belief system besides behavioral dispositions. The main theoretical virtual persona mentioned in the article, referred to as E, is modeled after a fictional cinematic post-apocalyptic warlord drawn from prominent examples of antagonists in the entertainment industry (I suppose General Bethlehem from the motion picture The Postman is a good candidate). So, how to make E embody evilness? The strategy of the design team involves an adequate formal definition of evil, a way to deal with propositions such as the agent's goals, beliefs and desires in an extremely expressive fashion, a contextually appropriate knowledge base, sufficient fluency in a natural language and a believable presentation (the RPI team designed for another demo a sophisticated facial expression system for head avatars).

The RASCALS logical inference system is pluralistic, encompassing probabilistic inference for a better grasp of human-like reasoning besides standard forms of logical inference. Following a well known (and virulently disputed) tradition in cognitive science and artificial intelligence, the architecture employs a language of thought, all cognitive phenomena are unified in a formal language, in that case a bundle of symbolic logic, first-order logic sufficing for some processes while higher-level cognitive procedures use complementary logics like epistemic and deontic logics. Communication is possible due to formal mentalese being converted via a Natural Language Module into plain english in a highly sophisticated process.

Here comes another distinctive feature of RASCALS, the epistemic robustness of its agents. Merely reaching out via logical analysis the correct answers to a certain query provided in natural language is insufficient. For actual understanding (or quasi-understanding, being charitable to the difficulties associated with intentional states) those answers should be able to be justified by the agent. The implication is that for every answer in natural language there is a corresponding justification in formal logic which can also be translated into natural language, based on the agent's knowledge base and its reasoning capabilities.

Next October, a RASCALS agent with a very large, still in development, knowledge base will run on Blue Gene and interact with humans. However unimpressive those results may turn out to be (although optimists abound), this cognitive architecture alongside the new wave of digital entertainment industry are refreshing and regaining the interest and enthusiasm that once permeated AI researchers on its ambition to face and model realistically human-like behavior and cognition, in this case functionalizing propositional attitudes.

Wednesday, July 9, 2008

Capyblanca is now open source (under GPL)

In 1995, Douglas Hofstadter wrote: "A visit to our Computer Science Department by Dave Slate, one of the programmers of Chess 4.6, at that time one of the world's top chess programs, helped to confirm some of these fledgling intuitions of mine. In his colloquium, Slate described the strict full width, depth-first search strategy employed by his enormously successful program, but after doing so, confided that his true feelings were totally against this type of brute-force approach. His description of how his ideal chess program would work resonated with my feelings about how an ideal sequence-perception program should work. It involved lots of small but intense depth-first forays, but with a far greater flexibility than he knew how to implement. Each little episode would tend to be focused on some specific region of the board (although of course implications would flow all over the board), and lots of knowledge of specific local configurations would be brought to bear for those brief periods."

That was, of course, many years before I would meet Doug.

How do chess players make decisions? How do they avoid the combinatorial explosion? How do we go from rooks and knights to abstract thought? What is abstract thought like? These are some of the questions involving the Capyblanca project. The name, of course, is a blend between José Raoul Capablanca, and Hofstadter's original Copycat Project implemented by Melanie Mitchell, which brought us so many ideas. Well, after almost 5 years, we have a proof-of-concept in the form of a running program, and we are GPL'ing the code, so interested readers might take it to new directions which we cannot foresee. Some instructions are in the paper, and feel free to contact me as you wish.

The manuscript is under review in a journal, and a copy of the working paper follows below. Interested readers might also want to take a look at some of our previous publications in AI and Cognitive Science:

(i) Linhares, A. & P. Brum (2007), "Understanding our understanding of strategic scenarios: what role do chunks play?", Cognitive Science, 31, pp. 989-1007.

(ii) Linhares, A. (2005), "An active symbols theory of chess intuition", Minds and machines, 15, pp. 131-181.

(iii) Linhares, A. (2000), "A glimpse at the metaphysics of Bongard Problems", Artificial Intelligence, Elsevier Science , 121 (1-2), pp. 251-270.

Any feedback will be highly appreciated!

--Alex

Read this document on Scribd: Capyblanca paper under review

Monday, June 23, 2008

I, for one, welcome our new übergeek overlords!

Slashdot, my favorite L337 geek hangout, is discussing an interview with DugHof. The discussion is actually pretty cool, the long mentions of "the singularity that is Kurzweil" notwithstanding.

Though Doug usually dismisses hacker culture, I don't, and I think we should really welcome our new slashdot overlords. Two basic reasons here, beyond the whole power to the people cliché: first, some /. discussions are really worthwhile, and some participants really bring very insightful analysis in their comments--actually, a great way for learning about all things technical is, right after the obvious wikipedia lookup, by googling "site:slashdot.org whatever you're after, dude" and catching up with the discussions. And who knows? Maybe one day this blog will even be slashdotted. That would be nice for our pagerank and world domination plans--which bring me to the second reason.

Now the second reason is a serious one. As progress in FARG architectures evolves, we will need more and more lookups in the most cutting edge stuff, such as GPGPU or reflection. A general FARG framework is essentially an operating system, from the inside and from the outside. From the inside it packs application and problem loaders, various types of memory management (external, working memory, semantic memory, episodic memory, etc), task allocation and scheduling, and parallel multiprocessing. From the outside, it is also like an operating system, enabling new kinds and types of "FARG apps". This is, in fact, the coolest operating system to be working with, and I am astonished that companies like Microsoft or Sun or IBM just plainly do not know what this is all about. We could have some serious long-term contributions to computer science, yet, sometimes, it feels that even with all geekdom love that Doug eventually gets, the word in FCCA and later works is yet to be spread.

Or, to put it in /. terms, I feel that FARG==new (PARC). If you don't agree, then; seriously, You must be new here.

Monday, May 5, 2008

Slaves wanted!

This is tomorrow's presentation at FGV. We're looking for ambitious undergrads who want to take a shot in making something meaningful. Hopefully, someone will be interested.

SlideShare

Thursday, April 10, 2008

Monetizing 2010's social networks

Mike Arrington is proposing a new, mostly phone-based, social network. It's really a great reading. The basic idea is that you could browse people on the go--and find out who's around you in a restaurant or other places. You would broadcast your profile and receive broadcasts of other people's profiles. With privacy settings, of course. I wrote about this on newsvine back in 2006.

There are 2 types of comments in techcrunch: “absurd!” or “awesome!”

I would bet that there is a strong correlation to the commenter’s age.

The people that say absurd! fall into some camps:
(i) "girls will never use it"
(ii) "only übergeeks will use it"
(iii) "are you a lunatic? What about government oversight?"
(iv) "there's no way to monetize it. Ads on a small phone screen?!?"
(v) "Don't you think we are getting geeker and geeker all the time? Don't you think we are looking more and more at screens all the time?"

These objections are wrong, and Micheal is absolutely right. This is a game changer, and is a huge billion dollar thing. I wrote about this in 2006 (back when I thought newsvine was going somewhere).

Here are my views on the objections people have placed there:

To those concerned with government oversight: That’s a serious issue, but the way to handle it is to guarantee users that no government entity of any kind can be allowed as a “business”, and no info will be sent to them, unless users explicitly agree. They might make fake profiles of users, but they won't be able to communicate with you. No email, phone, or other info should be broadcast (unless someone is really adventurous).

Why girls will use it: Girls will broadcast only minimum info; a photo and a name or even a nickname. But they will stalk the guys, looking at the photos, and videos, and resume, to find out who he is. To the ones that they like, they may enable their full profiles. To women, if I've learned anything about them at all, it is that it is more important to know who a guy is than his looks alone. Today, they look around and see only “random” guys, so appearance is the only factor once you're in a restaurant. Now, if you’re broadcasting info that shows that you have a future, girls take notice.

Why everyone will use it, not just übergeeks.

Ever heard that beautiful quote, “the future is unevenly distributed”?

These people are reasoning: this has no value for me, so I don’t want it.

But this is like email was in 1992. I had an account, but nobody had, so its value was zero. Take away my email(s) now and I can’t communicate. Early adopters will be geeks, as always, but soon the network effects will kick in and the value will increase rapidly (for everyone, including grandma). So these guys who are saying they’ll never use it are in for a kick when they’re standing on a line for 20 minutes and some server tells: “your luggage has been found, Mr Arrington”. “How, if he wasn’t even in this bloody lost luggage complaint line we’re standing?” “Well, he was broadcasting his info to our system (which is on the network and is the way to finance it).” So your phone picks up that you’re on a luggage complaint system, you click on it and fill up a form. The old fellows look like penguins on a line. And you get to be served first. Then they finally ‘get it’. The thing has value. Of course, we are getting geeker and geeker all the time. We will be looking at screens more and more. Yet, life will be smoother.

the iPhone is now the only phone where the user interface could be smooth, without having to press a precise sequence of 50 buttons to browse people around. But perhaps android will be another, and perhaps the other phone companies can catch up to it in some years.

About facebook: it should obviously get in on this right now or become MySpace face the consequences. But facebook should first change to include the many dimensions a person has.

* I have a PhD in computer science, and I’m working on computational cognitive models. I might want to meet people with similar pursuits; but that’s only part of someone’s dimensions;
* I am crazy about Hôtel Costes, or about In Search of Sunrise
* I am an associate member of the club of rome, and I would certainly like to meet fellow members if/when we are close by.
* I am a professor of management science, I might want to broadcast that info in some places, and not others
* I am an entrepreneur, and I’d like to meet other similar creatures (or broadcast that info) to stalking Venture Capitalists.

Facebook only offers one dimension; and that is a serious shortcoming; because you want to select the specific info that will be broadcast. You don’t want to broadcast your funny drunk party picts or serious business info everywhere (in a random bar here in Rio you could actually be kidnapped). But you might do it in a high-profile scenario.

Now, here’s how to monetize it: free for users; & businesses pay a relatively small fee. This could be attractive to businesses because they could attract people, by broadcasting their existence, bookmarking people and offering discounts and automatic self-serve.

Jeffreys has commented on how to monetize: “How do you monetize it? When you walk past a store with a sale you might be interested in, it tells you. Like Amazon’s recommendation engine. Most of the time you’ll ignore it, but it will alert you to something you want to buy often enough to pay for itself.”

Here’s some building on top of that: the device NEVER, NEVER, distracts you. It receives your info, and bookmarks you, but never sends you an email or call or anything spam-like. If you want to know why, read "on intelligence".

Suppose you’re an owner of a restaurant. You pay to access the service as a business. They some smoking hot girls come in, and you bookmark them as interesting for your place. Then, on slow, empty days, you have all these cooks and waiters you’re paying for, but no customers: you send out, to 40 chicks, an offer for $50 dollars, valid for 1 hour. If you have bookmarked hundreds of prospects, people will start appearing. And people in a restaurant attract more people.

But nobody should ever be bothered personally. Instead, they should have their own offers page: They go in that page and see offers for free drinks at place X, 80% discount (at an empty restaurant), 50% discount at an empty hotel, or 70% discount at an empty seat on a flight to New York. All of these offers have an expiration time. So you can take it, think about it for a while, or leave it.

WHY THIS IS ENORMOUSLY VALUABLE: because once a plane has took off, then each empty seat costs a load of money, but gets no revenue--basically, that's money down the drain. Businesses have excess capacity, and price flexibility helps in balancing that capacity with actual demand–an incredible economic incentive for businesses to pay something like $1000/year, or $1/customer bookmark/year, or maybe $1/100 offers, or more. So, in the long run, the winning network will be getting buckloads of money from thousands of businesses small and large, without annoying anyone.

And businesses will be happy: The problem of managing capacity, utilization or operation levels, and demand, will be minimized for businesses that jump in. Life will be smoother for businesses (better yield management), and for people (great personalized offers, no intruding ads).

This is one of the most promising ideas right now. In the long run, there will be only one social network people actually log in, and that network will be the one in which they can browse people. On the go.

By the way, there are many more ideas, and I would be considering your job offers now. See you soon, Zillionaires!

Sunday, March 23, 2008

How to escape email tsunamis

Mike Arrington at TechCrunch is crying like a baby Scoble, as he faces upwards of 2400 unread emails.

How did we get here?  And how to get out of this mess?

There are two aspects here: human psychology and technology.  Email was designed with the wrong metaphor in mind:  email was designed as a way to send letters.  But the cost of sitting down and writing a letter and sending it through the post office was way higher than writing up an email and pressing send.  

The right metaphor for email is workflow.  And instead of one inbox, each of us should have something like 15 different inboxes, which should help, and show to others, our workflow (and how much we are behind).

How long does it take to read and handle 2400 emails? All eternity, of course. Looks like we've finally found a reason to be immortal, after all.  

But how long would it take to fill up 15 spots for a job, given 2400 applications?  About three to five hours, most likely.  As soon as you take a look at the applications, psychologically, you know what you don't want, so that speeds up the process enormously.  You are on job applicant reviewing mode, and that focus your attention and effort.  It is an entirely different thing than reading and replying to email.

Mike says there's a real opportunity for entrepreneurs out there; and here's my reply.  Here’s what you’re looking for: 90% of anyone’s inbox can be classified into 5, 10 or 20 different issues. For instance, someone might:

(i) want an interview with you
(ii) want to discuss a “serious” issue in a published post in TC
(iii) want you to know about their “hot” startup
(iv) want to invite you to speak/participate at an “key” event

…and on and on it goes. Your decisions come down to the evaluation of what “serious” really is, or how “hot” the startup is, etcetera.

REAL friends might be sending out the stupid youtube links and photos and such, but most people have these categories. Which the user can determine, and create forms for. 

So, I go into gmail and type Mike’s address. Gmail puts me on hold: “gathering Mike's workflow requests for you”. Then a list of, say, 15 items like the above comes up. Then if I want to “invite to speak/participate in an event”, I fill out a form with the fields you have defined. If I still want to send an email, then I do it knowing that I’ll be breaking your workflow and you may never reply/read.

Whenever you have the time, you can review all such requests. And software could even rank the requests based on your own settings.  If a field in the form is amount, it is quite probably important.

This would improve workflow tremendously. Most of the time we would be on “review of interview request’s mode”, or “review of employee travel request mode”, or “review of relevant hilarious stuff not on Digg”, or review of something else mode.

Strict workflow categories, and user-designed forms, might even reduce spam, as spammers would have to target an individual's form, instead of the free-for-all that is email. 

Finally, users could also define post-mortem actions on forms.  For example, if one of your forms is "employee travel request", when you review those, that could even generate another form for your boss, or for the accountant. 

Please god Google, go build it; then make it a web standard. 

I really need it.

Sunday, February 17, 2008

A new commentary piece in Behavioral and Brain Sciences

Here's a new commentary on a target article, to appear in Behavioral and Brain Sciences. The full piece is available through email.

==
Dynamic sets of potentially interchangeable connotations: A theory of mental objects

Alex Linhares

Abstract: Analogy-making is an ability with which we can abstract from surface similarities and perceive deep, meaningful similarities between different mental objects and situations. I propose that mental objects are dynamically changing sets of potentially interchangeable connotations. Unfortunately, most models of analogy seem devoid of both semantics and relevance-extraction, postulating analogy as a one-to-one mapping devoid of connotation transfer.

Tuesday, February 12, 2008

What if codelets are only bossing around?

What if codelets are only bossing and bitching around?

I mean, from what I get from all the code I've seen in so many projects, codelets actually do things. They work directly on representations. Sometimes they scout STM for something to be created; sometimes they build some stuff out there; sometimes they trigger other codelets, etc.

But what if they only sent signals? What if they only were bossing around?

This is something that the Starcat team has started, but can be done in a deeper way. The advantage of it would be simple: you could encapsulate all codelets, for any domain existing in the universe, and cleanly separate them from the accidental features of your problem.

But here comes Christian's Law, once again: "Language compiles everything".

Back to the compiler.

Damn!

Monday, January 21, 2008

On the carving of waves

Legend tells that, during the first days of AI, Marvin Minsky was developing a machine to play ping-pong.  The greatest effort at that time, of course, was devoted to the "thinking" part--and if the story is true, then he assigned an undergraduate student to handle the "perception thing".


But of course, it didn't work.  Perception was found to be more difficult than it seems at first.  For us, perception is trivial; it is only when you start to deal with its mechanisms that the full extent of the problem arises.

Whenever we hear speech, we are carving waves of sound into discrete units (phonemes, then words, then phrases, etc).  Whenever we read a webpage, or look outside the window, we are carving a massive bidimensional wave of colors into discrete objects.  It is hard to model the information-processing that takes place on our minds.  Roughly 60 years later, Microsoft, with all the cash in the world, still struggles with the problem.

But the carving of continuous entities into discrete ones is not the only scientific problem here.  Even discrete entities are chunked into ever higher levels--in myriads of different ways.  Consider, for instance, the copycat project, the letter spirit project, the tabletop project, or any other project from FARG. 

For example, in NUMBO, numbers are chunked by applying operations with bricks.  95=(9*11)-4.  In chess, related pieces are chunked into groups.  And even a letter is a chunk of different traces.  The objects we see are not "out there", outside of any understanding.  Objects are mental creations.  And these mental objects, these chunks, have an enormously recursive structure.  Some traces chunk into a letter, some letters chunk into a word, some words chunk into a sentence, and on and on it goes.  Meaning is created, somehow, during the process.

We are developing a theory of mental objects, a theory of chunks, which, we believe, will push FARG forward.  In this model, one of the crucial ingredients of chunks are relations (which create new chunks based on other chunks), or rules (which help in carving waves into the most basic chunks possible--probably corresponding to what happens in V1, an area of the brain related to vision).  We are still quite far from a working model, but here's a strategy to approach it: forget about the waves at start, and deal with pre-built, low-level, chunks.  Only after that is satisfactorily solved, rules should be tackled.

If you think that that's an oversimplification, that dealing, for example, with discrete entities such as letters, is a problem way beyond the carving of waves, look no further than the unintentionally worst company domain names ever.  Here are some:

1. A site called ‘Who Represents‘ where you can find the name of the agent that represents a celebrity. Their domain name… wait for it… is
www.whorepresents.com

2. Experts Exchange, a knowledge base where programmers can exchange advice and views at
www.expertsexchange.com

3. Looking for a pen? Look no further than Pen Island at
www.penisland.net

4. Need a therapist? Try Therapist Finder at
www.therapistfinder.com

5. Then of course, there’s the Italian Power Generator company…
www.powergenitalia.com

6. And now, we have the Mole Station Native Nursery, based in New South Wales:

www.molestationnursery.com

Carving and chunking are deeply interrelated, both involved in the creation of mental objects.  Traditional computer science can't do the trick here.  Many traditional ideas must be reconsidered.  If Microsoft ever hires someone like Harry Foundalis, we'll know they're now serious about this thing.