The implemented algorithm uses a brute force method: words are generated based on tiles on the rack plus placed tiles for every row and column by a "variation without replacement". Afterwards the generated words are tested on all positions whether or not it violates a rule. Finally the list of valid word is sorted by the score, or depending on the settings some more data.
Given the letters ABCDE are available, first the dictionary is tested if there is a word starting with A. If so, a test for AA would follow but only if another A would be available. Thus the next letter B is added to the test word. Since we do not have tiles for ABA or ABB we test with ABC, ABD and ABE. Even if those combinations result in valid word fragments it cannot be combined to real words. So the next combination starts with B. BA looks good, BAA, BAB not possible, but with BAC and BAD we get valid words.
The calculation is done up to 30 times with the classic board, 42 times in case of Superscrabble with 21 columns plus 21 rows, and 1350 times for Scrabble3D (15+15 fields with 15 positions in 3 dimensions) ('up to' means that a calculation is not done unless neighboring tiles are found for combinations). And many thousands of valid words can be found in every calculation. The search is very time consuming, in particular if one or more jokers can be applied. In order to use the full power of modern hardware, the processing is performed in parallel on multi-core processors. If no parallel processing is desired, the multithreading can be disabled in the configuration. In addition, the configuration provides some options to limit the computer in its performance, or to improve its tactical game play.
Computer as a player
The computer can be used as opponent in local games. It places always the word with the highest rating (or the one that comes closest in respect to settings). No strategic considerations is done like circumvention of premium squares use. Together we the fact that the computer is almighty in respect to the dictionary makes the game a little bit special.
To start a game against the computer you have to enter 'Computer' as the name of one or more players in the new game dialog. At least one human has to participate, however. You can play against the computer only in local games, during the network mode it is not (yet) possible.
Computer as support
In order to improve your own game, the computer can be used to find the best word (or rather the word with the highest score) for each move. By clicking on the wheelchair icon at the toolbar, the analysis is executed on ground of the existing tiles - but it will display the value of the best word only. To place this word you have to enter a number in the input control next to the wheelchair icon. The number 1 is for the first word in the list of found words, each higher value indicates the next word with lower rating. Additionally, you can browse through the list by clicking on the up/down arrows, per cursor up/down ,and with +/- on the numpad. Of course, this feature is disabled during network games. However, after game end you can select a move at the game course and run the calculation post-hoc. In this case the result is immediately displayed as the number of your own word in the list of valid words.
Computer for game analysis
What you can do for single moves can be performed for the complete game. This post-hoc game analysis computes the highest score for every move, and calculates the ratio of your own moves compared to the highest scores. Values are simply summed up irrespective of exchanges or strategic moves. But the result is a good reference for your own performance compared to other human players. Values above 80% are very good.
In addition to this percentage, a delta value is calculated which describes the use of premium squares. The value is calculated as the quotient of one's earnings to the sum of all the letters values by the number of players. Thereby a relative independence from the letter set and the board is given. However, the value is highly correlated to the final result. A delta greater than 5 is a very good value.