Elitist Jerks
Register
Blogs
Urban Rivals
Forums
New Posts


Go Back   Elitist Jerks > Public Discussion > Class Mechanics > Shamans
Elitist Jerks Login

gamerDNA Login

Welcome to Elitist Jerks
We're testing some new features on the site regarding OpenID registration and coordination with gamerDNA. If you experience any issues with registering an account, please take the time to fill out a report and send it to this e-mail address. We would appreciate any assistance you could provide in making sure everything is functioning as intended. Thanks!

If this is your first visit, please be sure to check out the FAQ and the forum rules. Users must register to post and new registrations are subject to a one day "mute" period to get acquainted with the community.

Reply
LinkBack (441) Thread Tools
Old 07/10/09, 6:51 PM   #2226
 Raut
Tauren Marine
 
Raut's Avatar
 
Tauren Shaman
 
Draenor (EU)
Originally Posted by Sylvand View Post
The computation would be exponential on the number of item slots (assuming a multiple options for each slot). However the number of slots is fixed for practical applications. If you have some total number of items N with m slots, you maximize the number of combinations at (N/m) items per slot, with the number of combinations being (N/m)^m, or N^m / m^m. Of course with m being constant (17? maybe more if you count glyphs etc.) this will be O(N^m) which would be clearly in P.
Ugh, you are right. Silly me. I blame too much coffee and not enough sleep.

As to the topic at hand. You say you'll include some mechanism to compare two items, Malan. I take it that regular runs with some constant output like EP is still going to be able given your current set? I would have offered to help but my time is limited.

I was flirting with the idea of writing a Python wrapper around the current EnhSim to test out potential upgrades and calculate a personal BiS list. It doesn't sound too hard but recalculating gem slots and such made me shelve the idea. Anyway, the idea was to feed the script with a set of items and let it generate config files for enhsim. Let it parse data during the night or something and let it return with the findings once it cannot find a better combination. If you already incorporate an option to check one item, you can easily do several.

Baby, you can hold my balls.

13:17 < Kalroth> gays on men tv? I love that channel
 
User is offline.
Reply With Quote
Old 07/10/09, 8:11 PM   #2227
Pashaman
Glass Joe
 
Draenei Shaman
 
<MCO>
Shadowsong (EU)
Originally Posted by Synkronos View Post
The sim doesn't build up your stats from actual items and gems and enchants tho, it relies on being fed those values pre-calculated by WoW
Originally Posted by Malan View Post
The new jEnhSim will do this. We are modeling gear on a per-slot basis, to include gems.
Rawr already does that very well. It also has an armory scraper and a button to export to EnhSim.

I urge you not to spend development time and focus on things that already exist - but rather on the "core business" of the simulator.

Thanks for doing this work! Looking forward to 1.0.
 
User is offline.
Reply With Quote
Old 07/10/09, 8:23 PM   #2228
Sekhem
Glass Joe
 
Troll Shaman
 
Feathermoon
I sincerely apologize for my absence -- sadly, the business that I own and various RL concerns kind've took over for a while.

The good news is this - iEnhSim 1.0.4, including multithreading, Vergas' 1.7.0.3 engine, and the new trinkets that 1.7.0.3 supports (Mjolnir, Blood of the Old God, Dark Matter, and Elemental Focus Stone), is now available at ienhsim.googlecode.com !

I will try to keep updates much more frequent from this point forward.

Also, as a little bonus for those who haven't discovered it yet ... the Shaman icon in the lower right corner is clickable.

I know that the development of jEnhSim is underway, but hopefully this gives my fellow Mac users something to use in the here and now =D

Edit: It's not a huge deal, since iEnhSim is already hosted at Google Code, but is there any chance of getting a mention on the new site at Codeplex?

Also...I forgot to mention ... iEnhSim is now FULLY Universal Binary! PowerPC users, rejoice
 
User is offline.
Reply With Quote
Old 07/10/09, 9:55 PM   #2229
Sylvand
Piston Honda
 
Draenei Shaman
 
Spirestone
Originally Posted by paladyin View Post
Rawr already does that very well. It also has an armory scraper and a button to export to EnhSim.

I urge you not to spend development time and focus on things that already exist - but rather on the "core business" of the simulator.

Thanks for doing this work! Looking forward to 1.0.
+1 to this.

Rawr works great, but we always get the nagging feeling that we don't know if the numbers are 100%. Even if jEnhsim is great, we would (and should) have the same doubts. For this reason I don't see serious theorycrafters moving away from one or the other, so hopefully the non-overlapping features hold priorty
 
User is offline.
Reply With Quote
Old 07/10/09, 11:22 PM   #2230
Malan
postcount++
 
Malan's Avatar
 
Malan
Tauren Shaman
 
No WoW Account
Originally Posted by paladyin View Post
Rawr already does that very well. It also has an armory scraper and a button to export to EnhSim.

I urge you not to spend development time and focus on things that already exist - but rather on the "core business" of the simulator.
Uh, what? There's no reason whatsoever that we can't have an easier to use interface for the simulation, which as noted is one of our major goals. As for 'wasted development time', we basically knocked out that aspect of the interface in about 2 evenings of coding between me and one of the other devs.

Originally Posted by Raut View Post
As to the topic at hand. You say you'll include some mechanism to compare two items, Malan. I take it that regular runs with some constant output like EP is still going to be able given your current set? I would have offered to help but my time is limited.
Yah my plan (dependent on the others of course) is to have a panel for your current gear (we have this implemented) and then a second identical panel for any changes. You can then run sims and EP calcs on your current gear as normal. Or, you can make some changes to the 2nd set of gear (the idea being that you leave anything blank to say "use existing here" and we just copy that over) and hit the 'compare' button - now the sim will run a set of simulations against both sets of gear (base set, and base set with the changes inserted) and provide output about the DPS differences of each one.

Last edited by Malan : 07/10/09 at 11:32 PM.

Shitting up every single thread on EJ since '06
 
User is offline.
Reply With Quote
Old 07/11/09, 12:18 PM   #2231
Levva
King Hippo
 
Levva's Avatar
 
Draenei Shaman
 
Khadgar (EU)
Originally Posted by Raut View Post
Care to explain this in more detail? Showing items X and Y as A and B "EP" shouldn't be any different from C and D "DPS". EP translates into DPS after all. Swapping items would ruin your fundament for reaching that figure, it being EP or DPS. Or are you trying to incorporate some subtraction of items into the equation to get this "DPS" number?

I'm all for you guys rebuilding EnhSim in Java to make it more portable and what Malan wrote about making fixed variables exist outside of the binary for easy editing sound good. However, I don't think swapping EP for DPS would be a good choice if you're not planning to subtract the item you are replacing in favor of this new item and running the sim again with the new stats. If nothing else, EP is abstract enough to allow us to give it certain rules, like "EP is highly situational and will vary when you change items or change ability priority". If you say item X has A DPS and item Y has B DPS where B > A, and swapping the two results in a DPS loss, I'm sure the jEnhSim thread will be consumed in flames. (Imagine the calculation where your findings gave hit and exp low to zero "DPS" because caps were reached. You swap for a crit trinket and DPS goes down.)

I may be missing some vital part of the puzzle here and if so please enlighten me.

(Hm. Is calculating every piece of gear to find a BiS list an NP complete problem?)

The sim computes DPS based on a set of gear, if you give it your current gear and calc dps then change an item and calc its dps you can compare the difference as a change in DPS. This is basic basic stuff.

Now to do the same with EP, you calculate the EP values of your current gear, and work out the EP value of the item you are swapping, then swap it and calculate the new EP values and see what changed.

However the problem is do you use the EP values of the gear before you swap the item to compare the two items or the EP values after you compare the two items, or the EP value for one item before the change vs the EP value for the other after the change?? Its perfectly possible to find the EP value for an item changes by equipping it.

eg: You want to check out if a trinket is an upgrade. With EP you calc your EP values and apply that to the old trinket and the new one and find that the new trinket is better. So you equip the new trinket. HOWEVER it can happen that if you now recalculate the EP values (now the new trinket is equipped) and apply it to the old trinket and the new that the changes in EP are such that the OLD trinket now has a higher EP value.

THIS is why relying on EP is a BAD idea. When the sim produces raw dps figures why would you convert to the moving target that is EP.

Instead what you should compare is the dps of your gear without anything in that slot, vs the dps with old trinket and dps of new trinket. That then gives you the dps value of old trinket and dps value of new trinket. This then makes a simple comparison possible.


One of the goals I'd like to see for jEnhSim is to add an optimiser. This would take one or more gear options for each slot and try to determine what is the highest dps of those combinations of gear. In order to do this doing a basic "try every combo" would never work as the number of combinations rapidly grows beyond what would be a reasonable execution time. So instead the plan is to use a Genetic Algorithm to quickly hone in on the BiS solution. A mate of mine has written textbooks on GAs and has offered to help.


However this is all a long way off as first we need more help to actually build the sim. At present there is NO development on EnhSim, I've set up a site with the source but no-one is working on it so we will not have a v3.2 patch sim unless someone volunteers to help. The problem really is that EnhSim in C++ is not something that any of the current volunteers has much experience with and so its REALLY difficult to maintain without break it and giving false results. Instead the hope is to build a new sim in Java that we do actually know how it works but at present only two people are really working on it which is simply not enough.

My own time is vanishingly small over the next few months. I've barely been able to keep up on the forums let alone do any development work, hence no ShockAndAwe updates, no Rawr updates etc. I suspect I may be able to do some work on these things the 2nd week in August when I'm off on a training course in London. However at the end of August I'm off on holiday for 3 weeks so not likely to be able to do much until the end of September.

So please volunteer people.

Author of ShockAndAwe Enhancement Shaman max dps addon
Author of Rawr.Enhance an automated gear checking program that can generate config files for EnhSim.
Please use the EnhSim by Tukez, Sylvand & others to simulate what gear, priorities etc are the best dps.
FAQ: Hit cap 342 Draenei, 368 Horde, Expertise rating cap 140 with 3/3 Unleashed Rage. Cap those before worrying about other stats.
 
User is offline.
Reply With Quote
Old 07/11/09, 9:26 PM   #2232
 Raut
Tauren Marine
 
Raut's Avatar
 
Tauren Shaman
 
Draenor (EU)
Originally Posted by Levva View Post
The sim computes DPS based on a set of gear, if you give it your current gear and calc dps then change an item and calc its dps you can compare the difference as a change in DPS. This is basic basic stuff.

Now to do the same with EP, you calculate the EP values of your current gear, and work out the EP value of the item you are swapping, then swap it and calculate the new EP values and see what changed.

However the problem is do you use the EP values of the gear before you swap the item to compare the two items or the EP values after you compare the two items, or the EP value for one item before the change vs the EP value for the other after the change?? Its perfectly possible to find the EP value for an item changes by equipping it.

eg: You want to check out if a trinket is an upgrade. With EP you calc your EP values and apply that to the old trinket and the new one and find that the new trinket is better. So you equip the new trinket. HOWEVER it can happen that if you now recalculate the EP values (now the new trinket is equipped) and apply it to the old trinket and the new that the changes in EP are such that the OLD trinket now has a higher EP value.

THIS is why relying on EP is a BAD idea. When the sim produces raw dps figures why would you convert to the moving target that is EP.

Instead what you should compare is the dps of your gear without anything in that slot, vs the dps with old trinket and dps of new trinket. That then gives you the dps value of old trinket and dps value of new trinket. This then makes a simple comparison possible.
I'm still not seeing it. The current EnhSim gives you raw DPS. With some UI improvements (I've never used the UI so I'm guessing here) you could implement some item comparison. So you could run three sims: no item, old item and new item. By this you could give an item it's "raw" DPS figure. Not sure if you can get away with less than three runs in your model, but I doubt it.

We know EP is flawed and is currently the red headed stepchild that everyone loves to beat. Still it the best way for us to predict upgrades, not actually calculate them. EnhSim and whatnot could still give you a raw DPS figure for an item if a wrapper was in place. I, and I bet most of you, already know that EP is limited by certain rules and we have to apply some thought into items before we can assert it is an upgrade. Wonky haste values, soft and hard caps, weapon speed and so on. Still, it is the only way for us to predict upgrades that do not follow a strict stats+X upgrade path. I don't see how you can offer something like this in jEnhSim without running every possible upgrade or inventing "jEP - the totally new scale that is totally not EP". Also having the different stats broken down to how much they contribute is a huge plus in my book.

So far this is the only thing that I've reacted on with jEnhSim. Maybe it's me explaining poorly as this predicting issue is what's bothering me and I haven't seen it addressed. I wouldn't mind both DPS and EP.

Baby, you can hold my balls.

13:17 < Kalroth> gays on men tv? I love that channel
 
User is offline.
Reply With Quote
Old 07/12/09, 9:40 AM   #2233
Levva
King Hippo
 
Levva's Avatar
 
Draenei Shaman
 
Khadgar (EU)
Ok as I see it EP is simply a quick n dirty method for humans to work out the value of an item without a computer. You can take a set of EP values and manually apply them to items.

With computers you can quite easily work out the ACTUAL dps contribution of any item. If you have ever used Rawr you would know what I mean. Whilst it uses a closed form solution rather than a sim it does very quickly and easily display what items are upgrades and every single item it displays shows its actual dps contribution, rather than some vague EP value.

So you are very wrong to state that EP is the only way to predict upgrades.

Author of ShockAndAwe Enhancement Shaman max dps addon
Author of Rawr.Enhance an automated gear checking program that can generate config files for EnhSim.
Please use the EnhSim by Tukez, Sylvand & others to simulate what gear, priorities etc are the best dps.
FAQ: Hit cap 342 Draenei, 368 Horde, Expertise rating cap 140 with 3/3 Unleashed Rage. Cap those before worrying about other stats.
 
User is offline.
Reply With Quote
Old 07/12/09, 10:58 AM   #2234
 Raut
Tauren Marine
 
Raut's Avatar
 
Tauren Shaman
 
Draenor (EU)
I don't think I am. The means to get a prediction greatly affect the actual worth of said prediction. Rawr uses far simpler models to reach an item's worth. That's not a flaw in Rawr, it's just that enhancement theory doesn't fit into typical Rawr modules because you can't find good mean values for abilities. For enhancement you simulate over time.

Then again, your view may be that the Rawr enhance module is good enough. Mine is that it isn't. If that is your standpoint, then yes, from your PoV I am wrong.

Are you trying to move jEnhSim away from being a simulator? I wouldn't expect you too if nothing else than the name. If jEnhSim still is meant to simulate every change, possibly with longer execution time due to the move to Java, you are looking at a crapton of hours to check most items from a new instance like Ulduar. If you plan to make a "DPS" variable to stats for actual loot predictions, I don't see how that is an improvement over what EP is today.

EP isn't quick and dirty. It's a variable set by hours of simulation. Like most simulations that try to predict unknown changes it's not completely reliable.

Baby, you can hold my balls.

13:17 < Kalroth> gays on men tv? I love that channel
 
User is offline.
Reply With Quote
Old 07/12/09, 12:27 PM   #2235
kaoticz
Von Kaiser
 
Draenei Shaman
 
Lightbringer
A simple comparison is not what I care about when trying to Min/Max. If it was simple then a lot of the scrubs that suck wouldn't really suck quite so hard, it would just be ability execution that determined how good/bad they are.

I personally dislike EP, but I still find it to be the best way to determine gear. Granted, I check my EP values after increasing each stat individually and then I check them after once again by seeing how they adjust when I raise 2 or more values or raise one and lower another and I try to find the optimal means to obtain my goals. Then I test this ingame and try multiple different gemming schemas over a few weeks in actual encounters to see how they play out in "real-world" conditions and realistic problems that occur in practice whilst DPS'ing. The sim after all, can only prepare you for a perfect scenario.

It's obvious to me however from reading this thread that everyone seems to determine their gear upgrades through a different method, and many end up coming to the same conclusions or close to one another, so I would say, to each his own. What it comes down to at that point is gemming and enchanting for what you need.

I probably didn't convey myself as clearly as I could but I do think I got my point across.
 
User is offline.
Reply With Quote
Old 07/12/09, 3:37 PM   #2236
Falcon213
Von Kaiser
 
Draenei Shaman
 
Illidan
Originally Posted by Raut View Post
I don't think I am. The means to get a prediction greatly affect the actual worth of said prediction. Rawr uses far simpler models to reach an item's worth. That's not a flaw in Rawr, it's just that enhancement theory doesn't fit into typical Rawr modules because you can't find good mean values for abilities. For enhancement you simulate over time.
...

EP isn't quick and dirty. It's a variable set by hours of simulation. Like most simulations that try to predict unknown changes it's not completely reliable.
I think you got lost somewhere. EP is "quick and dirty" in that, with the EP values for you're current set of gear, it is a way to tell at a quick glance if one piece is better than another, although swapping pieces could greatly change your EP calcs. So while it is good for judging a single upgrade, it is pretty ineffective at judging multiple changes to your gear setup.

By simming the difference in DPS, however, you can better compare entire sets of gear as well as see exactly how much a change will affect you. (EP values cannot tell you this because large upgrades in EP for one piece may drop the EP on another piece.)
 
User is offline.
Reply With Quote
Old 07/12/09, 7:05 PM   #2237
Malan
postcount++
 
Malan's Avatar
 
Malan
Tauren Shaman
 
No WoW Account
Well Levaa's point is that EP is *not* actually a way to see if an item is 'better' than another item. It's a good way to check in-game for the relative value of some items. But unless the items you're comparing have the same stat allocations with different values, then you can't strictly say that an item with a higher EP total is best. But you can sim your gear stats with that item and compare against your current set to find out if it actually is an increase or not.

I've actually had this happen lately where several upgrades cause certain known BiS items to drastically plunge in EP value - the hard mode neck from Freya in particular.

So anyways, all Levaa is saying is that in his view we should move toward referring to the dps potential of an item (relative to your equipped gear) rather than EP.

Shitting up every single thread on EJ since '06
 
User is offline.
Reply With Quote
Old 07/12/09, 8:00 PM   #2238
 Raut
Tauren Marine
 
Raut's Avatar
 
Tauren Shaman
 
Draenor (EU)
Originally Posted by Falcon213 View Post
I think you got lost somewhere. EP is "quick and dirty" in that, with the EP values for you're current set of gear, it is a way to tell at a quick glance if one piece is better than another, although swapping pieces could greatly change your EP calcs. So while it is good for judging a single upgrade, it is pretty ineffective at judging multiple changes to your gear setup.

By simming the difference in DPS, however, you can better compare entire sets of gear as well as see exactly how much a change will affect you. (EP values cannot tell you this because large upgrades in EP for one piece may drop the EP on another piece.)
Reread my posts. I shouldn't have brought up this "quick and dirty" thing as it's meaning is subjective and for me there is nothing quick or dirty by getting a stat's worth by simulating thousands of hours worth of combat. You should see from my arguments that I fully understand what EP is and isn't.

Originally Posted by Malan View Post
Well Levaa's point is that EP is *not* actually a way to see if an item is 'better' than another item. It's a good way to check in-game for the relative value of some items. But unless the items you're comparing have the same stat allocations with different values, then you can't strictly say that an item with a higher EP total is best. But you can sim your gear stats with that item and compare against your current set to find out if it actually is an increase or not.

I've actually had this happen lately where several upgrades cause certain known BiS items to drastically plunge in EP value - the hard mode neck from Freya in particular.

So anyways, all Levaa is saying is that in his view we should move toward referring to the dps potential of an item (relative to your equipped gear) rather than EP.
This is what I got from Levva as well, but how are you planning to use the sim for comparing several items? Or are you even planning to support such a thing? I guess a recursive approach would do this but we're talking trying any combination of the supplied list to make sure you're not leaving the actual BiS set out of the sim.

For testing some new gloves and boots we're taking:
* Regular DPS sim
* Sim without gloves
* Sim with new gloves
* Sim without boots
* Sim with new boots
* Sim with new boots and new gloves

If you toss in a couple of bracers you can add:
* Sim without bracers
* Sim with new bracers
* Sim with new bracers and gloves
* Sim with new bracers and boots
* Sim with new bracers, boots and gloves

This stacks up very fast. Doing clean runs without doing the combo runs would be as detrimental as trusting EP blindly.

I understand that several people dislike EP. I also understand it's fundamental flaws and how it is misleading to insert them into lootrank and expect a BiS list to appear. Still, EnhSim calculates EP values by adding these stats to your current set.

I've said this before but maybe I haven't made myself clear; using EP is a neat way of guessing the future. Yes, it's limited by your current set and a stat's worth is how much DPS you gain by adding the template stat value from the config. It still shows you a trend. Based on this trend, which is far from as correct as simming all potential future upgrades, you can see items that stand out on top of your list. Based on this list and what I've gathered about jEnhSim, you can verify these findings by running actual sims on this trend. Using maybe the top two items in each slot(we're probably talking hours of CPU time to test 17x2 slots if you are planning something like I suggested above). The result can give you an answer to the trend and also suggest a new trend if you so wish. If the new trend, based on EP, looks very different from the first one, you start over. You will still have eliminated hours and hours of actual sim time compared to a whole instance. And without EP, how could you not include the whole instance's loot table? You have no way to weight stats.

By the end of jEnhSim(Raut edition)'s cycles of calculating EP and looking over trends(like looking at lootrank), you'd end up with a set that the sim cannot find suitable upgrades for.

Baby, you can hold my balls.

13:17 < Kalroth> gays on men tv? I love that channel
 
User is offline.
Reply With Quote
Old 07/12/09, 8:48 PM   #2239
Malan
postcount++
 
Malan's Avatar
 
Malan
Tauren Shaman
 
No WoW Account
Nah my thought on the process was:
1) Input your current equipment with enchants and gems
2) Input any changes you want to make to that on a second panel. This would include changing out any gems to stay at/under caps.
3) The sim runs a thread for set and shows you the dps differences.

So if you wanted to add a different set of bracers, gloves and boots all at once, you'd get a single sim run showing the result of equipping all three of those simultaneously (along with any gemming/enchant changes).

The whole idea was to simplify the most common uses of the sim, one of which is to anwer "is item 1 better than item 2?"

Shitting up every single thread on EJ since '06
 
User is offline.
Reply With Quote
Old 07/13/09, 4:40 AM   #2240
 Raut
Tauren Marine
 
Raut's Avatar
 
Tauren Shaman
 
Draenor (EU)
You'd need three "naked" runs with each of the current items taken off first. Then single upgrade runs for each of the three upgrades and finally a run with all three potential upgrades. That is if I correctly understand your goal of getting a DPS figure for each item. Then again, you could argue that this approach was wrong as you are moving towards a new set and comparing each piece in the old set environment will make DPS values polluted by the old set. An item's relative worth in the new set could be very different from the old.

At least I've gotten the answer I was looking for. jEnhSim will discontinue any loot prognosis bar simming each and every possible upgrade and for it to work on a BiS list, it has to sim every combination of sets that you give it. I urge you to reconsider. For those of us that have no problems working with the limitations of EP, we are losing a pretty nifty tool. I fully support your claim that a sim run on an item is the only way to make sure you are looking at an upgrade. Our problem now would be that of 10-30 slot_x items, we would have to run sims. Not only that but there are 17 slots in total and single upgrade sim runs are only slightly better than EP because of stat shifting.

Baby, you can hold my balls.

13:17 < Kalroth> gays on men tv? I love that channel
 
User is offline.
Reply With Quote
Old 07/13/09, 5:50 AM   #2241
Falcon213
Von Kaiser
 
Draenei Shaman
 
Illidan
I suppose if someone wanted to create a wrapper that was fed a list of items and then continued to calculate a BiS list overnight that would be possible, but not with the default version.

And AFAIK, EP hasn't been abandoned. It still has its uses even for those who don't use it to find gear upgrades, for gems and enchants.
 
User is offline.
Reply With Quote
Old 07/13/09, 6:34 AM   #2242
 Raut
Tauren Marine
 
Raut's Avatar
 
Tauren Shaman
 
Draenor (EU)
I'm... not sure if you are trying to troll me, Falcon213. Your posts seem to be very erratic. We've already talked about wrappers that can calculate individual upgrades. For an entire instance, we're talking around 10 items that you should check for each slot. That's 2 015 993 900 449 combinations. If the sim used one second on every iteration of gear, we'd still look at 23 333 262 days worth of sim time.

From what I've gathered, both Malan and Levva have stated that EP is undesirable and they are moving away from it. I'm trying to rally for it's future survival.

Baby, you can hold my balls.

13:17 < Kalroth> gays on men tv? I love that channel
 
User is offline.
Reply With Quote
Old 07/13/09, 7:16 AM   #2243
Nevets_69
Von Kaiser
 
Nevets_69's Avatar
 
Orc Shaman
 
<TG>
Arthas
I don't know that you can really say there are 10 viable choices for BiS for each item slot. At worst I would say there are 4-5, and in some cases BiS is quite obvious even with a wide range of EP values (which are admitedly flawed, but if you open the range up, they can definitely bracket "true" EP values).

I'd say a more realistic situation is one where you have 3 options for BiS in each of the 17 slots (personally I still feel this is quite conservative as I'm usually deciding between 2-3 in some slots, with some having clear winners). So 17 slots ^ 3 options per slot, gives only 4913 different combinations. A much more reasonable number, and while it would still take on the order of days to sim every combination, it's doable.



TLDR: A few simple assumptions, and well informed decisions about reasonable choices for best in slot items can make it a manageable problem.

Elemental Shaman: You're OOM.
Enhancement Shaman: So are you.
 
User is offline.
Reply With Quote
Old 07/13/09, 8:21 AM   #2244
Levva
King Hippo
 
Levva's Avatar
 
Draenei Shaman
 
Khadgar (EU)
Originally Posted by Raut View Post
You'd need three "naked" runs with each of the current items taken off first. Then single upgrade runs for each of the three upgrades and finally a run with all three potential upgrades. That is if I correctly understand your goal of getting a DPS figure for each item. Then again, you could argue that this approach was wrong as you are moving towards a new set and comparing each piece in the old set environment will make DPS values polluted by the old set. An item's relative worth in the new set could be very different from the old.

At least I've gotten the answer I was looking for. jEnhSim will discontinue any loot prognosis bar simming each and every possible upgrade and for it to work on a BiS list, it has to sim every combination of sets that you give it. I urge you to reconsider. For those of us that have no problems working with the limitations of EP, we are losing a pretty nifty tool. I fully support your claim that a sim run on an item is the only way to make sure you are looking at an upgrade. Our problem now would be that of 10-30 slot_x items, we would have to run sims. Not only that but there are 17 slots in total and single upgrade sim runs are only slightly better than EP because of stat shifting.
Have you heard of Genetic Algorithms? These are computing techniques to solve problems where the number of possibilities are massive. I completely and utterly agree that taking even a couple of items per slot and attempting to work out every possible combo means that you could have hundreds of thousands of possible combos (especially if you are considering gems/enchants too which you'd have to do).

Running a sim for at least 10,000 hours sim time for every possible one of these hundreds of thousands of gear combos would take an unacceptable length of time. A Genetic Algorithm can be employed to short cut a lot of these combinations, by various possible methods it aims to hone in on the best solution with far far fewer runs of the sim. It might still take say 30-40 mins to do a BiS calc but it would at least give a result.

HOWEVER the initial aim of jEnhSim is to allow users to enter their gear setup and get a dps value in exactly the same manner as EnhSim. It will also be able to run and give you EP calcs so you won't actually lose anything. So I really really don't see what your problem is. Note also that Java apps will not run any noticeably slower than C++ due to JIT (just in time compilation), assuming of course you are running at least Java v6.

What we have been talking about making it easier to compare gear by having a side by side comparison option, you enter your gear and then say I want to compare this slot item. It will then run two different runs and show you the dps difference. We intend to make it much easier to compare two specific items. At present you need to convert stats to percentages and remember to add effects like AGI giving crit and AP and 30% SP. So changing AGI in current sim is a pain. In jEnhSim we aim to have stats per slot so you can just change the stats on that slot and re-run.

The BiS optimiser is a longer term goal and is most certainly not its initial focus. I trust this makes it easier to understand the goals?

Author of ShockAndAwe Enhancement Shaman max dps addon
Author of Rawr.Enhance an automated gear checking program that can generate config files for EnhSim.
Please use the EnhSim by Tukez, Sylvand & others to simulate what gear, priorities etc are the best dps.
FAQ: Hit cap 342 Draenei, 368 Horde, Expertise rating cap 140 with 3/3 Unleashed Rage. Cap those before worrying about other stats.
 
User is offline.
Reply With Quote
Old 07/13/09, 9:04 AM   #2245
 Raut
Tauren Marine
 
Raut's Avatar
 
Tauren Shaman
 
Draenor (EU)
Originally Posted by Nevets_69 View Post
I don't know that you can really say there are 10 viable choices for BiS for each item slot. At worst I would say there are 4-5, and in some cases BiS is quite obvious even with a wide range of EP values (which are admitedly flawed, but if you open the range up, they can definitely bracket "true" EP values).

I'd say a more realistic situation is one where you have 3 options for BiS in each of the 17 slots (personally I still feel this is quite conservative as I'm usually deciding between 2-3 in some slots, with some having clear winners). So 17 slots ^ 3 options per slot, gives only 4913 different combinations. A much more reasonable number, and while it would still take on the order of days to sim every combination, it's doable.

TLDR: A few simple assumptions, and well informed decisions about reasonable choices for best in slot items can make it a manageable problem.
You are assuming some form of deterministic mechanism to select you potential BiS list then? Will that be by look at what looks right and ilvl or something? I can guarantee your list will fall short a couple of items. How does [Pendant of Fiery Havoc] place itself in your list now? Given current EP values it's very high on my list and I wouldn't have considered it a potential BiS item.

Given the scenario above, I'm not disagreeing with you. You would have to select a subset of all gear to have any hope of completing a simulation. My point was that with EP you could easily cut most items from your list and concentrate on your potential BiS list. After simulating you repeat. After a few iterations you would have something the sim can't find suitable upgrades for.

Originally Posted by Levva View Post
Have you heard of Genetic Algorithms? These are computing techniques to solve problems where the number of possibilities are massive. I completely and utterly agree that taking even a couple of items per slot and attempting to work out every possible combo means that you could have hundreds of thousands of possible combos (especially if you are considering gems/enchants too which you'd have to do).

Running a sim for at least 10,000 hours sim time for every possible one of these hundreds of thousands of gear combos would take an unacceptable length of time. A Genetic Algorithm can be employed to short cut a lot of these combinations, by various possible methods it aims to hone in on the best solution with far far fewer runs of the sim. It might still take say 30-40 mins to do a BiS calc but it would at least give a result.

HOWEVER the initial aim of jEnhSim is to allow users to enter their gear setup and get a dps value in exactly the same manner as EnhSim. It will also be able to run and give you EP calcs so you won't actually lose anything. So I really really don't see what your problem is. Note also that Java apps will not run any noticeably slower than C++ due to JIT (just in time compilation), assuming of course you are running at least Java v6.

What we have been talking about making it easier to compare gear by having a side by side comparison option, you enter your gear and then say I want to compare this slot item. It will then run two different runs and show you the dps difference. We intend to make it much easier to compare two specific items. At present you need to convert stats to percentages and remember to add effects like AGI giving crit and AP and 30% SP. So changing AGI in current sim is a pain. In jEnhSim we aim to have stats per slot so you can just change the stats on that slot and re-run.

The BiS optimiser is a longer term goal and is most certainly not its initial focus. I trust this makes it easier to understand the goals?
I have heard of Genetic Algorithms. But the term alone isn't enough for me to understand how you are supposed to apply it.

As to "what my problem is"; This is the first time I've seen that there are plans to support some loot prediction in jEnhSim. So far I've been told that you are planning to "move away" from EP and that simulations of gear is much better. As no replacement system was mentioned I raised my concern. Plain comparing loot isn't viable so I hope you can see why I would be concerned. I haven't kept up with Java development for years and I have doubts about non-machine code running as fast as compiled machine code but I will take your word for it.

Having side by side comparison of slots like you describe above it a really nice feature and I have supported this from the beginning. My only concern was removing one of the two interesting variables from the current EnhSim, namely EP. Now I've been told jEnhSim will feature EP which is great. You are planning on a viable algorithm to replace EP and that's just superb. I'll join you in tossing EP on the deep end for something better the first chance we get.

Now that we're starting to understand eachother(or at least I am), care to explain in greater detail your plans for applying a generic algorithm or is there somewhere I can read your plans?

Baby, you can hold my balls.

13:17 < Kalroth> gays on men tv? I love that channel
 
User is offline.
Reply With Quote
Old 07/13/09, 9:40 AM   #2246
Malan
postcount++
 
Malan's Avatar
 
Malan
Tauren Shaman
 
No WoW Account
Originally Posted by Raut View Post
You'd need three "naked" runs with each of the current items taken off first. Then single upgrade runs for each of the three upgrades and finally a run with all three potential upgrades. That is if I correctly understand your goal of getting a DPS figure for each item.
Not what I had in mind. My plan was to support comparing set 1 vs set 2. The output would say something like "Set 1: 5000 dps. Set 2: 5050 DPS."

And when we say 'moving away from EP' we didn't mean removing it from the sim, just placing less emphasis on that and more emphasis on actually simulating the items that you want to use. (Which is really what people should be doing right now.)

Shitting up every single thread on EJ since '06
 
User is offline.
Reply With Quote
Old 07/13/09, 5:24 PM   #2247
Sylvand
Piston Honda
 
Draenei Shaman
 
Spirestone
I really don't get this "simming without X slot equipped" business. Calculating dps contribution for an item is just as meaningless as calculating its EP (I think this has been mentioned but the discussion continues). What we should care about is which is better between two (sets of) items. Of course, finding our best configuration involves many such comparisons, but we still shouldn't dally around with simming unequipped configs.

What's the site for enhsim source, and what's the distribution license on it? It seems like 3.2 changes shouldn't require any overhauls; accounting for new trinkets and set bonuses I guess should be it right? I certainly can't promise anything (let alone anything great) but if I have some time I might peek at it and see.
 
User is offline.
Reply With Quote
Old 07/13/09, 6:08 PM   #2248
Malan
postcount++
 
Malan's Avatar
 
Malan
Tauren Shaman
 
No WoW Account
enhsim.codeplex.com

One of the major issues is that tukez never provided the source for the gui, only the for the backend.

Originally Posted by Sylvand View Post
I really don't get this "simming without X slot equipped" business.
I don't either. I don't see how anything other than "what I have now" vs "what I plan to equip" is meaningful.

Last edited by Malan : 07/13/09 at 6:15 PM.

Shitting up every single thread on EJ since '06
 
User is offline.
Reply With Quote
Old 07/13/09, 7:53 PM   #2249
Levva
King Hippo
 
Levva's Avatar
 
Draenei Shaman
 
Khadgar (EU)
Originally Posted by Sylvand View Post
I really don't get this "simming without X slot equipped" business. Calculating dps contribution for an item is just as meaningless as calculating its EP (I think this has been mentioned but the discussion continues). What we should care about is which is better between two (sets of) items. Of course, finding our best configuration involves many such comparisons, but we still shouldn't dally around with simming unequipped configs.

What's the site for enhsim source, and what's the distribution license on it? It seems like 3.2 changes shouldn't require any overhauls; accounting for new trinkets and set bonuses I guess should be it right? I certainly can't promise anything (let alone anything great) but if I have some time I might peek at it and see.
PM me here Sylvand with your codeplex account name (you can set one up free) and I'll set you up with SVN access. I'm sure everyone really appreciates your offer of assistance.

Originally Posted by Raut View Post
You are assuming some form of deterministic mechanism to select you potential BiS list then?
My plan is that users can provide the sim with a list of possible gear they are interested in. This could be anything from what they want to compare in one slot as a possible upgrade to trying to build a 25 man hard mode BiS gearset from all known gear. The amount of gear users tell the sim to try to optimise will directly affect how many long it will take to get a solution. Emptying the wowhead database into the sim might give an answer next century. So users will need to be sensible however it should manage a few thousand options without too much trouble.


Originally Posted by Raut View Post
I have heard of Genetic Algorithms. But the term alone isn't enough for me to understand how you are supposed to apply it.

Now that we're starting to understand eachother(or at least I am), care to explain in greater detail your plans for applying a generic algorithm or is there somewhere I can read your plans?
Nothing much written up yet - other than this thread (perhaps we start a new one Malan?). A very good mate of mine has written Academic papers and given lectures on Genetic Algorithms and has agreed (aka had his arm twisted) to assist the design of the GA. Basically what you do is create a Chromosome search space (forgive me if I lose you at any point I might lose myself too as its rather new to me - also if anyone is studying GAs forgive me if I butcher your topic with my limited understanding). And you work out how good that set of Chromosomes are. There are different methodologies of doing this and the problem space has yet to be properly formulated. However its likely we will go for.

Head Slot
Shoulder Slot
...
Trinket two
Head Enchant
Shoulder Enchant
...
Ring two Enchant

as the parts of the Chromosome and each part will be filled with a value 1,2,3,..n where n is the number of options the user specified for that slot. If this is just 1 item the value of that part will always be 1 if there are more than one item (including variants on gemmings) then that part could be filled by a number up to n.

So the Chromosome representation is a string of numbers of a fixed length. (Head use item 1, shoulder use item 6, back use item 2 etc). This is effectively one possible combination of the players gear and will form an input to the sim. The sim will output a total dps value for that set of gear. Thus in a purely deterministic model you would work through each and every one of many many thousands of permutations to work out which set was best.

With a GA you take a small group of Chromosome representations and pick the best ones from the group discarding the rest. You then breed them (again lots of ways of doing this) attempting to pick the most attractive attributes (again lots of ways of achieving this) from each Chromosome. This produces a new Chromosome set which forms the next "generation" of possible solutions. The idea is that by "breeding" successful genes you hone in on the best result. You can also introduce random mutations of the genes with low probability with the idea of giving the process a nudge if its getting stuck on an invalid solution. The precise methods of selecting the breeding pairs, picking the attractive attributes and mutation parameters is part of the art of choosing a suitable GA methodology.

Basically what you do is start crude, and refine, so you might even start with a small time run of the sim eg: 1000 hrs and build up as it hones in on a solution until the final generation candidates could be running at 50k-100k hour sims to check exactly what the best was. The idea is that by trying possibles and discarding bad ones you hone in on what is best. Small example it could try swapping in a gem that had a lot of stamina instead of attackpower and it would rapidly realise that whenever it did those genes produced poorer offspring, so it would discard the weaker genes (solutions that used stamina gems) in favour of a survival of the fittest solution (ones that preferred attack power gems). Although every now and then it might have a mutation and have a crit gem instead which it would keep if it was better and discard if it wasn't. This actually works to very quickly with limited numbers of actual calculations to hone in on the solution. It is of course possibly that it gets stuck and doesn't find a solution but with careful design this possibility is minimised.

It all sounds terribly weird, however its how a huge amount of modern "solution builder" models work these days, from working out routes in SatNav systems, predicting the weather, financial forecasting models etc. There is a whole branch of Computer Science devoted to developing new GAs and methods of using them. My mate is deeply involved in this and as I say has written Academic papers on the subject. So I'll be guided by him in deciding what options might work.

We may also have in our midst some dedicated Computer Science students looking for a PhD Thesis project and this might just fit the bill as it has sufficient scope and possibility for original thought in the GA design. I'd be happy for any such individual to work on this as their PhD project.

However please understand that the implementation of a GA and an optimiser will be a stage of development only once the sim actually returns real results. As it would be impossible to construct a GA if you couldn't actually get any sim results in the first place.

Last edited by Levva : 07/13/09 at 8:35 PM.

Author of ShockAndAwe Enhancement Shaman max dps addon
Author of Rawr.Enhance an automated gear checking program that can generate config files for EnhSim.
Please use the EnhSim by Tukez, Sylvand & others to simulate what gear, priorities etc are the best dps.
FAQ: Hit cap 342 Draenei, 368 Horde, Expertise rating cap 140 with 3/3 Unleashed Rage. Cap those before worrying about other stats.
 
User is offline.
Reply With Quote
Old 07/14/09, 12:59 AM   #2250
dedmonwakeen
Great Tiger
 
Undead Priest
 
Llane
Originally Posted by Levva View Post
However please understand that the implementation of a GA and an optimiser will be a stage of development only once the sim actually returns real results. As it would be impossible to construct a GA if you couldn't actually get any sim results in the first place.
I wish I had considered EP-generation and gear-optimization from the start. SimulationCraft is by no means "slow", but there were many architectural decisions regarding performance and rng-vs-determinism I would revisit (or have already done so). Since I wanted to support all classes, I have sacrificed much on the altar of modularity and extensibility.

Regarding genetic algorithms: They are generally most-effective in situations where the evaluation is both semi-trivial and deterministic, while the solution space is ridiculously large. When you consider how gem choice can create many unique pieces, you definitely have the large search space even when you limit the initial gear choices. However, as fast as enhsim is....... I'm not sure if you will reach the runtime-accuracy trade-off that you need.

Some level of formal solution exists in Rawr for Enhancement Shaman, correct? Please consider baking this into your architecture from the beginning. I may be a "simulation guy", but I'm one who truly values the strengths of closed-form solutions. If your architecture can share a great deal of game mechanics between simulation and formulation, you will enable the use of multiple "solver" techniques. Yes, we can run our simulation with limited iterations, but when rolling down the gradients of your solution space, determinism is a very valuable attribute.

Good luck!

If you are interested in reducing variance at the cost of a little accuracy, I encourage you to check out: http://simulationcraft.googlecode.co...unk/sc_rng.cpp The use of roll-specific "smooth" RNG packages when performing EP-generation (not raw dps reporting) has been a HUGE runtime saver.

 
User is offline.
Reply With Quote
Reply

Go Back   Elitist Jerks > Public Discussion > Class Mechanics > Shamans

Thread Tools


Similar Threads
Thread Thread Starter Forum Replies Last Post
DPS Simulator Grim13 Warriors 133 11/12/08 8:20 AM
Teron Gorefiend Ghost Simulator Zugstab Public Discussion 31 01/16/08 8:14 PM
[Mage] DPS Simulator zurmagus Class Mechanics 41 11/08/07 10:11 PM
[Shaman] Experimental combat simulator draghkar Class Mechanics 182 08/30/07 5:33 AM