Pages:
Author

Topic: DIANNA: IANA Decentralized концепт дизайн - page 2. (Read 31411 times)

jr. member
Activity: 42
Merit: 1000
На спросе с экспонентой ?

А на чем будешь кодить на Яве ?

Надумал такое -- с учетом будущего роста курса биткойна

если домен будет продаваться по 0.05 BTC, а себестоимость
обслуживания за время TTL не превысит 0.01 BTC
то майнер/оператор ноды получит прибыль 400 %
и будет готов на что угодно ради сохранения системы

и это честный бизнес в глазах обывателя -- ни наркоты , ни оружия  Cool
Круто
то есть если цена домена в 5 копеек превысит его себестоимость обслуживания
то она абсолютно нормальна
jr. member
Activity: 42
Merit: 1000
Ок. Что дальше думаешь делать ?
jr. member
Activity: 42
Merit: 1000
я потом разобрался насчет "10 --> 2" , только коммент забыл снести

ну если TTL = год, то блок раз в неделю это плохо , но может быть терпимо
Другое дело что может быть такая атака ( с целью уничтожения сети
а не получения прибыли)
 -- замедлить сеть насколько возможно, чтобы был блок скажем раз в месяц
и если блоки будут редко идти мне кажется их будет сложнее майнить

лучше уж пусть они идут не реже раза в сутки -- в самом худшем случае
но как это гарантировать ?!
------------------------------------------------------------------------------------------------
и ты испортил время в эмуляторе Smiley
надеюсь что правильно

я попробовал увеличить last до 900000 => time показывает увеличение времени расчета
в 4.16 раз ( а не в 9 )
в середине прогона вывод инфы куда-то исчезает, но скрипт завершается "нормально"

Глюк или баг ?
jr. member
Activity: 42
Merit: 1000
@pent
меня зовут эмулятор "emu"   Grin  Undecided

лежит там же -- посмотри то ли я сделал чего ты хотел

мне результаты работы нравятся -- интересно выдержит ли оно
еще более крутой рост спроса
jr. member
Activity: 42
Merit: 1000
У меня после подстановок получается :
NumTrans = 10*sqrt(5*num_block)*(2**(2*(1-price/base_price)))
Правильно ?
jr. member
Activity: 42
Merit: 1000
Ок. попробую -- ты потом поправишь , если что  Smiley
может я сделаю в 2 этапа для облегчения задачи

Quote
Но майнеры не могут принять прям все транзакции. Надо будет добавлять это количество транзакций в некий буфер ожидания. А из него по одной в блок и считать вероятность его появления по вышеуказанной формуле. Вероятность свершилась - вышел блок.
а как ограничены возможности майнеров -- мин/макс. число возм. транз за блок или несколько блоков
-- может проще просто задавать псевдослучайные числа допустимых транзакций/блок ?
jr. member
Activity: 42
Merit: 1000
пыточный скрипт -->  "real3" -- выложен там же
в нем все как у тебя + средние значения + плюс садистские условия сети

прогон : 300000 блоков
нач. цена = 3 BTC

Code:
     Min price = 0.808690266913

      Max price = 3.05240708757

      Average price = 2.11268792701

==========================

      Minimal time between blocks = 230.0

      Max time b/b = 2599

      Average time b/b = 918.936249787

Те же параметры но 900000 блоков => результат похожий

jr. member
Activity: 42
Merit: 1000
Ок.
Я думаю ты прав -- но еще немного помучаю скрипты на всякий случай Grin
и выложу результаты в пастебин
--------------------------------------
про другое -- у тебя будут домены только латиницей или ты планируешь
 поддерживать и что-то типа IDN
http://ru.wikipedia.org/wiki/IDN
ну может как-то по-другому это сделать
просто чтобы домены были возможны на почти любом языке

jr. member
Activity: 42
Merit: 1000
Так ты хочешь для ВСЕХ неймспейсов сделать одинаковый TTL или для каждого свой ?

Но для тестов мы пока используем как бы один неймспейс
То есть TTL примерно один год в обычном выражении, так ?
Я то хочу взять цену исходя из доходов в $  Grin

И сделать прогоны с разной нач ценой , скажем 5$/год , 10$/год и 15$/год
jr. member
Activity: 42
Merit: 1000
Ок. Спасибо за комментарии  и исправление моих ошибок Smiley
Щас переделаю на более жесткие условия сети
намоделирую перемежающиеся участки ускорения и замедления

если в таких условиях цена удержится в рамках приличий
значит ты победил и формула цены готова

Люблю допросы с пристрастием  Smiley

Первый блок -- время я беру от балды а что еще с ним не так ?

Моя идея была ипытать формулу цены на более жестких
чем нормальные условиях сети

поскольку теперь не осталось ничего кроме timestamp и номера блока
то я просто взялся изменять интервал между блоками

наличие других обратных связей -- спрос и прочее -- я понимаю
и не берусь пока учитывать -- думаю это лучше делать на реальной
сети

Какой ты планируешь сделать TTL домена ?
Хочу подставить в скрипт более менее реальные цены
а без TTL -- трудно определиться с выбором

jr. member
Activity: 42
Merit: 1000
новая ( № 13 ) версия реального скрипта --> "real"

выдает такие результаты на 999999 блоках :
Code:
     Min price = 0.42

      Max price = 3.36

      Average price = 0.781354019746

=========================

      Minimal time between blocks = 110.0

      Max time b/b = 969.0

      Average time b/b = 679.533638067

UPD: в другом тесте с замедляющейся сетью макс. цена == 1.68
но в целом результаты очень похожи

UPD 2: если принять magic = 3311111 , то макс. цена < 1.30 в обоих тестах
jr. member
Activity: 42
Merit: 1000
Ага, понятно
новый скрипт выложил там же -- называется "tru"

если я правильно все закодировал
то при случайно-равномерной частоте блоков в сети дианы цена равна нулю

еще там деление на ноль => добавил 333 в знаменатель -- не помагает ничему

замена умножения на сложение приводит к плавному росту цены в облака
т.е. вместо NewPrice = OldPrice * K

написать : NewPrice = OldPrice + K

UPD: комбинированный вариант --> "tru2" показывает знач. лучшие результаты
jr. member
Activity: 42
Merit: 1000
ОК, Ок  Smiley Smiley
Сделаю расчет по новому методу

У тебя в вики написано :
Code:
price - Price of Domain Transaction Fee in current block, in Bitcoins (int64), per kilobyte of value size of Domain Transaction
Huh
это в блоке цена храниться в пересчете на килобайт данных
а по формулам считается цена ЗА 1 доменную операцию, так ?
jr. member
Activity: 42
Merit: 1000
Время в блоках -- это разумно
Дык я и не шучу -- не стоит беспокоится слишком много о курсе к $
через пару лет в Америке все равно дефолт будет

завтра понастраиваю свою беду
может у тебя еще какие варианты формулы цены есть ?
я бы их заодно попробовал
jr. member
Activity: 42
Merit: 1000
Это конечно не настоящие системы -- а только предварительный тест

настоящая проверка будет когда реальная диана будет взаимодействовать
с реальным биткойном
мне моя приблуда нравиться тем что в ней можно загнать
трудность биткойна высоко с прицелом
на ASIC/FPGA -- в реальной сети такие тесты сейчас невозможны

а так можно подобрать формулу цены на будущее -- с заделом

у меня пока цена дианы растет ОЧЕНЬ сильно и не желает балансировать обратно
конечно у меня там что то криво -- посмотрим что я смогу сделать

"биткойнова" цепь работает почти как настоящая
мне больше не нравятся проблемы с "дианой"
--------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------
трудность "биткойна" я могу сделать плоской легко на любом таймфрейме

и пора начинать считать цены в биткойнах а время в блоках -- леший с ними с долларами  Smiley



jr. member
Activity: 42
Merit: 1000
@pent
Выложил монстра на https://bitbucket.org/ukigo/diatest

чего-то я там таки перемудрил - погляди пож. свежим глазом
по-моему мой ретаргетинг -- не совсем сатошин алгоритм
хоть я сперва и сделал кальку с его клиента и libbitcoin

в сатошином клиенте так ( main.cpp GetNextWorkRequired(...) ):
Code:
// Go back by what we want to be 14 days worth of blocks
    const CBlockIndex* pindexFirst = pindexLast;
    for (int i = 0; pindexFirst && i < nInterval-1; i++)
        pindexFirst = pindexFirst->pprev;
    assert(pindexFirst);

    // Limit adjustment step
    int64 nActualTimespan = pindexLast->GetBlockTime() - pindexFirst->GetBlockTime();
    printf("  nActualTimespan = %"PRI64d"  before bounds\n", nActualTimespan);

я заменил этот кусок у себя на :

Code:
def bit_actual_ts(d):

    if d < 2014:
        return 1209600
    btimes = []
    for m in range(d-2015, d):
        btimes.append(bittimes[m])
#    print "bit_ac_ts =", max(btimes)-min(btimes)
    return int(max(btimes)-min(btimes))
Но это по-моему не совсем одно и тоже ((

моя псевдо-диана -- отдельная песня -- там то же что-то не того

там 2 скрипта : "dia" <-- полный прогон обоих цепочек
в 2 прохода сначала биткойн потом диана ( примерно так )
"bit" <-- точно такой же только 2-й проход отключен
и дианы соотв. нету -- удобно для настройки битчейна.

алго пересчета цены дианы не совсем твой на Ы )
твой у меня вязнет где-то посредине пути -- буду думать чего я не так делаю

тем не менее оно чего-то похожее на правду выдает )
jr. member
Activity: 42
Merit: 1000
Ок. упростим задачу  Smiley

я считаю  в таргетах сначала
трудность  у меня получается ИЗ таргета и использую я ее
в основном чтобы человеку было понятнее правильно ли сценарий работает

Прорвусь через вторую цепочку -- выложу полноценный вариант на bitbucket
-- сможешь сам его помучить
jr. member
Activity: 42
Merit: 1000
Ага, я могу написать похожую функцию как для биткойновой цепочки
и заменить в ней трудность биткойна на трудность дианы по твоим формулам
но мощность то в сети дианы =/= мощности в сети биткойна,
не пойму что с этим делать
jr. member
Activity: 42
Merit: 1000
это даже проще для меня  Smiley

А как тогда выразить среднее ожидаемое время нахождения блока дианы в секундах ?

среднее время нахождения блока биткойна я считаю у себя так :
  time = difficulty * 2**32 / hashrate*10**9
то есть трудность и хэшрейт относятся к предыдущему блоку, а время исп. уже для текущего

jr. member
Activity: 42
Merit: 1000
Я пока думаю как переделать свою тестчейн на 2 связанные цепочки
 с наменьшими усилиями.

Мой псевдобиткойн очень быстро проходит 776000 блоков
я моделирую изменения хешир. мощности в сети и они
меняют трудность в пределах от 1 до 1миллиарда с копейками
с переменной скоростью

я планирую сделать нечто подобное с псевдодианой -- изменяя количество
доменов и трудность дианы

то есть проверить расчеты на более широких и экстремальных
наборах данных , чем может дать реальный неймкоин и биткойн
Pages:
Jump to: