John McNabb | 1 Jun 2007 02:06
Picon

Re: investigating whether wesnoth is suitable for my AI thesis

Welcome to wesnoth.

I am not much of a python person, so I will let those who are more
closely involved with the python bindings answer those questions.  I
have, however, been working on a new C++ AI that will add a lot of
flexibility via WML, and I have been thinking about some of the issues
you have raised involving running the AI from the command line and
training it, so I will try and answer those as best I can..

> * I have to figure out some practical stuff and I'm hoping you guys can
> help me shed some light on them.

we will certainly try...

> I read a little bit about restricting python. I do like
> reviewing/renaming solutions but personally I don't like technical
> restrictions. Python being powerful/versatile makes it a nice language
> for doing research with (you can hook into all kinds of existing stuff,
> you can quickly prototype something). IMHO you probably can't restrict
> any c++ AI so IMHO considering restricting python AI's but not c++ AI's
> seems inconsistent. Also it's not like there are lots of python AI's
> available for wesnoth so the reviewing/renaming solution probably
> doesn't add much to the workload of the volunteers who do this.

The difference between the C++ AI and the python AI is that the C++ is
essentially restricted at compile time.  If the program is well
behaved when it is distributed, there is no particular problem.  Since
the python AI is interpreted, however, it is conceivable that someone
could execute malicious code unwittingly.  Ok, so the individual would
have had to have downloaded the campaign/whatever that had the
(Continue reading)

dave | 1 Jun 2007 02:48

Re: investigating whether wesnoth is suitable for my AI thesis

Hi there, welcome!

I won't address all your points, but I thought I would throw out a few  
things to think about.

In terms of doing something 'interesting' from a thesis point of view,  
perhaps you could consider making an AI that handles fog of war well.  
As far as I know, research into AIs with incomplete information is far  
less developed than AIs with complete information. It would be an  
interesting challenge to try and write an AI that could try to use  
advanced inference techniques to cope with fog of war and incomplete  
information. I think it would make things much more 'interesting' than  
simply dealing with the huge state space challenge.

I don't think Wesnoth does all the things you want in terms of how it  
handles the AI, but you could modify the engine to make it behave as  
you want. I don't think it would be so difficult to do so. Possibly  
you could convince someone on the development team to do it for you,  
but I don't think you should rely on this.

Regards,

David

Quoting "Roald (ubuntu_demon)" <ubuntu.demon <at> gmail.com>:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Hey,
(Continue reading)

Roald (ubuntu_demon | 1 Jun 2007 11:45
Picon
Gravatar

Re: investigating whether wesnoth is suitable for my AI thesis


John McNabb wrote:
> Welcome to wesnoth.

Thanks :)
> 
> I am not much of a python person, so I will let those who are more
> closely involved with the python bindings answer those questions.  

Could you please point me to some people who work on the python bindings
? I might be willing to help on the parts which are of interest to my
research.

> I
> have, however, been working on a new C++ AI that will add a lot of
> flexibility via WML, and I have been thinking about some of the issues
> you have raised involving running the AI from the command line and
> training it, so I will try and answer those as best I can..
> 

To be more clear this might be a good approach from an AI research
perspective :

phase 1) offline machine learning :
to try whether it's possible to find map specific things
to try to find a good state space representation

phase 2) offline reinforcement learning (or some other learning
technique) to try to find nice bootstrapped weights :
probably map specific
(Continue reading)

Roald (ubuntu_demon | 1 Jun 2007 11:53
Picon
Gravatar

Re: investigating whether wesnoth is suitable for my AI thesis


dave <at> whitevine.net wrote:
> Hi there, welcome!

Thanks :)

> 
> I won't address all your points, but I thought I would throw out a few
> things to think about.
> 
> In terms of doing something 'interesting' from a thesis point of view,
> perhaps you could consider making an AI that handles fog of war well. As
> far as I know, research into AIs with incomplete information is far less
> developed than AIs with complete information. It would be an interesting
> challenge to try and write an AI that could try to use advanced
> inference techniques to cope with fog of war and incomplete information.
> I think it would make things much more 'interesting' than simply dealing
> with the huge state space challenge.

Thanks for your suggestion. I will think about it and I will discuss it
with my supervisor today.

> 
> I don't think Wesnoth does all the things you want in terms of how it
> handles the AI, but you could modify the engine to make it behave as you
> want. 

As far as I understand the most important thing I need is having
"finishing information".

(Continue reading)

Nils Kneuper | 1 Jun 2007 12:13
Picon

Re: investigating whether wesnoth is suitable for my AI thesis

Roald (ubuntu_demon) schrieb:
 > Could you please point me to some people who work on the python bindings
 > ? I might be willing to help on the parts which are of interest to my
 > research.
 >
Allefant is working on this, he is on irc rather often in the european 
evening hours.
 >
 > Having a volunteer having to approve a python script still sounds like
 > the best solution to me.
 >
 > I would be very interested to learn more about the "restricting python
 > plans" from someone who is involved with that. Maybe allefant is the guy
 > to talk to about that ? What is his email ?
 >
We did already have something like this in the old days. Now allefant 
did implement some restrictions to the stuff you can do with python, 
these were backported to 1.2.x, too, and should be available in 1.2.4. I 
think he did use something like savepython or such. Best would be if you 
directly talked to him about this. You will be able to reach him in the 
irc chan you did already join yesterday.
 >>> So here's a list of practical stuff that's not yet clear to me :
 >>>
 >>>  * if python will be restricted somehow in the future will I be able to
 >>> turn this of by compiling wesnoth with --unrestricted-python ?
 >> That seems like a reasonable request, but it will depend on how
 >> difficult it is to code the python restrictions.
 >
 > If someone can tell me whether such a compile switch will be implemented
 > I won't have to be afraid my stuff suddenly stops working when a new
(Continue reading)

Moritz Goebelbecker | 1 Jun 2007 12:47
Picon

Re: investigating whether wesnoth is suitable for my AI thesis

Am Friday, 01. June 2007 schrieb Nils Kneuper:
> Roald (ubuntu_demon) schrieb:
>  >>> So here's a list of practical stuff that's not yet clear to me :
>  >>>
>  >>>  * if python will be restricted somehow in the future will I be able
>  >>> to turn this of by compiling wesnoth with --unrestricted-python ?
>  >>
>  >> That seems like a reasonable request, but it will depend on how
>  >> difficult it is to code the python restrictions.
>  >
>  > If someone can tell me whether such a compile switch will be implemented
>  > I won't have to be afraid my stuff suddenly stops working when a new
>  > development version is released (if I chose to work with the development
>  > branch which I'm inclined to). This is important to me.
>
> I don't think such a switch is currently planned, more important is: Is
> this switch really needed? ATM 1.2.x and the dev versions do use exactly
> the same restrictions for python.

Would it not be possible to use the restricted mode only when using AIs from 
user-made campaigns? Python AIs which are included in the game can be 
considered safe.

Regards,
	Moritz
_______________________________________________
Wesnoth-dev mailing list
Wesnoth-dev <at> gna.org
(Continue reading)

Bruno Wolff III | 1 Jun 2007 15:41
Picon

Re: investigating whether wesnoth is suitable for my AI thesis

On Fri, Jun 01, 2007 at 00:22:07 +0200,
  "Roald (ubuntu_demon)" <ubuntu.demon <at> gmail.com> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> I would like to know at which place I (the current python AI) is
> finished and I would need to know how much players were in the game
> (finishing 2nd out of 2 players is bad whereas finishing 2nd out of 8
> players is quite good). Most learning probably happens after a game is
> finished.

I wouldn't worry about finish order, just win or lose. Multisided game
theory is a whole nother can of worms for AI. And I don't think
Wesnoth is typically played that way. Usually there are just two
teams. And the exceptions are typically when there are multiple computer
run teams that aren't supposed to be cooperating.
jeremy rosen | 1 Jun 2007 19:36
Picon
Picon

Re: investigating whether wesnoth is suitable for my AI thesis

without replying to all your points, here are my general thoughts

*  having a python callback on end of game would be trivial to add.
You shouldn't really worry about that...
* saving data is not reallly a problem. However, I would recommand WML
for saving, to allow it to be more easily parsed by external tools and
included with the map data. our python binding might provide such
entries, if it doesn't it would be great to add.
* we are already able to collect anonymous data from our users, so we
might be able to easily collect some data on AI in campaigns
* one thing that might be more tricky is to know if we're victorious
or not. games vs humans usually end with one of the players resigning,
rather than the leader being killed. So the AI might have to decide
itself if it did well or not depending of the menace on opposite
leader, the compared number of units etc...

and most important : this is a great idea, do it. I mean : do it. It's
gonna be great :)
Bruno Wolff III | 1 Jun 2007 15:47
Picon

Re: investigating whether wesnoth is suitable for my AI thesis

On Fri, Jun 01, 2007 at 11:45:17 +0200,
  "Roald (ubuntu_demon)" <ubuntu.demon <at> gmail.com> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> 
> IMHO it's possible to trow in automatic difficulty scaling to make sure
> playing against this AI is fun for everyone (not just those that are
> playing equal or better than this AI). This is probably out of scope of
> my research but might be fun to try afterwards.

There are other ways to scale difficulty in Wesnoth, so that isn't a big
deal. More often the AI is told to do things to make a story line work
rather than for scenario balancing.
Mark de Wever | 2 Jun 2007 08:46
Picon
Picon
Favicon

Re: [RFC] remove zipios

On Sat, May 26, 2007 at 01:40:15PM +0200, Mark de Wever wrote:
> On Thu, May 24, 2007 at 06:17:15PM +0200, Mark de Wever wrote:
> > Recently there was a discussion on IRC and it seems zipios is no longer
> > used. If it's really not used is there still a need to keep it?
> > 
> > If we agree to remove it I don't mind to do that job.
> 
> Since I've seen no objections I want to look at removing this option.
> Since we might want to move to boost reverting this once removed might
> be hard. This means once I remove it I'm not going to revert it.
> 
> Any objections against removing zipios?
> If I recieve no objections I'll look into removing it next weekend or
> the week after that.

zipios support has been removed in commit 18007. Since I only use Linux I
haven't updated the other project files, feel free to commit patches.

Regards,
Mark de Wever aka Mordante/SkeletonCrew

Gmane