ó
    †ñ:i+  ã                  óX   • S SK Jr  S SKrS SKrS SKrSSKJrJr  SSKJ	r	   " S S5      r
g)	é    )ÚannotationsNé   )ÚConvergenceErrorÚInvalidActioné   )ÚActionc                  ó,   • \ rS rSrSS jrSS.S jrSrg)	ÚActionOptimizeré   c           	     óx  • Xl         [        R                  " S5        / U l        U GH  n[	        U[
        5      (       aS  [        U R                  5      Ul        SUl        U R                  R                  [        R                  " U5      /5        Ml  [	        U[        5      (       a‚  [        U Vs/ s H  n[        R                  " U5      PM     snS S9n[        U5       H%  u  pT[        U R                  5      Ul        XTl        M'     U R                  R                  U5        GM  [        S5      e   g s  snf )NzSNote that ActionOptimizer is still in an alpha state and is subject to API changes.r   c                ó   • U R                   $ )N)Úcost)Úas    ÚZ/srv/projetos/modelo_ml_acdoc/venv/lib/python3.13/site-packages/shap/actions/_optimizer.pyÚ<lambda>Ú*ActionOptimizer.__init__.<locals>.<lambda>   s   € ÈAÏFÊFó    )Úkeyz5A passed action was not an Action or list of actions!)ÚmodelÚwarningsÚwarnÚaction_groupsÚ
isinstancer   ÚlenÚ_group_indexÚ_grouped_indexÚappendÚcopyÚlistÚsortedÚ	enumerater   )Úselfr   ÚactionsÚgroupÚvÚis         r   Ú__init__ÚActionOptimizer.__init__   sï   € ØŒ
Ü�ŠÐkÔlà13ˆÔÜˆEÜ˜%¤×(Ñ(Ü%(¨×);Ñ);Ó%<�Ô"Ø'(�Ô$Ø×"Ñ"×)Ñ)¬4¯9ª9°UÓ+;Ð*<Ö=Ü˜E¤4×(Ñ(Ü±eÓ<²e°¤§	¢	¨!¦±eÑ<ÑBRÑS�Ü% eÖ,‘D�AÜ%(¨×);Ñ);Ó%<�A”NØ'(Ö$ñ -ð ×"Ñ"×)Ñ)¨%×0ä#Ð$[Ó\Ð\ò ùò  =s   Â0 D7
i'  )Ú	max_evalsc          	     ó¶  • [         R                  " 5       nU R                   H'  nUR                  US   R                  US   /45        M)     SnUR                  5       (       Gdp  US-  nXQ:”  a  [        SU S35      eUR                  5       u  pg[        R                  " U5      nU H  n	U	" U6   M
     U R                  " U6 n
U
(       a  U$ [        [        U R                  5      5       HÎ  nU R                  U   nSnSn[        U5       H1  u  péU	R                  U:X  d  M  [        XÉR                   S-   5      nUnM3     US:X  a	  XtU   /-   nO.U[        U5      :  a  [        R                  " U5      nXL   Xý'   OS nUc  M˜  UR                  [#        U V	s/ s H  o™R                  PM     sn	5      U45        MÐ     UR                  5       (       d  GMo  g g s  sn	f )Nr   r   z)Failed to find a solution with max_evals=z=! Try reducing the number of actions or increasing max_evals.éÿÿÿÿ)ÚqueueÚPriorityQueuer   Úputr   Úemptyr   Úgetr   Údeepcopyr   Úranger   r!   r   Úmaxr   Úsum)r"   r)   ÚargsÚqr$   Únevalsr   r#   Úargs_tmpr   r%   r&   Únext_indÚprev_in_groupÚjÚnew_actionss                   r   Ú__call__ÚActionOptimizer.__call__   s¿  € ä=B×=PÒ=PÓ=RˆØ×'Ô'ˆEØ�E‰E�5˜‘8—=‘= 5¨¡8 *Ð-Ö.ñ (ð ˆØ—'‘'—)’)à�a‰KˆFØÓ!Ü&Ø?À	¸{ð  KHð  Ióð ð
 ŸE™E›G‰MˆDô —}’} TÓ*ˆHÛ�Ù�8“ñ ð —
’
˜HÐ%ˆAÞØ�ô œs 4×#5Ñ#5Ó6Ö7�AØ ×.Ñ.¨qÑ1�Eð  !�HØ$&�MÜ )¨'Ö 2™˜ØŸ>™>¨QÕ.Ü'*¨8×5EÑ5EÈÑ5IÓ'J˜HØ,-šMñ !3ð %¨Ó*Ø&-°x±Ð0AÑ&A™à!¤C¨£JÓ.Ü&*§i¢i°Ó&8˜Ø5:±_˜Ò2ð '+˜ð #Ó.ØŸ™œs±KÓ#@²K¨q§F¤F±KÑ#@ÓAÀ;ÐOÖPñ3 8ð/ —'‘'—)–)ùò` $As   ÆG)r   r   N)r#   zlist[Action | list[Action]])Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r'   r=   Ú__static_attributes__© r   r   r
   r
      s   † ô]ð& ).÷ 7Qð 7Qr   r
   )Ú
__future__r   r   r,   r   Úutils._exceptionsr   r   Ú_actionr   r
   rD   r   r   Ú<module>rH      s%   ðÝ "ã Û Û ç ?Ý ÷KQò KQr   