Я не уверен, должен ли этот вопрос идти в stackoverflow или cs.stackexchange.com, поэтому, пожалуйста, дайте мне знать, если я его переведу.Какова временная сложность поиска дерева Монте-Карло?
Я пытаюсь найти временную сложность поиска по дереву Монте-Карло (MCTS). Googling не помогает, поэтому я пытаюсь понять, как далеко я сам рассчитываю.
Он выполняет четыре шага для n
итераций или до истечения времени. Таким образом, мы будем иметь
O (N * (выбор + расширение + моделирование + обратное распространение))
Расширение просто добавляет ребенок к выбранному узлу. Предполагая, что вы не используете односвязан список или что-то подобное для хранения дерева детей, это может произойти в постоянное время, так что мы можем исключить его:
O (N * (выбор + моделирование + обратное распространение))
Учитывая коэффициент ветвления b
и t
общего числа узлов в дереве, я предполагая, что фазовый выбор трассы в O (б * войти б т), потому что глубина дерева журнал b t, и на каждой глубине мы переходим через b детей.
Таким образом, наша временная сложность становится
О (п * (б * войти б T + моделирование + обратное распространение))
обратного распространение занимает время, пропорциональное глубине дерева как хорошо, так что становится:
О (п * (б * войти б T + моделирование + Ь * войти b t))
Но теперь я не уверен, как добавить фазу моделирования к этому.
Да, это больше 'cs' вопрос. Это не фактическое программирование, это CS/математическая теория. –