From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

BreakPoint

cancel
Showing results for 
Search instead for 
Did you mean: 

New Coding Challenges?

Great follow up Ben!

So lets summarise requirements:

1) to host the web server (hallo....NI Echo....)

2) to create concept specifications for the inputs and outputs for each bot vi (force LVOOP?).

3) to create first version of GUI battlefield, and provide access using LV web server. Maybe we need to decompose it several subprojects, as the battle is a different topic to the web server, and within the battle, there is the internal engine and the external graphical view. i expect once we get the web access, these should be simple to create overall. We could ask Dr. Damien to take care of this side of the programing, while giving the same weekly (daily) report of progress. we would then be fully involved in the process of both development, learning, and deployement.

 

Cspecs ideas:

- the game should be continuous: even if hit is not yet recorded, the bot is allowed to freely move and send ammo.

- each bot is allowed 100 points, usable freely. each attribute (speed, mass and size, mass of projectile, speed of projectile, size of projectile...). A checker Vi will ensure that each vi will have only the allowed overall nb of points. 

- transparency of vi - moderator is allowed to look under the hood. one step further would be to enforce a certain pattern and hierarchy (say, queued state machine, all subvi names are predefined - a template could be made available), but it is unclear if it will help or hinder users. 

- we can have a list of visual bot, depending on the choices made by the user on nb of points for each specific attribute (e.g. big projectiles - the user could choose between a list of visual bots that have big canon. Fast - the user could choose between a range of sleek cars...). the visual bot is rotatable 2D pattern, so direction and position is visible on the field.

-  the bot could have knowledge of a projectile in its direction ("radar" like), and have option to react.

- inputs: position in field, adversary position in field, last hit to adversary with timestamp, self and adversary health. it is important that it does not include directly the hit position within the enemy bot. outputs: velocity and direction, (self or projectile if sent).

- no 2 actions could be performed: either to move, or to send a projectile. that will ensure that a limited amount of projectiles will be sent.

- a checker vi could be made available to calibrate the bot. this might be necessary if time step during the game is very slow comparing to bot internal time step (then one need to ensure choosen velocity and projectile direction match external conditions). alternatively there will need to be an interactive calibrater within the bot (that will be cool to implement!).

- the battle engine should include 3D physics to allow more difficulty, and might add a degree of randomness (wind for the projectile direction and speed, some misaccuracy of the position in cas eof night...hehe...)

 

i am getting really carried away.

-----------------------------------------------------------------------------------------------------
... And here's where I keep assorted lengths of wires...
Message 41 of 51
(12,842 Views)

Ben,

As promised, I've been working a little on the polygonisation challenge (whether this exists as a challenge or not anymore I don't know, but I've found it interesting nonetheless). I've incorporated a marching tetrahedra algorithm (marching cubes has an inherent flaw), and have had some interesting results.


Below is a polygon rendering of the human head animated gif (3D spatial map) generated using my code. It needs a bit of smoothing, as you can see, but if you look carefully you can just pick out the eye sockets, mouth and nose in the snapshot below. It looks a lot better in 3D, because as you spin the model around it becomes much easier to visual the three dimensionality of it. (The forehead and nose are flat because the data is clipped at the front).

I need to spend some more time speeding it up, and adding some refinements to smooth out the results (normal vector smoothing maybe). With careful tuning, one should be able to have just the skull or the brain modelled.

 

Is this anything close to being useful? I know it's not exactly what you were asking for

 

 

The image itself is a link to the larger image, also attached below

Message Edited by Thoric on 05-08-2009 12:45 AM
Thoric (CLA, CLED, CTD and LabVIEW Champion)


Download All
Message 42 of 51
(12,783 Views)

Thoric!

 

I wish I could give you 20 Kudos for that one.

 

Congratulations on being the first person outside the lab that acquired those images to see that persons face. That definately illustrates what I was trying to describe. WE could devise a challenge where the participants are given the data from the gif along with your example code and have to produce three images

1) The skin as you have done,

2) The brain

3) The bones of the middel ear or the hypothalamus (sp?)

 

Juding will be heavily weighted on performance but bad style will disqualify and entry (if Icna't figure out what you are doing then there in no learning involved). Of course all submissions will be open for review after the competition.

 

I would love to see that code and play with it myself but....

 

This thread is about a new challenge!

 

So I have to re-ask the community are any of the idea in this thread inspiring you to want to start an new Challenge?

 

If not maybe we can ask Thoric to share his code in the New Community and we can turn his code into an Community project?

 

Ben

 

PS: Thoric, My e-mail in-box does not have any restriction on the size of in-coming messages (hint hint) Smiley Wink

Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
Message 43 of 51
(12,761 Views)

Ben,

Thanks for the congrat's! Smiley Happy

 

I don't want to detract from the direction this thread has headed, the networked virtual robot football/soccer/battlefield competition sounds great and I hope something comes of it! I'll certainly join in if it goes ahead.

 

As far as my code goes, I'd like to clean it up a little before I dare make it public. The scrutinous eye of the community would tear it apart as it currently stands! Smiley Tongue

 

I originally created a project that used a clear subvi heirarchy, but the data cluster became quite large and some subvis are called millions of times. This led to terrible time penalties. So for a quick fix I brought all the subvi code in-line. So now I have a poorly architected, very large, non-parallel (but speedy) code. By speedy I mean it takes about one hour instead of 20!. What I'd like is to pass the control of data storage to an action engine, and start pipelining the analysis and post processing procedures. Ideally, one would use LVOOP, but I'm not sufficiently confident with the philosophies of it yet. Maybe someone else would be willing to convert it?

 

Anyway, unless you really want to see my rushed-job code Ben, I think I'd prefer to get something to you later. Smiley Wink

 

Thanks!

Message Edited by Thoric on 05-08-2009 10:26 PM
Thoric (CLA, CLED, CTD and LabVIEW Champion)


Message 44 of 51
(12,728 Views)

Thoric wrote:

Ben,

Thanks for the congrat's! Smiley Happy

 

I don't want to detract from the direction this thread has headed, the networked virtual robot football/soccer/battlefield competition sounds great and I hope something comes of it! I'll certainly join in if it goes ahead.

...

 By speedy I mean it takes about one hour instead of 20!. What I'd like is to pass the control of data storage to an action engine, and start pipelining the analysis and post processing procedures. Ideally, one would use LVOOP, but I'm not sufficiently confident with the philosophies of it yet. Maybe someone else would be willing to convert it?

 

Anyway, unless you really want to see my rushed-job code Ben, I think I'd prefer to get something to you later. Smiley Wink

 

Thanks!

Message Edited by Thoric on 05-08-2009 10:26 PM

 

Until we get someone to host that app it is still a pipe dream.

 

Taking code that takes an hour and making it run in less time that it takes for a "Life-Science-Type"* to hit "Ctrl-alt-del" now that sounds like a good challenge to me.

 

And since it works towrad my orignally stated requirements, it still qualifies for the cash award I offered in the first place.

 

Ben

 

* No insult intended. "Some of my best friends are life scince types." Smiley Tongue

 

Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
Message 45 of 51
(12,691 Views)

MikeS81 wrote:

Ben wrote: 

 

...

I like the idea but do you have a machine that can host the app?

...

 


Hi Ben,

what do you think we would need here?

I also like the idea.

 

Mike


Well its taken some time but I am getting very close to being able to host my own LabVIEW related web-site.

 

I hope to be able to host these crazy on-line virtual robot battles along with other things.

 

I was brain-storming ideas this week-end but this is not supposed be about me but about the LabVIEW Community.

 

So if I am successful in getting a web-site to host LV related stuff, what kind of stuff would it be used for?

 

Don't be shy, tell me what I should put up on it.

 

I want crazy ideas so nothing that competes with NI forums or LAVA. I want to compliment those services and facilitating LV apps seems the big thing I could do to help the community.

 

Ben

Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
Message 46 of 51
(12,336 Views)
Message Edited by Michael Aivaliotis on 08-31-2009 12:16 PM


Michael Aivaliotis
VI Shots LLC
0 Kudos
Message 47 of 51
(12,311 Views)

Michael Aivaliotis wrote:
Message Edited by Michael Aivaliotis on 08-31-2009 12:16 PM

 

Quoting from myself above;

 

"I want crazy ideas so nothing that competes with NI forums or LAVA. I want to compliment those services and facilitating LV apps seems the big thing I could do to help the community."

 

 

Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
Message 48 of 51
(12,307 Views)

How about a web server based VI upgrader/downgrader?  People upload their 5.1 VI's and it automatically converts them to LV 7.1.  Or people upload the LV2009 files they can't open and it automatically converts them back to whatever version they choose (within reason of course.) 

 

 

Message 49 of 51
(12,297 Views)

Ravens Fan wrote:

How about a web server based VI upgrader/downgrader?  People upload their 5.1 VI's and it automatically converts them to LV 7.1.  Or people upload the LV2009 files they can't open and it automatically converts them back to whatever version they choose (within reason of course.) 

 

 


Nice idea!

 

Not only is that service required, I would be interested in what VIs "look juicy" enough to aks for the conversion.

 

Thank you!

 

Ben

Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
Message 50 of 51
(12,263 Views)