Minneapolis LabVIEW User Group

cancel
Showing results for 
Search instead for 
Did you mean: 

Coding Challenges for June 12th 2019 Minnesota LabVIEW User Group

We want to thank everyone that provided feedback on the coding challenges.  The feedback was wide-ranging, so our solution is to offer several challenges that cover a wide range.  Hopefully there is something here for everyone.  The Coding Challenge Overview document gives a brief overview of your choices.  Then there are folders for two of the larger challenges.  I'm posting both 2013 and 2018 versions of each of those two challenges.  Some of the documentation is only in the 2018 folder.

 

Have fun!

Steve

 


www.ComputerSolutions.com

SVetter@ComputerSolutions.com
(651) 285-4299



Steven C. Vetter
Certified LabVIEW Architect
President
Computer Solutions, LLC
Eagan, MN 55123
0 Kudos
Message 1 of 3
(3,141 Views)

I made two improvements to Tetris.  One is a bug fix (rotating counter-clockwise from a zero rotation did not get to rotation 3 like it should have).  The other change is there is now a "State" input to AI Move, which you have the option of using to drive other actions in your move generator, like initialization.  You can ignore this input and there will be no change, but it could be useful for the more complex move generators.  I've attached a 2018 version and a 2013 version here.

Steven C. Vetter
Certified LabVIEW Architect
President
Computer Solutions, LLC
Eagan, MN 55123
Download All
0 Kudos
Message 2 of 3
(3,074 Views)

While I was creating my own solution to the Tetris challenge, I added some features to make development and debugging better, so I thought I would offer them here for everyone to use.  In addition, there is a minor bug fix.  If you were using the new "State" input, you would never get the "Move" state.  The main improvements include:
- A sixth utility:  "Delete Piece.vi"

- Expansion of the main data typedef to make viewing the board much easier

- Expansion of the range of speeds (and "Trials" now run at only 10x speed, instead of 1000x)

- A "Times" output.  (If you quit by clicking the red 'X', you can see the performance of your solution)

- Addition of a "Testing" button - This allows your AI to take as long as it needs without penalty.
         (Useful for breakpoints during debugging.)
- Integration of the scoring calculation into "Remove Rows.vi"
- In-lining several routines for performance.

Note that on my machine at least, the project file seemed to get corrupted.  It may or may not work on your machine, but this application is so simple you can work on it without the project file.

Steve

Steven C. Vetter
Certified LabVIEW Architect
President
Computer Solutions, LLC
Eagan, MN 55123
Message 3 of 3
(3,028 Views)