This file is indexed.

/usr/share/doc/libevocosm-dev/html/a00013.html is in libevocosm-dev 4.0.2-3.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>Evocosm</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body bgcolor="#ffffff">
<h1 align="center" color="#606080">
Evocosm - A C++ Framework for Evolutionary Computing
</h1>
<h2 align="center"><a href="index.html">Main Index</a></h2>
<p align="center">
Created by <a href="mailto:scott.ladd@@coyotegulch.com?subject=libevocosm">Scott Robert Ladd</a> at
<a href="http://www.coyotegulch.com">Coyote Gulch Productions</a>.
</p>
<hr>
<!-- Generated by Doxygen 1.8.1.1 -->
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="a00060.html">libevocosm</a></li><li class="navelem"><a class="el" href="a00013.html">function_optimizer</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a>  </div>
  <div class="headertitle">
<div class="title">libevocosm::function_optimizer Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>A generic function optimizer.  
 <a href="a00013.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="a00045_source.html">function_optimizer.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for libevocosm::function_optimizer:</div>
<div class="dyncontent">
 <div class="center">
  <img src="a00013.png" usemap="#libevocosm::function_optimizer_map" alt=""/>
  <map id="libevocosm::function_optimizer_map" name="libevocosm::function_optimizer_map">
<area href="a00008.html" title="Global things used by all optimizer classes." alt="libevocosm::fopt_global" shape="rect" coords="0,112,268,136"/>
<area href="a00011.html" title="An listener implementation that ignores all events." alt="libevocosm::function_listener" shape="rect" coords="278,112,546,136"/>
<area href="a00024.html" alt="libevocosm::null_listener&lt; function_solution &gt;" shape="rect" coords="278,56,546,80"/>
<area href="a00020.html" alt="libevocosm::listener&lt; function_solution &gt;" shape="rect" coords="278,0,546,24"/>
</map>
 </div></div>

<p><a href="a00074.html">List of all members.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:aaf2a00184c81c313153526d44be6d3dc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00013.html#aaf2a00184c81c313153526d44be6d3dc">function_optimizer</a> (<a class="el" href="a00008.html#a577368cdfb8c76c2b442abbed1589d15">t_function</a> *a_function, size_t a_nargs, double a_minarg, double a_maxarg, size_t a_norgs, double a_mutation_rate, size_t a_iterations)</td></tr>
<tr class="memdesc:aaf2a00184c81c313153526d44be6d3dc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="#aaf2a00184c81c313153526d44be6d3dc"></a><br/></td></tr>
<tr class="memitem:a3551b33460257d374deb514eae2a9fe8"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00013.html#a3551b33460257d374deb514eae2a9fe8">~function_optimizer</a> ()</td></tr>
<tr class="memdesc:a3551b33460257d374deb514eae2a9fe8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="#a3551b33460257d374deb514eae2a9fe8"></a><br/></td></tr>
<tr class="memitem:a3b5e1e222e5410a2cb010bc26ebbba66"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00013.html#a3b5e1e222e5410a2cb010bc26ebbba66">run</a> ()</td></tr>
<tr class="memdesc:a3b5e1e222e5410a2cb010bc26ebbba66"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs optimization.  <a href="#a3b5e1e222e5410a2cb010bc26ebbba66"></a><br/></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_methods_a00011"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_a00011')"><img src="closed.png" alt="-"/>&nbsp;Protected Member Functions inherited from <a class="el" href="a00011.html">libevocosm::function_listener</a></td></tr>
<tr class="memitem:ac75737caa2fb3536d92982a0dd4d8bb4 inherit pub_methods_a00011"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#ac75737caa2fb3536d92982a0dd4d8bb4">ping_generation_begin</a> (size_t a_iteration)</td></tr>
<tr class="memdesc:ac75737caa2fb3536d92982a0dd4d8bb4 inherit pub_methods_a00011"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ping that a generation begins.  <a href="#ac75737caa2fb3536d92982a0dd4d8bb4"></a><br/></td></tr>
<tr class="memitem:a88f50a547190eab155bc75da9cc7bfd2 inherit pub_methods_a00011"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#a88f50a547190eab155bc75da9cc7bfd2">ping_generation_end</a> (const vector&lt; <a class="el" href="a00015.html">function_solution</a> &gt; &amp;a_population, size_t a_iteration)</td></tr>
<tr class="memdesc:a88f50a547190eab155bc75da9cc7bfd2 inherit pub_methods_a00011"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ping that a generation ends.  <a href="#a88f50a547190eab155bc75da9cc7bfd2"></a><br/></td></tr>
<tr class="inherit_header pub_methods_a00024"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_a00024')"><img src="closed.png" alt="-"/>&nbsp;Protected Member Functions inherited from <a class="el" href="a00024.html">libevocosm::null_listener< function_solution ></a></td></tr>
<tr class="memitem:acf222b4d2f9e6076bc64a04ee4de0154 inherit pub_methods_a00024"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00024.html#acf222b4d2f9e6076bc64a04ee4de0154">ping_generation_begin</a> (const std::vector&lt; <a class="el" href="a00015.html">function_solution</a> &gt; &amp;a_population, size_t a_iteration)</td></tr>
<tr class="memdesc:acf222b4d2f9e6076bc64a04ee4de0154 inherit pub_methods_a00024"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ping that a generation begins.  <a href="#acf222b4d2f9e6076bc64a04ee4de0154"></a><br/></td></tr>
<tr class="memitem:a2f338d96cf658899d92aff59ba374ebc inherit pub_methods_a00024"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00024.html#a2f338d96cf658899d92aff59ba374ebc">ping_generation_end</a> (const std::vector&lt; <a class="el" href="a00015.html">function_solution</a> &gt; &amp;a_population, size_t a_iteration)</td></tr>
<tr class="memdesc:a2f338d96cf658899d92aff59ba374ebc inherit pub_methods_a00024"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ping that a generation ends.  <a href="#a2f338d96cf658899d92aff59ba374ebc"></a><br/></td></tr>
<tr class="memitem:a1b8cc8c87c0fa01f63ed1f1bc4a4536f inherit pub_methods_a00024"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00024.html#a1b8cc8c87c0fa01f63ed1f1bc4a4536f">ping_fitness_test_begin</a> (const <a class="el" href="a00015.html">function_solution</a> &amp;a_organism_number)</td></tr>
<tr class="memdesc:a1b8cc8c87c0fa01f63ed1f1bc4a4536f inherit pub_methods_a00024"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ping that a test run begins.  <a href="#a1b8cc8c87c0fa01f63ed1f1bc4a4536f"></a><br/></td></tr>
<tr class="memitem:aaa9b5f4aba83ddd653d2b0c75f5d7e97 inherit pub_methods_a00024"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00024.html#aaa9b5f4aba83ddd653d2b0c75f5d7e97">ping_fitness_test_end</a> (const <a class="el" href="a00015.html">function_solution</a> &amp;a_organism_number)</td></tr>
<tr class="memdesc:aaa9b5f4aba83ddd653d2b0c75f5d7e97 inherit pub_methods_a00024"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ping that a test run ends.  <a href="#aaa9b5f4aba83ddd653d2b0c75f5d7e97"></a><br/></td></tr>
<tr class="memitem:a6cbef5c8546505f163bd0f69aa20fc2b inherit pub_methods_a00024"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00024.html#a6cbef5c8546505f163bd0f69aa20fc2b">report</a> (const std::string &amp;a_text)</td></tr>
<tr class="memdesc:a6cbef5c8546505f163bd0f69aa20fc2b inherit pub_methods_a00024"><td class="mdescLeft">&#160;</td><td class="mdescRight">Report non-specific text.  <a href="#a6cbef5c8546505f163bd0f69aa20fc2b"></a><br/></td></tr>
<tr class="memitem:a54a7b46fcf61a2ae4e0c27b4ce829fcf inherit pub_methods_a00024"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00024.html#a54a7b46fcf61a2ae4e0c27b4ce829fcf">report_error</a> (const std::string &amp;a_text)</td></tr>
<tr class="memdesc:a54a7b46fcf61a2ae4e0c27b4ce829fcf inherit pub_methods_a00024"><td class="mdescLeft">&#160;</td><td class="mdescRight">Send error message.  <a href="#a54a7b46fcf61a2ae4e0c27b4ce829fcf"></a><br/></td></tr>
<tr class="memitem:a898a5ead5c37c237c4300e45bf81c50c inherit pub_methods_a00024"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00024.html#a898a5ead5c37c237c4300e45bf81c50c">run_complete</a> (const std::vector&lt; <a class="el" href="a00015.html">function_solution</a> &gt; &amp;a_population)</td></tr>
<tr class="memdesc:a898a5ead5c37c237c4300e45bf81c50c inherit pub_methods_a00024"><td class="mdescLeft">&#160;</td><td class="mdescRight">Evocosm is finished.  <a href="#a898a5ead5c37c237c4300e45bf81c50c"></a><br/></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>Using instances of the other classes, this class binds together the pieces to create a complete function optimizer. A user of this class defines two functions &ndash; a solution initializer and a fitness test &ndash; that define the target problem. </p>
</div><hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="aaf2a00184c81c313153526d44be6d3dc"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">libevocosm::function_optimizer::function_optimizer </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00008.html#a577368cdfb8c76c2b442abbed1589d15">t_function</a> *&#160;</td>
          <td class="paramname"><em>a_function</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>a_nargs</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>a_minarg</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>a_maxarg</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>a_norgs</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>a_mutation_rate</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>a_iterations</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Creates a new <a class="el" href="a00013.html" title="A generic function optimizer.">function_optimizer</a> with the given set of parameters. </p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">a_function</td><td>- Address of the function to be optimized. </td></tr>
    <tr><td class="paramname">a_nargs</td><td>- number of arguments per solution </td></tr>
    <tr><td class="paramname">a_minarg</td><td>- minimum argument value </td></tr>
    <tr><td class="paramname">a_maxarg</td><td>- maximum argument value </td></tr>
    <tr><td class="paramname">a_norgs</td><td>- The size of the solution population. </td></tr>
    <tr><td class="paramname">a_mutation_rate</td><td>- Mutation rate in the range [0,1]. </td></tr>
    <tr><td class="paramname">a_iterations</td><td>- Number of iterations to perform when doing a run. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a3551b33460257d374deb514eae2a9fe8"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual libevocosm::function_optimizer::~function_optimizer </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Cleans up resources by removing allocated objects. </p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a3b5e1e222e5410a2cb010bc26ebbba66"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void libevocosm::function_optimizer::run </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>This is where the work gets done; run iterates the number of times specificed when creating this <a class="el" href="a00013.html" title="A generic function optimizer.">function_optimizer</a>, reporting via a <a class="el" href="a00009.html" title="Reports the state of a population of solutions.">function_analyzer</a> object on the progress of optimization. </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="a00045_source.html">function_optimizer.h</a></li>
</ul>
</div><!-- contents -->
<hr>
<p align="center"><small>
&copy; 1996-2005 Scott Robert Ladd. All rights reserved.<br>
HTML documentation generated by Dimitri van Heesch's excellent <a href="http://www.doxygen.org">Doxygen</a> tool.
</small>
</p>
</body>
</html>