МетодМонте-Карловгейм-дизайне

Ктотрядяназвал“Ключ”,потомучтоэтоотправнаяточканашейсимуляции。 Отталкиваясьотнегомыбудемсоздаватьнашутысячумоделей。 Иестьтрипути…

ПутьЭкселя
在Excel中使用Прощевсегосделать。

Выбирайтевсювашуключевуюстроку,включаяячейкусословом“Ключ”,итянитерамкувниздосамого。 Витогеувасбудетвыбрано1000строкинесколькостолбцов。 数据->假设分析->数据表。 Впоявившемсяокнеоставляйте行输入单元格пустым,для列输入单元格выберителюбуюпустуюячейку,невходящуювну。

ЖмитеОК,откидывайтесьнаспинкукреслаипозвольтеЭкселюсотворитьвсюмагиюзавас。 Онпрогонитнашумодельтысячуразизапишетвсёвтабличку。

ПутьГуглодоков
支撑自己。 Тутвуебудетнемногосложнее。

  1. БеремформулуистолбцаDизаменяемC2наключ(F17:F1016)。

2.Таккакунаснет21рецепта,намнужноитеративнопрогонятьвсёпо20,最接近20的时间

  (KEY-20 *(ROUNDDOWN(KEY / 20)))+ 1 

Например,приключе= 62:

  (62-20 *(ROUNDDOWN(62/20)))+ 1 = 3 

3.Вставляемэтуформулувместо(F17:F1016)иполучаем:

  Vlookup(Small($ A:$ A,((($ F17:$ F1016)-20 *(ROUNDDOWN($ F17:$ F1016 / 20)))+ 1),$ A:$ B,2,0) 

4.БеремформулупоискаизG8ивместопоисковогозначениявставляемрезультатиз3пункта。

5.依次添加(3,4,5,2)的Важнопрописатьнадстолбцамицифрыпоискавттаблице。

Послеэтоговставляемссылкунаэтуцифрувмасто3,4,5,2внашейформуле。 Получаем:

  Vlookup(Vlookup(Small($ A:$ A,((($ F17:$ F1016)-20 *(ROUNDDOWN($ F17:$ F1016 / 20)))+ 1),$ A:$ B,2,0) ,Sheet2!$ A $ 3:$ E $ 22,G $ 14,0) 

6.Складываемресурсы3рецептовпонашейформуле:

  Vlookup(Vlookup(Small($ A:$ A,((($ F17:$ F1016)-20 *(ROUNDDOWN($ F17:$ F1016 / 20)))+ 1),$ A:$ B,2,0) ,Sheet2!$ A $ 3:$ E $ 22,G $ 14,0)+ Vlookup(Vlookup(Small($ A:$ A,((($ F17:$ F1016)-20)*(ROUNDDOWN($ F17:$ F1016 / 20 )))+ 1),$ A:$ B,2,0),Sheet2!$ A $ 3:$ E $ 22,G $ 14,0)+ Vlookup(Vlookup(Small($ A:$ A,(($ F17 :$ F1016)-20 *(ROUNDDOWN($ F17:$ F1016 / 20))+ 1),$ A:$ B,2,0),Sheet2!$ A $ 3:$ E $ 22,G $ 14,0) 

7. ARRAYFORMULA上的Обёртываемэто,从$ F17:$ F1016到посчитаетзначениядлявсехключойвавтома。

8.Копируемвсёпогоризонтали,незабываяпроставить$тамгденадо,чтобыничегонесевигалось。

9.ВыдыхаемиблагодаримЛаретиана,чтовсёзакончилось。

Путьскрипта
Достаточнопростойспособдлятех,ктонебоитсянабить(скопипастить)десятокстроквредакторескр。

  1. 历史记录历史上的历史:

2.Открываем脚本编辑器ипишемтудатакойвотпростенькийскрипт:

 函数recordHistory(){ 
  var activeSS = SpreadsheetApp.getActiveSpreadsheet(); 
  var sheet = activeSS.getSheetByName(“ History”); 
  var source = sheet.getRange(“ $ A $ 2:$ W $ 2”); 
  var values = source.getValues(); 
  var i = 0; 

 而(i <1000){ 
  i ++; 
 值[0] [0] = i; 
  sheet.appendRow(values [0]); 
 值= source.getValues(); 
  } 
  }; 

PSЯнеточтобытруъ-мастерскриптов,этотпростоработает。 Еслиукого-топоявятсязамечанияикомментариипоегоулучшению-велкам。

3.Запускаемегоинаслаждаемсямассивомданных:

Обработкарезультатов

Дисклеймер:есливыпонятиянеимеете,чтозначатвсеэтициферкивконцевашетототу

Присозданииматематическоймоделиигрывыдолжнычеткоосознавать,какихрезультатоввыхотите。 Какойдолженбытьбалансресурсов,какмногоочковбудетнеобходимоигрокудляпобеды,итакдал。

Есливсельвеснениеобалансе, Азатемпоправитьбалансвнужнуюсторону。

Итак,теперьвнашейвыборкеажтысячаначальныхраздач。 Посмотримнакомпонентынашейигры: