L i$ddlmZddlmZddlmZddlmZddlZddlZddlZddl Z ddl Z ddl Z ddl m Z ddlZddlZddlmZddlmZdd lmZdd lmZdd lmZdd lmZdd lmZddlmZe r$ddlmZddlmZddlm Z ddlm!Z!ddl m"Z"ddlm#Z#ejHe%Z& d ddZ' ddZ( ddZ) d ddZ*y)) annotations)FIRST_COMPLETED)ThreadPoolExecutor)waitN) TYPE_CHECKING) exceptions)logging) progress_bar)ExperimentalWarning)get_heartbeat_thread)is_heartbeat_enabled)_tell_with_warning) TrialState)Callable)Iterable)Sequence)Future)Any) FrozenTrialc nt|ts-tdjt |j |j jr td|r |||dk7rtjdd}tj|||} d|_ |dk(rt|||||||dd|  n'|dk(rtj xsd}t"j"j%} t'} t)|5} t+j,D]} |jrn|4t"j"j%| z j/|kDrnr|| |k\rnit1| |k\r+t3| t4 \}} |D]}|j7| j9| j;t||d||||d | | dddd|j _| j=y#1swY+xYw#d|j _| j=wxYw) Nz7The catch argument is of type '{}' but must be a tuple.z;Nested invocation of `Study.optimize` method isn't allowed.zAThe timeout-based progress bar is not supported with n_jobs != 1.F)reseed_sampler_rng time_startr ) max_workers) return_whenT) isinstancetuple TypeErrorformattype__name__ _thread_localin_optimize_loop RuntimeErrorwarningswarn pbar_module _ProgressBar _stop_flag_optimize_sequentialos cpu_countdatetimenowsetr itertoolscount total_secondslenrrresultaddsubmitclose)studyfuncn_trialstimeoutn_jobscatch callbacksgc_after_trialshow_progress_barr rfuturesexecutorn_submitted_trials completedfs \/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/optuna/study/_optimize.py _optimizerH&s+ eU # E L LTRW[MaMa b   ++XYYX-'2E&TU+ YZ!++,=xQLE: Q; #() |,1!**..0J#&5G#7" 8*3//*;!&'' +%..224zAPPRU\\+0Bh0N7|v--1'-W* 7!*'AHHJ'KK 0! #!%* &( '!" H05,K" " H05,s& A-H CHHH H#H4c d|j_|r|jjd} |tjj } |j rn| | |k\rn| dz } |5tjj |z j} | |k\rn t|||} |rtj |>|jj| } |D]}||tj|  | Atjj |z j} | j| ||jj!y#|rtjwwxYw)NTrr)r#r$sampler reseed_rngr.r/r*r3 _run_trialgccollect_storage get_trialcopydeepcopyupdateremove_session)r9r:r;r<r>r?r@rrr i_trialelapsed_secondsfrozen_trial_id frozen_trialcallbacks rGr+r+~sd,0E(   "G&&**,       (" qLG  '00446CRRTO') (e>33ODL% = l ;< =  #'00446CRRTO    7? B NN!!# s # E&&E?c t|jrVtj5tjdt t jj|ddd|j}d}d}d}d}t|j|j5 ||}ddd t+||||d\} } } | tj2k(r,| J|j5| |j6|j8n| tjk(r9t:j=dj?|j6tA|nw| tj$k(r]|.tC|j6|j8tE|||n4| $tC|j6|j8| |nJdJd| tj$k(r|tG||s||jS#1swYxYw#tj$r}tj}|}Yd}~d}~wt t"f$r1}tj$}|}t'j(}Yd}~d}~wwxYw#1swYxYw#t $rA|jj-|j} | j.} | j0} d} wxYw# tj2k(r, J|j5| |j6|j8w| tjk(r9t:j=dj?|j6tA|w| tj$k(r]|.tC|j6|j8tE|||w $tC|j6|j8| |wJdJdxYw)NignoreT)r9trialvalue_or_valuesstatesuppress_warningzTrial {} pruned. {})exc_infor])r]zShould not reach.)$r rOr&catch_warnings simplefilterr optunastoragesfail_stale_trialsaskr _trial_idr TrialPrunedrPRUNED ExceptionKeyboardInterruptFAILsysr`rrPr^valuesCOMPLETE_log_completed_trialnumberparams_loggerinfor str_log_failed_trialreprr) r9r:r>r\r^r]func_errfunc_err_fail_exc_infoe updated_staternwarning_messagerXs rGrLrLsC ENN+  $ $ & 5  ! !(,? @ OO - -e 4 5 IIKE#E6:O59H)- eoou~~ > 4 4"5kO 4'.1C+! 2 . v J// /% %%  & &vu||U\\ J j// / LL.55ellCMR S joo -#!LLLLN3$3 !,!LLLL#$3 211u -- -5 (  8U+ ??Q 5 5%% %%EH,- 4OOEH%(\\^ " 4 4 4* ~~//@ $** $$  J// /% %%  & &vu||U\\ J j// / LL.55ellCMR S joo -#!LLLLN3$3 !,!LLLL#$3 211u -- -5sg:G=$I;&H 7J=H I8H5/I;5I8&I3-I;3I88I;;JA KKDOctjdj||||tjdj|t|y)NzGTrial {} failed with parameters: {} because of the following error: {}.)r`zTrial {} failed with value {}.)rswarningr rw) trial_number trial_paramsmessager`r]s rGrvrv sP OOQXX ,   OO4;;L$J_`a)NNrNFF)r9'optuna.Study'r:&'optuna.study.study.ObjectiveFuncType'r; int | Noner< float | Noner=intr>tuple[type[Exception], ...]r?>Iterable[Callable[['optuna.Study', FrozenTrial], None]] | Noner@boolrArreturnNone)r9rr:rr;rr<rr>rr?rr@rrrrzdatetime.datetime | Noner zpbar_module._ProgressBar | Nonerr)r9rr:rr>rrr)NN) rrrzdict[str, Any]rz str | Warningr`rr]rrr)+ __future__rconcurrent.futuresrrrrQr.rMr1r,rmtypingrr&rcrr r r(optuna.exceptionsr optuna.storages._heartbeatr r optuna.study._tellr optuna.trialrcollections.abcrrrrrr get_loggerr"rsrHr+rLrvrrrGrs".1#    .1;;1#((()( '  X &   )+PT #U U 0UU U  U ' UNUUU Up8$ 8$ 08$8$ 8$ ' 8$ N 8$8$8$)8$28$ 8$vN N 0N 'N Nj bb bb b  b  br