<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rpi/tipping-points/src/NameGame.cc, branch main</title>
<subtitle>FNS Research Project</subtitle>
<link rel='alternate' type='text/html' href='https://git.aidenw.net/rpi/tipping-points/'/>
<entry>
<title>add confirmation bias and exp weights</title>
<updated>2025-12-13T04:48:39+00:00</updated>
<author>
<name>Aiden Woodruff</name>
<email>woodra@rpi.edu</email>
</author>
<published>2025-12-13T04:48:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.aidenw.net/rpi/tipping-points/commit/?id=c0268db7865553ceece33d0ebc9a4b03bbbd0633'/>
<id>c0268db7865553ceece33d0ebc9a4b03bbbd0633</id>
<content type='text'>
- src/NameGame.cc: remove std::map best_move implementation.
- add explicit confirmation bias macro.
- add default random tie-breaker.
- src/many-async.cc: reseed for each committed minority value because
  entropy may be exhausted.

Signed-off-by: Aiden Woodruff &lt;woodra@rpi.edu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- src/NameGame.cc: remove std::map best_move implementation.
- add explicit confirmation bias macro.
- add default random tie-breaker.
- src/many-async.cc: reseed for each committed minority value because
  entropy may be exhausted.

Signed-off-by: Aiden Woodruff &lt;woodra@rpi.edu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>change adoption calculation</title>
<updated>2025-11-29T17:22:04+00:00</updated>
<author>
<name>Aiden Woodruff</name>
<email>woodra@rpi.edu</email>
</author>
<published>2025-11-29T17:22:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.aidenw.net/rpi/tipping-points/commit/?id=a0c774f052fb378cf94e184aa0456370dad1647f'/>
<id>a0c774f052fb378cf94e184aa0456370dad1647f</id>
<content type='text'>
- src/NameGame.cc (run): count last N uncommitted strategies and report
  that instead of the last N strategies.

Signed-off-by: Aiden Woodruff &lt;woodra@rpi.edu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- src/NameGame.cc (run): count last N uncommitted strategies and report
  that instead of the last N strategies.

Signed-off-by: Aiden Woodruff &lt;woodra@rpi.edu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>improve NameGame.cc</title>
<updated>2025-11-29T02:46:40+00:00</updated>
<author>
<name>Aiden Woodruff</name>
<email>woodra@rpi.edu</email>
</author>
<published>2025-11-29T02:46:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.aidenw.net/rpi/tipping-points/commit/?id=80ca2b9a2499b4353685055dbf8bd49ca7521803'/>
<id>80ca2b9a2499b4353685055dbf8bd49ca7521803</id>
<content type='text'>
- src/NameGame.cc: explicit instantiation of copy assignment operator to
  avoid over-optimization removing the function.
- (update_memory): use TVec DelLast instead of Trunc which calls
  realloc. This is a little bit faster but still doesn't beat TLst.

Signed-off-by: Aiden Woodruff &lt;woodra@rpi.edu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- src/NameGame.cc: explicit instantiation of copy assignment operator to
  avoid over-optimization removing the function.
- (update_memory): use TVec DelLast instead of Trunc which calls
  realloc. This is a little bit faster but still doesn't beat TLst.

Signed-off-by: Aiden Woodruff &lt;woodra@rpi.edu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>optimizing many</title>
<updated>2025-11-27T05:45:06+00:00</updated>
<author>
<name>Aiden Woodruff</name>
<email>woodra@rpi.edu</email>
</author>
<published>2025-11-27T05:45:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.aidenw.net/rpi/tipping-points/commit/?id=779ef216d71c12ba3f7ef6cfee67bcaccb3293e9'/>
<id>779ef216d71c12ba3f7ef6cfee67bcaccb3293e9</id>
<content type='text'>
- src/NameGame.h: update network to use linked list for memory (given
  macro). seems to provide ~2x speedup.
- src/NameGame.cc: add iterator for TLst type.
- add copy constructor and copy assignment operator for TLst that are
  not defined by the SNAP library.
- add TP_BESTMOVE_STATIC to use static array for voting to speed up
  best_move by ~2x.
- add conditional logic in places to allow for A/B testing.
- based off testing I can get ~4x total improvement so I think I will
  make both of these permanent (except maybe leaving in the old
  unoptimized code in case I want to add multiple strategies).
- TASKS.md: update tasks.

Signed-off-by: Aiden Woodruff &lt;woodra@rpi.edu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- src/NameGame.h: update network to use linked list for memory (given
  macro). seems to provide ~2x speedup.
- src/NameGame.cc: add iterator for TLst type.
- add copy constructor and copy assignment operator for TLst that are
  not defined by the SNAP library.
- add TP_BESTMOVE_STATIC to use static array for voting to speed up
  best_move by ~2x.
- add conditional logic in places to allow for A/B testing.
- based off testing I can get ~4x total improvement so I think I will
  make both of these permanent (except maybe leaving in the old
  unoptimized code in case I want to add multiple strategies).
- TASKS.md: update tasks.

Signed-off-by: Aiden Woodruff &lt;woodra@rpi.edu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>add macro fenced exponential memory decay</title>
<updated>2025-11-22T19:00:03+00:00</updated>
<author>
<name>Aiden Woodruff</name>
<email>woodra@rpi.edu</email>
</author>
<published>2025-11-22T19:00:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.aidenw.net/rpi/tipping-points/commit/?id=bdb551d54bc9c2eceff7db96518cfd6e1706bf5b'/>
<id>bdb551d54bc9c2eceff7db96518cfd6e1706bf5b</id>
<content type='text'>
- src/NameGame.cc: add static weight function that memoizes exp for
  different weight lengths.

Signed-off-by: Aiden Woodruff &lt;woodra@rpi.edu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- src/NameGame.cc: add static weight function that memoizes exp for
  different weight lengths.

Signed-off-by: Aiden Woodruff &lt;woodra@rpi.edu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>change main to one run game</title>
<updated>2025-11-21T16:03:49+00:00</updated>
<author>
<name>Aiden Woodruff</name>
<email>woodra@rpi.edu</email>
</author>
<published>2025-11-21T16:03:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.aidenw.net/rpi/tipping-points/commit/?id=232c1c76d97bea6622f8abdd99f6709590f1cead'/>
<id>232c1c76d97bea6622f8abdd99f6709590f1cead</id>
<content type='text'>
- src/main.cc: run only one game with prescribed settings and output the
  number of new strategy plays.
- src/NameGame.h: change NameGame::run to return an int which is the
  number of non-committed players that changed their mind.
- src/NameGame.cc (run): do not display average for brevity.
- output the uncommitted new strategy plays.

Signed-off-by: Aiden Woodruff &lt;woodra@rpi.edu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- src/main.cc: run only one game with prescribed settings and output the
  number of new strategy plays.
- src/NameGame.h: change NameGame::run to return an int which is the
  number of non-committed players that changed their mind.
- src/NameGame.cc (run): do not display average for brevity.
- output the uncommitted new strategy plays.

Signed-off-by: Aiden Woodruff &lt;woodra@rpi.edu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>fix best_move selection</title>
<updated>2025-11-21T13:53:21+00:00</updated>
<author>
<name>Aiden Woodruff</name>
<email>woodra@rpi.edu</email>
</author>
<published>2025-11-21T13:53:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.aidenw.net/rpi/tipping-points/commit/?id=b7080ba3627aa07de5be3385e62d16d9ea428167'/>
<id>b7080ba3627aa07de5be3385e62d16d9ea428167</id>
<content type='text'>
- src/NameGame.cc: replace faulty fraction accounting with simple
  std::max_element.

Signed-off-by: Aiden Woodruff &lt;woodra@rpi.edu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- src/NameGame.cc: replace faulty fraction accounting with simple
  std::max_element.

Signed-off-by: Aiden Woodruff &lt;woodra@rpi.edu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>update verbose game formatting</title>
<updated>2025-11-20T04:54:43+00:00</updated>
<author>
<name>Aiden Woodruff</name>
<email>woodra@rpi.edu</email>
</author>
<published>2025-11-20T04:54:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.aidenw.net/rpi/tipping-points/commit/?id=9fca61c7909684905122e58798c87950f861e6b5'/>
<id>9fca61c7909684905122e58798c87950f861e6b5</id>
<content type='text'>
- src/NameGame.cc (NameGame::runRound): shorten output.
- make line lengths the same so it's easier to see.
- output hearer info again.

Signed-off-by: Aiden Woodruff &lt;woodra@rpi.edu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- src/NameGame.cc (NameGame::runRound): shorten output.
- make line lengths the same so it's easier to see.
- output hearer info again.

Signed-off-by: Aiden Woodruff &lt;woodra@rpi.edu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>fix update_memory</title>
<updated>2025-11-20T04:53:03+00:00</updated>
<author>
<name>Aiden Woodruff</name>
<email>woodra@rpi.edu</email>
</author>
<published>2025-11-20T04:53:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.aidenw.net/rpi/tipping-points/commit/?id=fbc1f58bd202ae2fff80e20f874812d5351b5318'/>
<id>fbc1f58bd202ae2fff80e20f874812d5351b5318</id>
<content type='text'>
- src/NameGame.cc (NameGame::update_memory): fixed update_memory not
  updating memory vectors.
- needed to get reference to node data.
- shortened update sequence and avoided using another auto reference.

Signed-off-by: Aiden Woodruff &lt;woodra@rpi.edu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- src/NameGame.cc (NameGame::update_memory): fixed update_memory not
  updating memory vectors.
- needed to get reference to node data.
- shortened update sequence and avoided using another auto reference.

Signed-off-by: Aiden Woodruff &lt;woodra@rpi.edu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>only one strategy per round</title>
<updated>2025-11-18T22:20:43+00:00</updated>
<author>
<name>Aiden Woodruff</name>
<email>woodra@rpi.edu</email>
</author>
<published>2025-11-18T22:20:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.aidenw.net/rpi/tipping-points/commit/?id=bdf08f745ed7373431b8d911449fd77068258abe'/>
<id>bdf08f745ed7373431b8d911449fd77068258abe</id>
<content type='text'>
- src/NameGame.cc (runRound): fixed code so that only speaker chooses a
  strategy each round. this matches BestResponseNameGame.R
- renamed variables to just strategy.
- updated record call.
- (run): updated average calculation per round.
- (writeRecord): updated header and row code.
- src/NameGame.h: updated Record struct to remove hearer info.

Signed-off-by: Aiden Woodruff &lt;woodra@rpi.edu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- src/NameGame.cc (runRound): fixed code so that only speaker chooses a
  strategy each round. this matches BestResponseNameGame.R
- renamed variables to just strategy.
- updated record call.
- (run): updated average calculation per round.
- (writeRecord): updated header and row code.
- src/NameGame.h: updated Record struct to remove hearer info.

Signed-off-by: Aiden Woodruff &lt;woodra@rpi.edu&gt;
</pre>
</div>
</content>
</entry>
</feed>
