It's a very fun concept, I've actually tried something like that manually (in my Two Headed Monster experiment, long ago), however, it will lead to weaker play than the strongest engine, so if you stick to the legit engines all results will be "disappointing" (because you'll usually reach positions that engine A understands, but engine B doesn't, so A would play better by itself, and wrong moves are played after the switch).
That said, these suggestions come to mind:
Rybka 3 (And I think that Rybka 3 Dynamic and Rybka 3 Human are also good suggestions)
Hiarcs Paderborn 2007 (or 13.1, but the first suggestion would increase playing style for sure)
Good luck, could you post some games?
> Stockfish 9.0
Hey Vytron already master time travel !!!
For people in the space folding business, I still recommend Stockfish 9.0
It would be better if Engine 1 plays a series of moves then after its finished, Engine 2 will replace Engine 1. But the question is when to switch. I guess I have to develop some kind of algorithm based on their score. I have to make it seem that the engines are working together as a team, not two engines that don’t talk to each other.
It’s funny when I tried Rybka and Amyan (weaker chess engine) combination against Zappa. It’s like watching a seesaw battle. One moment Zappa was in the losing end then suddenly Zappa seemed to be victorious but Rybka managed to save the day.
I always wondering how and when YOU change ENGINE, when Using 2 or more Engines for analysis
> It would be better if Engine 1 plays a series of moves then after its finished, Engine 2 will replace Engine 1. But the question is when to switch. I guess I have to develop some kind of algorithm based on their score. I have to make it seem that the engines are working together as a team, not two engines that don’t talk to each other.
If You have some new idea I would like to see, share it please
If I was a programmer, that would be the first thing I'd program, so I think it would be cruel if you kept the program for yourself. Still hoping for a release
I really hope you stick around and keep improving the program, the "Master" engine concept is yet to be implemented and this is a good beginning, it's possible that you could really program an engine that manages engines that is stronger than any single engine alone, though it'll require polishing.
- Are dumping your hash,
- Never know if the other engine would have come up with something better, and
- Are accepting a less than linear speed increase from multiple cores.
The main disadvantage of splitting resources amongst several engines that are always on is that they will waste resources looking at similar things. So it makes sense if you're doing this to use very different engines. For this, I think Rybka and SF would be a very good pairing.
For Stockfish clearing the hash won't make much of a difference, triple-brain would fail at recognizing when Rybka 4 came up with something better (because it would look at Stockfish's 0.80 score instead of Rybka's jump from 0.20 to 0.60), and I don't understand the third point (everything considered, on a Quad it'd still be 100% resources with .49 efficiency or 50% with 0.70 efficiency, 49 > 35?)
The third point calls out that you end up with (on a quad with 70% increase per doubling) either two engines running at 1.4X, or one engine running at 2X. If there were very little overlap between the two, it's possible that the two engines would be better. This is why people like Eros do analysis on multiple single cores (of course this is helped by his need to analyze many unrelated positions).
> this could easily be normalized out by an intelligent GUI script.
I've just realized you're talking about a potentially optimal implementation for triple-brain, while I was talking about Shredder Classic's implementation. It could indeed be interesting to match that against an optimally switching engine.
(Unless they've been reduced since the last time I checked...)
Info - Email - Avatar - Name
Click on name, there you can change it. If the name option doesn't appear, you've used all your changes
Alternatively, you can PM Dadi Jonsson and ask for a change:
As long as you give a good reason, he'd change it, and I think "my current name is Banned for Life" is a good reason!
Any chance to move toward this idea: http://rybkaforum.net/cgi-bin/rybkaforum/topic_show.pl?pid=55755;hl=interface
The “when to switch problem” is solved using a smart switching algorithm. The smart switching algorithm is based on the score of the engine. Somebody said here that each engine has a different scoring scale. So I took the average scores (absolute value) of past moves (the baseline), and took the ratio of the current score to the baseline. That way I can estimate if the move is good enough. Which engine has the higher ratio plays the move. The algorithm seems to be good when you have 2 great chess engines. But when you have an engine that overrates a crappy move the program switches and the crappy move is played.
Is there a better way to do this?
Just like some engines allow users to create personalities, it would be optimal if you let the users tweak the switching of the engines, so if one just wanted to see how an entity that switched engine every move would play, one would be able to do so.
I just hope this becomes popular
Here is a brief description:
ChessCombi is a UCI chess engine that combines two UCI chess engines into 1.
It can be used in a typical GUI program that supports UCI.
The combination of 2 chess engine can increase playing style but not necessarily produce better results.
The input from ChessCombi is directly fed to the input of the 2 engines.
But the output of the 2 engines however, is screened so that switching occurs.
The ChessCombi V1 is only available in Windows.
A copy is available in http://www.mediafire.com/?zl6ye8kl4vjvqxx#1.
Suggestions and feedback are greatly appreciated.
> But the output of the 2 engines however, is screened so that switching occurs.
Does this mean that both engines are running simultaneously?
I chect it later, what do You think => which UCI is the best for R4?
However, it gets severely out-searched, and it's because it's running both engines at the same time. Have you heard that Ponder On is bad for running chess matches? It's because the system doesn't give fair resources to the engines, so that one engine may get most of the resources and the resources that are left will cause the other engine to play very weak. With ChessCombi it's the same thing, one engine gets few resource, and it's catastrophic when ChessCombi plays this engine's move.
If you stick to a single engine for a single move, and use its input to decide whether you'll continue with the same engine on the next one, or to switch, you'd get a much stronger entity, because of the point above and because even if the system shared resource fairly, 50% of them would be wasted at all times. You could also get a theoretically stronger engine than the strongest one from the pair if you switched to the other engine when the strongest one would choose a worse move.
This is a very promising project, thank you for your efforts
> However, it gets severely out-searched, and it's because it's running both engines at the same time. Have you heard that Ponder On is bad for running chess matches? It's because the system doesn't give fair resources to the engines, so that one engine may get most of the resources and the resources that are left will cause the other engine to play very weak. With ChessCombi it's the same thing, one engine gets few resource, and it's catastrophic when ChessCombi plays this engine's move.
Oh yeah? If you have 4 cores, why don't you give 2 cores to one engine and 2 cores to the other? That way that's a non issue and ChessCombi would play as intended, THAT would only be a problem for people on 1CPU, but engines with a resource usage setting like Rybka would not have a problem there.
Really, what's up with that past self?
I think I have to screen the inputs so that only one engine will search for the best move.
@Sekos: Stockfish is a great partner for Rybka. I prefer Rybka will start the game, to build up the king’s safety then switches to Stockfish for aggressive moves.
Thanks for a quick reply.
Damn. That was a great project.
Powered by mwForum 2.27.4 © 1999-2012 Markus Wichitill