From: Mike B. <com...@ip...> - 2012-04-06 01:42:25
|
Hi Stefan - 1) Closer inspection shows that the "better route" I thought I was seeing for the B&M required re-using a tiny segment of track from D20 to E19. Small, but enough to invalidate the result. I could not reproduce the strange behaviour of the route display either. 4) I focussed on the NYC operating round in OR 8.1, as requested. in the enclosed zip file are 4 copies of the log and 3 saved games showing the different stages of the bug for the NYC operating round. "Copy of 18xx.log" is from the original game and may not be of much use to you. It was created prior to relaunching any games. I then deleted the original log file and relaunched the game, loading the saved game that I have previously sent and returning to the first noted aberrational behaviour (B&M's op round 8.1) and playing forward from there. "Copy (2) of 18xx.log" and "1830_20120406_0054_Mike_8.1(2).rails" give the initial display of the NYC route and all looks fine. This corresponds to the screenshot 1830-bug-03.jpg. "Copy (3) of 18xx.log" and "1830_20120406_0054_Mike_8.1(3).rails" give the results immediately after "no token" was clicked. This corresponds to the screenshot 1830-bug-04.jpg. "Copy (4) of 18xx.log" and "1830_20120406_0054_Mike_8.1(4).rails" give the display immediately after collecting the revenue, and the display is back to normal. Note that 1830-bug-05.jpg was the result of clicking "undo" after paying revenues. I did not attempt to generate a log or saved game for this. I have confirmed that loading "1830_20120406_0054_Mike_8.1(3).rails" or "1830_20120406_0054_Mike_8.1(4).rails", setting revenue, paying out revenue, and then clicking "undo" produces this route display and an earnings description of "Best Run Value = 1070 with 6-train=220; D-train=640". 2) My system configuration is Intel Celeron 2.66GHz, 2.0Gb RAM, running XP Pro 2002 Service pack 3. 3) Turning off the Active Routes fixed the problem, and the route displayed and values shown looked fine. So, while I find it a useful tool for determining where best to lay tiles early in the game, the point at which it becomes most useful (once diesels enter the game) is the point at which Active Routes becomes unreliable. Mike Bourke Campaign Mastery http://www.campaignmastery.com Co-author, Assassin's Amulet http://www.legaciescampaignsetting.com -----Original Message----- From: Stefan Frey [mailto:ste...@we...] Sent: Friday, 6 April 2012 2:14 AM To: rai...@li... Subject: Re: [Rails-devel] Rails 1.7.x revenue display / calculation bug Mike: thanks for your detailed post about your observed bugs. Most likely there is an issue with the update of routes and revenue information. The revenue calculation runs in a separate thread and updates from there. During a calculation the revenue thread informs the UI about intermediate and best total run values. However it is the taks of the UI thread to ask the revenue calculation thread for route information (including break down by trains), so the mechanism for getting routes and total values are completely different ones. Something in the synchronization between the calls went wrong on your system. I admit I had to rely on my sparse knowledge of Java 1.2 multi-threading instead of using the new and superior methods available now. This is on my todo list to be upgraded in Rails 2.0. So I have the following questions: * In one case (the B&M, bug 1) I have not found the better route you imply (see below). * What hardware to you use? On my PC I cannot replicate the issues you had, but the calculations run quickly fast here, so that none of the intermediate results can be seen (none runs for more than a second, even for the double Diesel runs). Thus I cannot replicate your bugs (except the B&M case, but see above). * Could you turn off the option in Configuration => Map => Show active routes and check if you still see those kind of bugs? This option has been introduced by Frederick in 1.7.0 recently (and it runs in a separate thread as well). * Could you replicate one of the bugs (again except B&M) and then immediately store and send me a copy of the 18xx.log file which is located in the working directory of Rails? Stefan Some more detailed comments see below (more for me for reference) On 04/05/2012 03:11 PM, Mike Bourke wrote: > The revenue calculations and routing displays in the 1.7.x series continue > to behave strangely, as illustrated within the saved game and series of > screen captures attached. > > While the example is from 1830, I have observed the same behaviour in > several other of the games implemented in Rails 1.7.0. > > 1830-bug-01.jpg is taken from before a company (in this case, the B&M) lays > a tile during Op Round 8.1. Note that it shows routes for both trains but > ignores the lucrative route to the west. How to you run the lucrative route to the west, the loop via South NYC to Balitmore and a good 5 at the same time? I have seen at least no easy improvement over the route currently found, but you might have checked that better than me? > > 1830-bug-02 is taken immediately after a piece of straight track has been > layed and "no token" chosen, without increasing the potential payout at all. > Accordingly, the optimum revenue route should not have changed. And yet, > mysteriously, the 5-train routing has vanished from the display even though > there is clearly at least one obvious route, and the Diesel route has > completely changed. Note also the information at the top of screen, which > reads, "Best Run Value = 920 with 5-train = 0; D-train = 770". Clearly the > routing optimisation is being performed by two different algorythms, and one > of them has a bug in it. Route information belongs to the best Diesel run alone (so this is a temporary result after finding the best Diesel run). The Best Run Value belongs to the best combined (D,5) run. > > --------------------------------------------------------------- > > 1830-bug-03 is taken from later in the same operating round. The NYC has > layed a tile, and the route displayed is entirely reasonable. Agree, seems ok. > > As soon as "no token" is clicked, the and the computer is permitted to > calculate its optimum route, the display changes to that shown in > 1830-bug-04.jpg. The 6-train route has vanished, the diesel route displayed > is the one that would have been optimum IF the company only had a diesel, > and the text at the top of screen reads "Best Run Value = 1070 with 6-train > = 0; D-train = 780". See above: Best Diesel run as route information, whereas the best run value shows best (D,6) run. > > Using "undo" and then again choosing "no token", the routing display > abruptly changes to that shown in 1830-bug-05.jpg! Note that the lucrative > routing to the west is suddenly being ignored, both trains have a displayed > value, and the text at the top of the screen has changed to read "Best Run > Value = 1070 with 6-train = 220; D-train = 640". These individual train > earnings numbers do match the route displayed, but don't match the best run > value total. The game save is from this point. This is now an intermediate result from the (D,6) optimization which has not found the best combination yet. Best run value again correct. > > But as soon as you "set revenue", the route changes, as shown by > 1830-bug-06.jpg - to what once again appears to be the optimum route, and is > *hopefully* the one that matches the actual payout total. > That is ok, given that you have triggered the next phase, it calculates and displays the current best values again. > ------------------------------------------------------------- > > At the start of the next operating round, after a tile has been layed by the > NYNH, and "no token" chosen, I was presented with the display shown in > 1830-bug-07.jpg. This is clealy the other side of the coin. The only route > showing is that of the 5-train, and the information shown at the top of the > screen confirms this: "Best Run Value = 1040 with D-train = 0; 5-train = > 260". OK: This time the trains got optimized in a different order: It shows the best 5 train for route information, but the total run value is correct. Remark: In fact there is no order in which trains should be optimized as in the final run the best set of simultaneous runs has to be found. However as part of the revenue prediction algorithm which allows to cut the search tree, it helps to calculate single runs first (and for more three and more trains, to run smaller sets of trains first). > > ------------------------------------------------------------- > > Unfortunately, I was unable to replicate the other bug that I had previously > observed, which also involved the correct calculation of the optimum route. > But this bug (and I suspect it is just one bug, despite the variation in > symptoms) should give the development team enough to be getting on with! > > Notes: this bug doesn't always manifest. You may have to use the game report > to return to an earlier stage of the game to replicate the effects, or to > click "undo". For example, on reloading the saved game, they NYC display and > payout appeared quite correct. > > > Mike Bourke > Campaign Mastery http://www.campaignmastery.com > Co-author, Assassin's Amulet http://www.legaciescampaignsetting.com > > > > > > > --- > avast! Antivirus: Outbound message clean. > Virus Database (VPS): 120404-0, 04/04/2012 > Tested on: 5/04/2012 11:12:16 PM > avast! - copyright (c) 1988-2012 AVAST Software. > http://www.avast.com > > > > > > > > ---------------------------------------------------------------------------- -- > Better than sec? Nothing is better than sec when it comes to > monitoring Big Data applications. Try Boundary one-second > resolution app monitoring today. Free. > http://p.sf.net/sfu/Boundary-dev2dev > > > > _______________________________________________ > Rails-devel mailing list > Rai...@li... > https://lists.sourceforge.net/lists/listinfo/rails-devel ---------------------------------------------------------------------------- -- Better than sec? Nothing is better than sec when it comes to monitoring Big Data applications. Try Boundary one-second resolution app monitoring today. Free. http://p.sf.net/sfu/Boundary-dev2dev _______________________________________________ Rails-devel mailing list Rai...@li... https://lists.sourceforge.net/lists/listinfo/rails-devel --- avast! Antivirus: Outbound message clean. Virus Database (VPS): 120405-0, 05/04/2012 Tested on: 6/04/2012 11:41:29 AM avast! - copyright (c) 1988-2012 AVAST Software. http://www.avast.com |