美文网首页
Latex写算法伪代码

Latex写算法伪代码

作者: Eden0503 | 来源:发表于2020-02-24 00:56 被阅读0次

    科研过程中利用Latex写文章是非常方便的一件事,下面是latex的一些写伪代码的代码。

    1. Code One

    \documentclass[conference]{IEEEtran}
    \usepackage{algorithm}
    \usepackage{algpseudocode}
    \usepackage{amsmath}
    \begin{document}
    %% 写算法伪代码或者流程的前期准备
    \renewcommand{\algorithmicrequire}{\textbf{Input:}}  % Use Input in the format of Algorithm
    \renewcommand{\algorithmicensure}{\textbf{Output:}} % Use Output in the format of Algorithm
    
    \begin{algorithm}[h]
      \caption{Conjugate Gradient Algorithm with Dynamic Step-Size Control} % 名称
      \label{alg::conjugateGradient}
      \begin{algorithmic}[1]
        \Require
          $x_0$: initial individual, i.e, state;
          $x_0$: initial solution;
          $s$: step size;
        \Ensure
          optimal $x^{*}$
        \State initial $g_0=0$ and $d_0=0$;
        \Repeat
          \State compute gradient directions $g_k=\bigtriangledown f(x_k)$;
          \State compute Polak-Ribiere parameter $\beta_k=\frac{g_k^{T}(g_k-g_{k-1})}{\parallel g_{k-1} \parallel^{2}}$;
          \State compute the conjugate directions $d_k=-g_k+\beta_k d_{k-1}$;
          \State compute the step size $\alpha_k=s/\parallel d_k \parallel_{2}$;
        \Until{($f(x_k)>f(x_{k-1})$)}
      \end{algorithmic}
    \end{algorithm}
    \end{document}
    

    Result One

    result One.png

    2. Code Two

    \documentclass[conference]{IEEEtran}
    \usepackage{algorithm}
    \usepackage{algorithm}
    \usepackage{algorithmicx}
    \usepackage{algpseudocode}
    \usepackage{amsmath}
    \usepackage[top=2cm, bottom=2cm, left=2cm, right=2cm]{geometry}
    \begin{document}
    
    %% 写算法伪代码或者流程的前期准备
    \renewcommand{\algorithmicrequire}{\textbf{Input:}}  % Use Input in the format of Algorithm
    \renewcommand{\algorithmicensure}{\textbf{Output:}} % Use Output in the format of Algorithm
    
    \begin{algorithm}[h]
      \caption{Pseudocode of Simulated Annealing Algorithm} % 名称
      \begin{algorithmic}[1]
        \Require
          $x_0$: initial individual or state;
          $T_0$: a high enough initial temperature;
          $T_{min}$: the lowest limit of temperature;
        \Ensure
           optimal state or approximate optimal state;
           \State set $x_0 = x_{best}$, compute initial energy function $E(x_0)$;
           \While {$T > T_{min}$}
             \For{$i = 1$; $i<n$; $i++$ }
          \State perturb current state $x_i$ for a new state $x_{new}$ and compute energy function $E(x_{new})$;
          \State compute $\Delta$ = $E(x_{new}-E(x_{(i)})$;
          \If {$\Delta$$E<0$} \State $x_{best} = x_{new}$
          \Else \State the probability $P = exp(-dE/T_{(i)})$;
          \If {$rand(0,1) < P$ }\State $x_{best} = x_{new}$
          \Else \State $x_{best} = x_{best}$
          \EndIf
         \EndIf
         \EndFor
          \State $T = T * $ $ \alpha$, where $\alpha$ is decay factor  ;
        \EndWhile
      \end{algorithmic}
    \end{algorithm}
    
    \end{document}
    
    

    Result Two

    Result Two.png

    相关文章

      网友评论

          本文标题:Latex写算法伪代码

          本文链接:https://www.haomeiwen.com/subject/vxhawqtx.html