Search Results

Search found 40441 results on 1618 pages for 'function templates'.

Page 557/1618 | < Previous Page | 553 554 555 556 557 558 559 560 561 562 563 564  | Next Page >

  • questions regarding the use of A* with the 15-square puzzle

    - by Cheeso
    I'm trying to build an A* solver for a 15-square puzzle. The goal is to re-arrange the tiles so that they appear in their natural positions. You can only slide one tile at a time. Each possible state of the puzzle is a node in the search graph. For the h(x) function, I am using an aggregate sum, across all tiles, of the tile's dislocation from the goal state. In the above image, the 5 is at location 0,0, and it belongs at location 1,0, therefore it contributes 1 to the h(x) function. The next tile is the 11, located at 0,1, and belongs at 2,2, therefore it contributes 3 to h(x). And so on. EDIT: I now understand this is what they call "Manhattan distance", or "taxicab distance". I have been using a step count for g(x). In my implementation, for any node in the state graph, g is just +1 from the prior node's g. To find successive nodes, I just examine where I can possibly move the "hole" in the puzzle. There are 3 neighbors for the puzzle state (aka node) that is displayed: the hole can move north, west, or east. My A* search sometimes converges to a solution in 20s, sometimes 180s, and sometimes doesn't converge at all (waited 10 mins or more). I think h is reasonable. I'm wondering if I've modeled g properly. In other words, is it possible that my A* function is reaching a node in the graph via a path that is not the shortest path? Maybe have I not waited long enough? Maybe 10 minutes is not long enough? For a fully random arrangement, (assuming no parity problems), What is the average number of permutations an A* solution will examine? (please show the math) I'm going to look for logic errors in my code, but in the meantime, Any tips? (ps: it's done in Javascript). Also, no, this isn't CompSci homework. It's just a personal exploration thing. I'm just trying to learn Javascript. EDIT: I've found that the run-time is highly depend upon the heuristic. I saw the 10x factor applied to the heuristic from the article someone mentioned, and it made me wonder - why 10x? Why linear? Because this is done in javascript, I could modify the code to dynamically update an html table with the node currently being considered. This allowd me to peek at the algorithm as it was progressing. With a regular taxicab distance heuristic, I watched as it failed to converge. There were 5's and 12's in the top row, and they kept hanging around. I'd see 1,2,3,4 creep into the top row, but then they'd drop out, and other numbers would move up there. What I was hoping to see was 1,2,3,4 sort of creeping up to the top, and then staying there. I thought to myself - this is not the way I solve this personally. Doing this manually, I solve the top row, then the 2ne row, then the 3rd and 4th rows sort of concurrently. So I tweaked the h(x) function to more heavily weight the higher rows and the "lefter" columns. The result was that the A* converged much more quickly. It now runs in 3 minutes instead of "indefinitely". With the "peek" I talked about, I can see the smaller numbers creep up to the higher rows and stay there. Not only does this seem like the right thing, it runs much faster. I'm in the process of trying a bunch of variations. It seems pretty clear that A* runtime is very sensitive to the heuristic. Currently the best heuristic I've found uses the summation of dislocation * ((4-i) + (4-j)) where i and j are the row and column, and dislocation is the taxicab distance. One interesting part of the result I got: with a particular heuristic I find a path very quickly, but it is obviously not the shortest path. I think this is because I am weighting the heuristic. In one case I got a path of 178 steps in 10s. My own manual effort produce a solution in 87 moves. (much more than 10s). More investigation warranted. So the result is I am seeing it converge must faster, and the path is definitely not the shortest. I have to think about this more. Code: var stop = false; function Astar(start, goal, callback) { // start and goal are nodes in the graph, represented by // an array of 16 ints. The goal is: [1,2,3,...14,15,0] // Zero represents the hole. // callback is a method to call when finished. This runs a long time, // therefore we need to use setTimeout() to break it up, to avoid // the browser warning like "Stop running this script?" // g is the actual distance traveled from initial node to current node. // h is the heuristic estimate of distance from current to goal. stop = false; start.g = start.dontgo = 0; // calcHeuristic inserts an .h member into the array calcHeuristicDistance(start); // start the stack with one element var closed = []; // set of nodes already evaluated. var open = [ start ]; // set of nodes to evaluate (start with initial node) var iteration = function() { if (open.length==0) { // no more nodes. Fail. callback(null); return; } var current = open.shift(); // get highest priority node // update the browser with a table representation of the // node being evaluated $("#solution").html(stateToString(current)); // check solution returns true if current == goal if (checkSolution(current,goal)) { // reconstructPath just records the position of the hole // through each node var path= reconstructPath(start,current); callback(path); return; } closed.push(current); // get the set of neighbors. This is 3 or fewer nodes. // (nextStates is optimized to NOT turn directly back on itself) var neighbors = nextStates(current, goal); for (var i=0; i<neighbors.length; i++) { var n = neighbors[i]; // skip this one if we've already visited it if (closed.containsNode(n)) continue; // .g, .h, and .previous get assigned implicitly when // calculating neighbors. n.g is nothing more than // current.g+1 ; // add to the open list if (!open.containsNode(n)) { // slot into the list, in priority order (minimum f first) open.priorityPush(n); n.previous = current; } } if (stop) { callback(null); return; } setTimeout(iteration, 1); }; // kick off the first iteration iteration(); return null; }

    Read the article

  • How to allocate memory in another process for windows mobile

    - by Serafeim
    I'd like to read the contents of another process listview control in windows mobile. To do this, I need a pointer to some free memory to that process in order to put the values there (and then read them from my process). This can be done in normal Windows or Win32 with the VirtualAllocEx function. However, this function is not supported in windows mobile ! Can you recommend me a way to allocate that memory?

    Read the article

  • javascript replace commas with spaces from json array

    - by Alex
    I have a looping function creating: <li id="id1" name="Tag1,Tag2,Tag3"> <li id="id2" name="Tag1,Tag2,Tag3"> $.each(data.posts, function(i, post){ $('<li >', {id: this.id , name: post.tags}) }); How do I replace the commas between the tags with spaces. Also is there a way I can send the tags to a "class" attribute instead of "name". It seems to not work in Safari.

    Read the article

  • Delay KeyUp Action if User is Typing (C#)

    - by Kirk
    I have a function that is being called when the user is typing in a search box. I want to wait for the user to finish typing before I actually execute the function. I know how to easily accomplish this in JavaScript with timeouts, but how would I go about doing the same thing in C#? Also, how long should I wait before I assume the user is done typing? 100ms?

    Read the article

  • Creating a simple sencha listview using a loop

    - by chris_sencha
    How do we substitute a hardcoded data with a for loop in sencha and extjs? Say, I have below hardcoded one Ext.application({ launch: function() { Ext.create('Ext.List', { fullscreen: true, itemTpl: '{title}', data: [{ title: 'Item 1' }, { title: 'Item 2' }, { title: 'Item 3' }, { title: 'Item 4' }] }); } }); In the above one, how to replace data to something like below Ext.application({ launch: function() { Ext.create('Ext.List', { fullscreen: true, itemTpl: '{title}', data: [ for(int i=0;i<5;i++){ {title: 'Item '+i}, } ] }); } });

    Read the article

  • Call two Matlab functions simultaneously from .net

    - by Silv3rSurf
    I am writing a C# application and I would like to make calls to different matlab functions simultaneously(from different threads). Each Matlab function is located in its own compiled .net library. It seems that I am only able to call one Matlab function at a time however. ie, if matlab_func1() gets called from thread1 then matlab_func2() gets called from thread2, matlab_func2() must wait for matlab_func1() to finish executing. Is there a way to call different matlab functions simultaneously? Thanks.

    Read the article

  • SQL, Auxiliary table of numbers

    - by vzczc
    For certain types of sql queries, an auxiliary table of numbers can be very useful. It may be created as a table with as many rows as you need for a particular task or as a user defined function that returns the number of rows required in each query. What is the optimal way to create such a function?

    Read the article

  • how to scan a LAN for live hosts using PHP and SNMP?

    - by aag
    I would like to have a quick script listing all active hosts in a LAN, and I am a bit lost. From other posts I figured that this can be done most effectively by polling the DHCP server (in my case a Lancom router) using SNMP. However, I am not familiar with the SNMP commands in PHP. Is snmpwalk() the correct function? Can I get snmpwalk() or any other php function to return an array that contains a list of all live hosts?

    Read the article

  • How can I make exception handling for all existing SQL server 2005 Stored Procedures, view and funct

    - by Space Cracker
    we have a portal that have SQL server 2005 database that contain about 1750 stored procedures , 250 view and 200 function and 95% of them not have handling exception in their code .. we search about any way that allow us making such a global exception handling in SQL that receive any exception happen in any SP,view or function and stored it in a table we made .. is there something like this in SQL server 2005 or we must write exception handling code on each item ?

    Read the article

  • In an array of buttons, how can you tell which button was clicked?

    - by Michael Seltenreich
    If I have an array of buttons, how can I tell which button was clicked? example below var i=0 CreateButton = new function () { savebutton[i]=NewButton() i++ } every time a user runs the function a new button is generated. the first button is savebutton[0] the second is savebutton[1] and so on potentially infinity times. when later the user presses the button I want the screen to alert it's index number (or 'i'). is there any way to make this work in arrays?

    Read the article

  • Help mod_rewrite to Zeus

    - by FFish
    I just found out my host is on ZEUS.. Please can somebody help me with my rewrites: domain.com/001234 redirects to domain.com/001234-some-keywords.html Apache: RewriteRule ^([0-9]{6}+)/?$ includes/redirect.php?ref=$1 [L] RewriteRule ^([0-9]{6})-.*?\.html$ templates/default/index.php?ref=$1 [L] tried this in Zeus: match URL into $ with ^([0-9]{6}+)/?$ if matched then set URL = includes/redirect.php?ref=$1 endif match URL into $ with ^id/([0-9]+)/?$ if matched then set URL = home/content.php?id=$1 endif

    Read the article

  • Find calling iframe id

    - by Alec Smart
    Hello, I have a number of iframes calling a function in my main page. Is there a way to find out the ID of the iframe which called the function? There are all part of same domain so that should not be an issue. Thank you for your time.

    Read the article

  • Visual Studio support for coding in CIL/IL/MSIL?

    - by jdk
    For the longest time I've been curious to code in Intermediate Language just as an academic endeavour and to gain a better understanding of what's "happening under the hood". Is there any sort of Visual Studio support for this in the form of: project templates, IntelliSense integration, and those kind of RAD features?

    Read the article

  • How to open file and Directory in QT

    - by sijith
    Hi, I want to open Directory and file using the same function. Is it possible to do the same in QT. I used QString directory = QFileDialog::getExistingDirectory(this, tr("Open Directory"), "", QFileDialog::ShowDirsOnly | QFileDialog::DontResolveSymlinks); Here i can open only directory. How to open both file and directory using single function

    Read the article

  • Split by Caps in Javascript,

    - by user1294188
    I am trying to split up a string by caps using Javascript, Examples of what Im trying to do: "HiMyNameIsBob" -> "Hi My Name Is Bob" "GreetingsFriends" -> "Greetings Friends" I am aware of the str.split() function, however I am not sure how to make this function work with capital letters. I've tried: str.split("(?=\\p{Upper})") Unfortunately that doesn't work, any help would be great.

    Read the article

  • Passing enums to functions in C++

    - by rocknroll
    Hi all, I have a header file with all the enums listed (#ifndef #define #endif construct has been used to avoid multiple inclusion of the file) that I use in multiple cpp files in my application.One of the enums in the files is enum StatusSubsystem {ENABLED,INCORRECT_FRAME,INVALID_DATA,DISABLED}; There are functions in the application delcared as ShowStatus(const StatusSubsystem&); Earlier in the application when I made calls to the above function like ShowStatus(INCORRECT_FRAME); my application used to compile perfectly. But after some code was added The compilation halts giving the following error: File.cpp:71: error: invalid conversion from `int' to `StatusSubsystem' File.cpp:71: error: initializing argument 1 of `void Class::ShowStatus(const StatusSubsystem&) I checked the code for any conflicting enums in the new code and it looked fine. My Question is what is wrong with the function call that compiler shows as erroneous? For your reference the function definition is: void Class::ShowStatus(const StatusSubsystem& eStatus) { QPalette palette; mStatus=eStatus;//store current Communication status of system if(eStatus==DISABLED) { //select red color for label, if it is to be shown disabled palette.setColor(QPalette::Window,QColor(Qt::red)); mLabel->setText("SYSTEM"); } else if(eStatus==ENABLED) { //select green color for label,if it is to be shown enabled palette.setColor(QPalette::Window,QColor(Qt::green)); mLabel->setText("SYSTEM"); } else if(eStatus==INCORRECT_FRAME) { //select yellow color for label,to show that it is sending incorrect frames palette.setColor(QPalette::Window,QColor(Qt::yellow)); mLabel->setText("SYSTEM(I)"); } //Set the color on the Label mLabel->setPalette(palette); } A strange side effect of this situation is it compiles when I cast all the calls to ShowStatus() as ShowStatus((StatusSubsystem)INCORRECT_FRAME); Though this removes any compilation error, but a strange thing happens. Though I make call to INCORRECT_FRAME above but in function definition it matches with ENABLED. How on earth is that possible? Its like while passing INCORRECT_FRAME by reference, it magically converts to ENABLED, which should be impossible. This is driving me nuts. Can you find any flaw in what I am doing? or is it something else? The application is made using C++,Qt-4.2.1 on RHEL4. Thanks.

    Read the article

  • onClose and datepick with jQuery

    - by Steve
    I have the following code: $('#popupDatepickerWeekly').datepick({ maxDate:'1Y', mandatory:true, highlightWeek:true, onClose: closedDate }); My closedDate function looks like this: function closedDate(value, date, inst) { document.signUpForm.repeatUntil.value = value; } But when I pick a date using the datepicker, the repeatUntil hidden value is not set. The hidden form field looks like this: I don't get an error or anything, but it always comes back as an empty string.

    Read the article

  • Using jQuery to perform a GET request and using the resulting data

    - by Filip Ekberg
    I have a page, let's call it "callme.html" which only has this content: abc Now I want to fire the following: $.get("callme.html", function (data) { alert(data); }, "text"); I am using jQuery 1.4.2 mini and the page is called but the alert is empty. Any ideas why? I'd like the popup to contain abc I've also tried the following $.ajax({ url: "callme.html", async: false, success: function (data) { alert(data); } });

    Read the article

< Previous Page | 553 554 555 556 557 558 559 560 561 562 563 564  | Next Page >