If there is a good answer to keeping computational
efficiency in such situations using C++,
I haven't seen it.
The answer is
expression templates.
Briefly, the result of an overloaded matrix
operator is not
a matrix, but an expression template specifying
the
parse tree of operations that need to be computed. The
assignment operator is overloaded to
take such an expression template
and to perform the computations on the resulting
object.
No temporary objects made, maximum efficiency, clear syntax
(horrors in the library itself though).
Looking at your page, maybe you might want to try
out another level of functional (but very inflexible) computing
possible with C++.
It's a bit extreme and completely offtopic, but more efficient
than this (save for pre-calculating) I cannot imagine:
#include < iostream>
template < int N > int factorial() { return N * factorial < N-1 >(); }
template <>
int factorial< 1 >() { return 1; }
Re:Simple question..
on
The Euro
·
· Score: 4, Informative
Not really, before the euro, the deutchmark was the most stable currency.
Remember 199x (x < 5), when the British pound
was forced out of the EMU (monetary union) by
Soros (amongst others). At that time, which was not too far
in the past, the pound was the weakest currency,
a state they shared with the Italian lire.
The fitness function is important, but not sufficient. What Roland is trying to do
is evolve the representation/variation component of the GA. This is probably even more important than 'merely' the fitness function.
An example: suppose you are optimizing a shower to output 1 cubic meter of water per appropriate time unit. You also want the water to be 37 degrees Celsius. Now make two representations to optimize this problem. The first is the usual with a hot and a cold water tap. More hot water gives you more water and a higher temperature. The other is a temperature tap and a capacity tap. With trivial mutation operators, with which of the two representations is a GA more likely to get the result quickest?
This is where the evolving variation operators comes in: they try to change the variation in such a way that it aligns with the fitness function. Whether this is possible or not is another issue.
With an inappropriate representation/variation combination, you can twiddle the fitness function as much as you like, but you will not get better results than random search. See also the comment on Core Wars above.
Interesting point about a direct democracy not being possible, but still, the current representative government where you can have ONE vote for the next FOUR years on ALL issues is a bit too drastic as well.
Wouldn't it be possible to create a form of government where for each and every issue you have the right to elect a representative? For example, an issue about terrorism comes up. You read in the newspaper, or on the net, some guy or girl who seems to have thought a lot about the issue and makes some sound points. You actually agree with this person's vision. Unfortunately, this person is not elected to make decisions on each and every issue that might crop up. But maybe for this one, this person might be the one to have some power.
Wouldn't it be helpful that you could make this person your 'representative' for this one issue? Suppose that many others think the same. Wouldn't it be possible that (for this one issue), supported with a significant amount of votes, this person would be allowed to debate in congress and vote together with the permanent (four year) staff?
This would still be a representative democracy, where if you don't care, your vote will go to the one you elect every four years or so. But for issues you feel strongly or even moderately interested about, you might make it possible to get some fresh voice in the decision making process. The biggest danger our democracies are facing is that we are governed by career politicians grouped together in parties. Party discipline and career politics are as dangerous for objective government as direct democracy based on sentiment.
5) No office is in a vacuum. Abiword and StarOffice may be great, but none of them read all Office file formats perfectly yet. You still need to use microsoft products to communicate with other offices, for better or worse. Not a troll, just the truth.
I agree fully. The one thing that prevents me from using kword on a regular basis it the lack of good word import/export. I hope this is high on the list of office app. developers?
I really get sick and tired of this argument. I'm running linux in a windows-only shop. I don't have any problem communicating with the folks here as we all have the decency to send each other pdf files (using distiller on windows, ps2pdf at my end). If you don't need to collaborate on a document there's no need to send it in an editable format.
Likewise I convinced the people to migrate their internal documents to pdf as well, simply because the MS-word format is instable and is likely to change without notice. Are you sure that office 2010 will support word6 format properly ? Adobe has a much larger interest in keeping pdf stable than microsoft has in word.
As for interoperability with other companies, I heard people complain over here when they got certain office2000 documents that they couldn't load properly on office97 (our standard). They simply send an email to the sender to save it in compatible format, which was no problem. The same can go for pdf. Heck, if I really need a document I simply ask people to save it to a postscript file (through the printer driver). It takes some time to explain, but renders fine. People do want to cooperate.
So all in all, you don't need to use Office to see office documents (esp. word, excel is another matter), and it is not that often that you collaborate on a single document.
As always, I am not an expert in this area and welcome intelligent responses to this post. I can not for the life of me find a reason for AIDS to spread and be this bad except for people's own stupidity and lack of responsibility. So why save them?
To add my own clueless answers to this kilothread, the reason for saving these stupid people as you call them is simply because letting them all die will destroy their society as a whole --- thus including the smart ones.
Take a few African countries as an example: estimates about HIV-infection hover between 25 and 30% of the sexually active population (sorry, no link). Sexually active people grossly fall in the age group 15-40 years of age. This is exactly the age group that keeps a society running. If one in four of every teacher, doctor, factory worker and farmer dies, any country will get disrupted. For African countries, given the poor state they are in already, this will mean that their education system will collapse, their medical system will die, export will collapse etc. Then the 'smart' part of the population will suffer as well.
Look around you and imagine that one in four of the people at work anywhere are no longer there. Do you think your standard of living will be unaffected by that?
I don't know the exact figures in Brazil (heard a number of 200K at the BBC yesterday), but I can imagine that they do not want to lose a significant part of their productive population because some company somewhere decides that those can't afford to survive. If a country's survival is at stake, international law ceases to be relevant.
Without copyright, software would be distributed binary only. It would contain code to try and determine whether it was used in a undesired way (by a wrapper program for instance), it would use dongles, it would have all kind of copy prevention mechanisms just to make sure that no-one else could copy it.
Although everybody has a right to copy, you have the right to make that difficult. Where does opening up the source code enter the equation you say? Right, nowhere. Without copyright, open source would be no more frequent than nowadays (probably less as everyone working on GPL projects now would then potentially create code for microsoft)
There was a time that a writer called William Sheakespeare created the most wonderful plays. Unfortunately, during his lifetime none of his plays was ever published fulltext. Without copyright existing at that time, it would have been foolhardy to do so. His competitors could then take his text and perform poor William's play without paying him for his writing.
So he kept it all to himself. Luckily he did not go mad later in life and burn all his texts. Only after his death did his works get published.
William was clearly a greedy bastard that he thought he owned the fruits of his pen. He wanted to get payed for his plays and didn't want others to profit from his work.
Re:How is it different from "The Bazaar?"
on
Mob Software
·
· Score: 1
For one thing, he points out that there is no distinction between the cathedral and the bazaar: both are build using the same principles, many individuals that produce something in an uncontrolled, unorded, unpredictable way.
It is indeed *an* Open-Source development model, it's a bit more radical than the popular one though.
Don't think evolution is the work of an infinite number of monkeys. 1000 Pentiums is not a lot in the grand scheme of things. Enumeration just doesn't work.
The best way someone phrased it was to compare evolution with the well-known 'infinite improbability drive'.
Improbable stuff happens all the time, the trick is to keep the good improbable stuff and get rid of the fluff. Then build on the improbable stuff and wait for more improbability to happen (which it will). Repeat.
Figuring which of the improbable stuff is improbable enough to get rewarded a monopoly by the state is indeed a whole other issue. You might not want an expert but a patent lawyer would come in handy.
One of the things that was not mentioned in the article and as far as I know never made it into Koza's writing is that for some of their older stuff, they came up with some particular patent so regularly that they started to write a patent avoidance filter.
What the thing does it take some existing patents and when the evolution hits on something that is close to it, the solution get punished for that. In think this is on par with patent invention, particularly as it seems you can circumvent any patent by just entering it in the machine and end up with a different device that circumvents it. Might be good idea for some GNU projects to have.
Anything that this array of GP computers can create by a process of natural selection must by definition be an obvious consequence of the basic building blocks. After all, no creative thought it being exercised here, just a purely mechanical process.
By this logic any and all software patents are a logical consequences of a particular configuration of nand gates and should not exist.
The primitive building blocks in GP are just those: primitive. Simple logical and arithmatical functions, loops, iterations, things a programmer needs. Configuring them is called programming and whether it is done by automatic means is irrelevant.
The stuff genetic programming produces is quite often highly non-obvious and takes an expert quite some creative thought to understand how it does what it does.
There is a point that should be stressed though. Genetic programming works by using inductive processes to find the answer. Inductive processes are creative by nature, this in contrast with deductive logic that is not creative at all (Cyc is the prototypical example).
If a machine arrives at an answer through deductive reasoning (theorem proving), then by definition it is a logical consequence of the inputs. Generate and test is however not deductive.
And please define the phrase 'creative thought' and while you're at it prove that it is not mechanical.
LOL, the EU has 380 Million inhabitants, about 100 million more than the US. The US does encompass 3 times the area of the EU.
Don't know where you got your idea that the measly 280 million of the US are large in the grand scheme of things. The 380 million in the EU are calculated without counting the wannabe EU members like eastern Europe (180 million) or Turkey(100 million).
The answer is expression templates. Briefly, the result of an overloaded matrix operator is not a matrix, but an expression template specifying the parse tree of operations that need to be computed. The assignment operator is overloaded to take such an expression template and to perform the computations on the resulting object.
No temporary objects made, maximum efficiency, clear syntax (horrors in the library itself though).
A simple eval would have done nicely as well, but then again, strong typing is for weak minds.
Have a nice day.
Looking at your page, maybe you might want to try
out another level of functional (but very inflexible) computing
possible with C++.
It's a bit extreme and completely offtopic, but more efficient
than this (save for pre-calculating) I cannot imagine:
#include < iostream>
template < int N > int factorial() { return N * factorial < N-1 >(); }
template <>
int factorial< 1 >() { return 1; }
int main()
{
std::cout << factorial< 10 >() << std::endl;
}
Not really, before the euro, the deutchmark was the most stable currency. Remember 199x (x < 5), when the British pound was forced out of the EMU (monetary union) by Soros (amongst others). At that time, which was not too far in the past, the pound was the weakest currency, a state they shared with the Italian lire.
The fitness function is important, but not sufficient. What Roland is trying to do
is evolve the representation/variation component of the GA. This is probably even more important than 'merely' the fitness function.
An example: suppose you are optimizing a shower to output 1 cubic meter of water per appropriate time unit. You also want the water to be 37 degrees Celsius. Now make two representations to optimize this problem. The first is the usual with a hot and a cold water tap. More hot water gives you more water and a higher temperature. The other is a temperature tap and a capacity tap. With trivial mutation operators, with which of the two representations is a GA more likely to get the result quickest?
This is where the evolving variation operators comes in: they try to change the variation in such a way that it aligns with the fitness function. Whether this is possible or not is another issue.
With an inappropriate representation/variation combination, you can twiddle the fitness function as much as you like, but you will not get better results than random search. See also the comment on Core Wars above.
Well, the entire idea of GP is that you even stop focussing on the algorithms: the focus is on what has to be done.
One of Koza's favourite quotes is from Samuel (the one from the early checkers program 1956 or 65, I forgot):
Automatic programming: programming a computer by telling it what to do, not how to do it.
Pfa, genetically programmed C++ code is for women. Real men use machine code GP.
In any case, GP works with parse trees, outputting the results in any language is then trivial.
Uhm, have I been trolled, but the author *is* the one from adate? Check the same site as the note
So I guess the answer is yes.
Interesting point about a direct democracy not being possible, but still, the current representative government where you can have ONE vote for the next FOUR years on ALL issues is a bit too drastic as well.
Wouldn't it be possible to create a form of government where for each and every issue you have the right to elect a representative? For example, an issue about terrorism comes up. You read in the newspaper, or on the net, some guy or girl who seems to have thought a lot about the issue and makes some sound points. You actually agree with this person's vision. Unfortunately, this person is not elected to make decisions on each and every issue that might crop up. But maybe for this one, this person might be the one to have some power.
Wouldn't it be helpful that you could make this person your 'representative' for this one issue? Suppose that many others think the same. Wouldn't it be possible that (for this one issue), supported with a significant amount of votes, this person would be allowed to debate in congress and vote together with the permanent (four year) staff?
This would still be a representative democracy, where if you don't care, your vote will go to the one you elect every four years or so. But for issues you feel strongly or even moderately interested about, you might make it possible to get some fresh voice in the decision making process. The biggest danger our democracies are facing is that we are governed by career politicians grouped together in parties. Party discipline and career politics are as dangerous for objective government as direct democracy based on sentiment.
Sudan: for the preemptive bombing
Colombia: for the 'war on drugs',
Panama: invasion
Grenada: invasion
5) No office is in a vacuum. Abiword and StarOffice may be great, but none of them read all Office file formats perfectly yet. You still need to use microsoft products to communicate with other offices, for better or worse. Not a troll, just the truth.
I agree fully. The one thing that prevents me from using kword on a regular basis it the lack of good word import/export. I hope this is high on the list of office app. developers?
I really get sick and tired of this argument. I'm running linux in a windows-only shop. I don't have any problem communicating with the folks here as we all have the decency to send each other pdf files (using distiller on windows, ps2pdf at my end). If you don't need to collaborate on a document there's no need to send it in an editable format.
Likewise I convinced the people to migrate their internal documents to pdf as well, simply because the MS-word format is instable and is likely to change without notice. Are you sure that office 2010 will support word6 format properly ? Adobe has a much larger interest in keeping pdf stable than microsoft has in word.
As for interoperability with other companies, I heard people complain over here when they got certain office2000 documents that they couldn't load properly on office97 (our standard). They simply send an email to the sender to save it in compatible format, which was no problem. The same can go for pdf. Heck, if I really need a document I simply ask people to save it to a postscript file (through the printer driver). It takes some time to explain, but renders fine. People do want to cooperate.
So all in all, you don't need to use Office to see office documents (esp. word, excel is another matter), and it is not that often that you collaborate on a single document.
As always, I am not an expert in this area and welcome intelligent responses to this post. I can not for the life of me find a reason for AIDS to spread and be this bad except for people's own stupidity and lack of responsibility. So why save them?
To add my own clueless answers to this kilothread, the reason for saving these stupid people as you call them is simply because letting them all die will destroy their society as a whole --- thus including the smart ones.
Take a few African countries as an example: estimates about HIV-infection hover between 25 and 30% of the sexually active population (sorry, no link). Sexually active people grossly fall in the age group 15-40 years of age. This is exactly the age group that keeps a society running. If one in four of every teacher, doctor, factory worker and farmer dies, any country will get disrupted. For African countries, given the poor state they are in already, this will mean that their education system will collapse, their medical system will die, export will collapse etc. Then the 'smart' part of the population will suffer as well.
Look around you and imagine that one in four of the people at work anywhere are no longer there. Do you think your standard of living will be unaffected by that?
I don't know the exact figures in Brazil (heard a number of 200K at the BBC yesterday), but I can imagine that they do not want to lose a significant part of their productive population because some company somewhere decides that those can't afford to survive. If a country's survival is at stake, international law ceases to be relevant.
The more research you do, the better your hypothesis is supported.
Without copyright, software would be distributed binary only. It would contain code to try and determine whether it was used in a undesired way (by a wrapper program for instance), it would use dongles, it would have all kind of copy prevention mechanisms just to make sure that no-one else could copy it.
Although everybody has a right to copy, you have the right to make that difficult. Where does opening up the source code enter the equation you say? Right, nowhere. Without copyright, open source would be no more frequent than nowadays (probably less as everyone working on GPL projects now would then potentially create code for microsoft)
There was a time that a writer called William Sheakespeare created the most wonderful plays. Unfortunately, during his lifetime none of his plays was ever published fulltext. Without copyright existing at that time, it would have been foolhardy to do so. His competitors could then take his text and perform poor William's play without paying him for his writing.
So he kept it all to himself. Luckily he did not go mad later in life and burn all his texts. Only after his death did his works get published.
William was clearly a greedy bastard that he thought he owned the fruits of his pen. He wanted to get payed for his plays and didn't want others to profit from his work.
For one thing, he points out that there is no distinction between the cathedral and the bazaar: both are build using the same principles, many individuals that produce something in an uncontrolled, unorded, unpredictable way.
It is indeed *an* Open-Source development model, it's a bit more radical than the popular one though.
Don't think evolution is the work of an infinite number of monkeys. 1000 Pentiums is not a lot in the grand scheme of things. Enumeration just doesn't work.
The best way someone phrased it was to compare evolution with the well-known 'infinite improbability drive'.
Improbable stuff happens all the time, the trick is to keep the good improbable stuff and get rid of the fluff. Then build on the improbable stuff and wait for more improbability to happen (which it will). Repeat.
Figuring which of the improbable stuff is improbable enough to get rewarded a monopoly by the state is indeed a whole other issue. You might not want an expert but a patent lawyer would come in handy.
can you give me your advice on the following
One of the things that was not mentioned in the article and as far as I know never made it into Koza's writing is that for some of their older stuff, they came up with some particular patent so regularly that they started to write a patent avoidance filter.
What the thing does it take some existing patents and when the evolution hits on something that is close to it, the solution get punished for that. In think this is on par with patent invention, particularly as it seems you can circumvent any patent by just entering it in the machine and end up with a different device that circumvents it. Might be good idea for some GNU projects to have.
Anything that this array of GP computers can create by a process of natural selection must by definition be an obvious consequence of the basic building blocks. After all, no creative thought it being exercised here, just a purely mechanical process.
By this logic any and all software patents are a logical consequences of a particular configuration of nand gates and should not exist.
The primitive building blocks in GP are just those: primitive. Simple logical and arithmatical functions, loops, iterations, things a programmer needs. Configuring them is called programming and whether it is done by automatic means is irrelevant.
The stuff genetic programming produces is quite often highly non-obvious and takes an expert quite some creative thought to understand how it does what it does.
There is a point that should be stressed though. Genetic programming works by using inductive processes to find the answer. Inductive processes are creative by nature, this in contrast with deductive logic that is not creative at all (Cyc is the prototypical example).
If a machine arrives at an answer through deductive reasoning (theorem proving), then by definition it is a logical consequence of the inputs. Generate and test is however not deductive.
And please define the phrase 'creative thought' and while you're at it prove that it is not mechanical.
Try this one. Koza got a patent on genetic programming as a whole. The technique of avoiding existing patents is just an interesting corrollary.
Just checked all sites ending on hotmail.com at netcraft:
ad.law3.hotmail.com
ad.law4.hotmail.com
ad.law7.hotmail.com
all run Apache/1.2.6 on FreeBSD.
the other four run IIS
Nah, it's this island in Denmark where you can find the city of Copenhagen
LOL, the EU has 380 Million inhabitants, about 100 million more than the US. The US does encompass 3 times the area of the EU.
Don't know where you got your idea that the measly 280 million of the US are large in the grand scheme of things. The 380 million in the EU are calculated without counting the wannabe EU members like eastern Europe (180 million) or Turkey(100 million).
Don't believe me, check this.
Try arithmetic instead of mathematics and I'll buy it.