Mathematica Problems with Mathematica Code for Markov Models?

  • Thread starter Thread starter johalia
  • Start date Start date
  • Tags Tags
    Code Mathematica
Click For Summary
The discussion centers around using Markov models in Mathematica to evaluate a device, based on a paper by H. Timbley. The user attempts to implement code from Timbley's appendix but encounters multiple error messages when executing a specific section. The errors suggest issues with accessing elements in lists, indicating that the variable 'randomUser' is not defined. The user seeks clarification on the errors and inquires about the version of Mathematica others are using, as they receive different error messages. Additionally, there is a request for a reference to Timbley's paper for further context.
johalia
Messages
1
Reaction score
0
Hello!

I'm writing a paper where I'm going to use markov models to evalute a device. My base for this paper is the paper written by H. Timbley. I have never used Mathematica before and thought that I would start by trying the complete code that Timbley has written in the appendix of the paper. The code is:

DiscreteMath`Combinatorica`;
IndexOf[vector , e ] := Position[vector, e][[1, 1]];

device =
{{"Clock", "Clock", "Clock", "Clock", "Clock", "Clock"},
{"Quick Defrost", "Quick Defrost", "Quick Defrost",
"Quick Defrost", "Quick Defrost", "Quick Defrost"},
{"Timer1", "Timer1", "Timer2", "Timer1", "Timer2", "Timer1"},
{"Clock", "Clock", "Clock", "Clock", "Clock", "Clock"},
{"Clock", "Quick Defrost", "Power1",
"Power2", "Power1", "Power2"}
};

buttonNames = {"Clock", "Quick Defrost", "Time", "Clear", "Power"};
stateNames = {"Clock", "Quick Defrost", "Timer1", "Timer2", "Power1",
"Power2"};

numberOfStates = Length@stateNames;
numberOfButtons = Length@buttonNames;

start = IndexOf[stateNames, "Power1"];
goal = IndexOf[stateNames, "Power2"];


Until then the code work just fine, but when I type in the next section described in the appendix (see below), some error codes pop up.

Do[randomUser[[i, IndexOf[stateNames, device[[b, i]]]]] +=
1/numberOfButtons, {b, numberOfButtons}, {i, numberOfStates}];


Error codes:
Part::partw: Part 1 of {} does not exist. >>
Part::pspec: Part specification {}[[1,1]] is neither a machine-sized integer nor a list of machine-sized integers. >>
Part::partw: Part 1 of {} does not exist. >>
Set::pspec: Part specification {}[[1,1]] is neither a machine-sized integer nor a list of machine-sized integers. >>
Part::partw: Part 3 of {Quick Defrost,(Quick Defrost)^5} does not exist. >>
General::stop: Further output of Part::partw will be suppressed during this calculation. >>
Part::pspec: Part specification {}[[1,1]] is neither a machine-sized integer nor a list of machine-sized integers. >>
Set::pspec: Part specification {}[[1,1]] is neither a machine-sized integer nor a list of machine-sized integers. >>
Part::pspec: Part specification {}[[1,1]] is neither a machine-sized integer nor a list of machine-sized integers. >>
General::stop: Further output of Part::pspec will be suppressed during this calculation. >>
Set::pspec: Part specification {}[[1,1]] is neither a machine-sized integer nor a list of machine-sized integers. >>
General::stop: Further output of Set::pspec will be suppressed during this calculation. >>


Is there anybody that could tell me what's wrong with the code?
 
Last edited:
Physics news on Phys.org
What version of Mathematica are you using? Because I get different error messages.

The problem seems to be that randomUser is not defined.

Can you give a reference for the paper you mention?
 

Similar threads

Replies
1
Views
3K
  • · Replies 6 ·
Replies
6
Views
6K
  • · Replies 6 ·
Replies
6
Views
5K
  • · Replies 7 ·
Replies
7
Views
3K
  • · Replies 7 ·
Replies
7
Views
4K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 94 ·
4
Replies
94
Views
12K